FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

GstreamerD - initial work started. Should it be part of Duit

 
Post new topic   Reply to topic     Forum Index -> gtkD
View previous topic :: View next topic  
Author Message
kaarna



Joined: 03 Apr 2006
Posts: 92
Location: Finland

PostPosted: Sat Nov 25, 2006 7:03 am    Post subject: GstreamerD - initial work started. Should it be part of Duit Reply with quote

Slow on the forums, but I see from the SVN version that Duit has gone forward alot. Keep up the good work you're doing!

I just tested some stuff with the GtkWrapper, and I've started trying to make GstreamerD with it. The wrapper stuff seems to work pretty well for Gstreamer as it's GObject based and the html docs are of the same format as with Gtk.

I got a helloworld kind of thing working that makes a gst_init, and then asks the gst_version, and prints that out. It's the first example in the Gstreamer manual.

For those who don't know, Gstreamer is supposed to be the best ever multimedia framework (the default for Gnome), although it's not yet 1.0 (it's pretty close though 0.10.10) and you can't do everything yet. The structure of Gstreamer seems great for writing any kind of app, that uses audio or video. And they've already made lots of plugins (which some of them use existing work).

So the question is, if and when a GstreamerD binding is working, should it be part of Duit, or should it be a separate libgstreamerd.a so you could leave it out as a dependancy if you don't need it? And even if it would be separate lib, should it be in the Duit svn, as it uses the same GtkWrapper (with it's own APILookUpGstreamer.txt)? Or should it be a separate project hosted in dsource.org, and just follow the development of Duit from close?

One more thing about Duit is that there should be some checking somewhere for D:s reserved words, as there are some interface and debug words in the original Gstreamer C source code. And at the moment those have to be removed by hand from lib/gstreamer.d, which get's generated everytime. I looked a bit, but didn't find the obvious and easy way to add that feature to the GtkWrapper.d.

Anybody interested in helping with GstreamerD...?
Back to top
View user's profile Send private message AIM Address MSN Messenger
kaarna



Joined: 03 Apr 2006
Posts: 92
Location: Finland

PostPosted: Sat Nov 25, 2006 2:47 pm    Post subject: Reply with quote

Ok, I already found the way to change the interface and debug to intrface and dbug. All I had to do was to add them to wrap/utils/DuitClass.d in a function called idsToDuit().

There's alot of things to be done for Gstreamer, but it's all coming clearer, the more I look into /wrap.
Back to top
View user's profile Send private message AIM Address MSN Messenger
Ant



Joined: 06 Mar 2004
Posts: 306
Location: Canada

PostPosted: Sat Dec 02, 2006 6:10 pm    Post subject: Reply with quote

satelliittipupu wrote:
Ok, I already found the way to change the interface and debug to intrface and dbug. All I had to do was to add them to wrap/utils/DuitClass.d in a function called idsToDuit().

There's alot of things to be done for Gstreamer, but it's all coming clearer, the more I look into /wrap.


Should it be included in Duit?
If it has the same object style as Duit an you want to it should be distributed with Duit. I see it as a separate lib. That lib would contain all utils/apps we would find usefull and someone contributes.
I hope we (I) can also wrap gnome. I see 4 libs:
- Duit or gtkd or dgtk (linux and windows for sure) includes cairo wrappings
- gnome wrap to be named
- gtkGlExt duitgl or dgtkgl
- utils/apps lib

This was my first idea, it's certainly open to changes...

Ant
Back to top
View user's profile Send private message
kaarna



Joined: 03 Apr 2006
Posts: 92
Location: Finland

PostPosted: Sat Feb 03, 2007 8:41 am    Post subject: Reply with quote

Ok. Another small success in the gstreamerD front. I've managed to get a very hackish version working, and I've made the first example app, that plays back an .ogg file.
I've made some changes to the GtkWrapper utilities and it automatically creates some code, that I then handtuned just to get it compile. I've looked at the way you create duitgl, and made a similar additional libgstreamerd.a and a source path called srcgstreamer. And also the necessary compd scripts.

I think I should put my gstreamer wrapper code in Duit svn, but I'm unsure about the way to do it. Is the trunk/gtkD/ tree identical to the Duit version? Should all new development be done in gtkD tree? And another problem for me is that I'm quite unfamiliar with subversion, so I might have some learning to do there...

GStreamer should make a nice addition to the gtkD libraries, as it offers a multimedia library to the D programming language with just little changes to the GtkWrapper utilities.

One particular problem is that some of the GStreamer functions seem to use libxml2 and it's xmlNodePtr. At the moment I have just hand removed all the methods that use it, but there's propably some better way doing that automatically, and hopefully someday wrapping also libxml2...
Back to top
View user's profile Send private message AIM Address MSN Messenger
BLS



Joined: 28 Mar 2006
Posts: 44
Location: France

PostPosted: Sun Feb 04, 2007 12:00 pm    Post subject: libxml2 a wrapper is allready alive Reply with quote

satelliittipupu wrote:
... some better way doing that automatically, and hopefully someday wrapping also libxml2...


Have a look at BCD at dsource
HTH Bjoern
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> gtkD All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group