[vlc-devel] libvlc status?
tkrotoff at gmail.com
Wed Mar 26 15:35:16 CET 2008
I'm developing a VLC Phonon backend.
Phonon is is the cross platform multimedia API for KDE 4. It is
integrated inside Qt-4.4. It has already a backend for Xine,
GStreamer, Direct Show and QuickTime.
I hope to integrate it into some Qt-4 video/music players like
SMPlayer http://smplayer.sourceforge.net/ and others
Ok that is said :p
Here is the code of the VLC Phonon backend (under GPL):
So i've been using libvlc-git-0.9 for a full week (holidays,
holidays... :p) and I found the API "unworking" and "confusing"
The biggest problem is that there isn't a working program not too
complex/not too simple:
http://wiki.videolan.org/LibVLC_Media_List_Management -> does not compile
http://wiki.videolan.org/LibVLC_Tutorial -> too simple
vlc-git/src/control/testapi.c -> too simple
So I checked the Java binding but VlcClient.java is too simple :/
What is the status of libvlc-0.9? unstable/pretty stable/tested?
Which part of the API should I used and that is known to be tested?
Should I go for libvlc-0.8.6 instead?
I would like to know if there is a simple application that uses libvlc
that works. By who/where is used libvlc?
Is it possible to use the same API as the qtvlc?
Here is the bugs/strange things/questions that I got:
* libvlc_audio_get_volume( libvlc_instance_t *, libvlc_exception_t * )
does not work (-> exception) if there is no libvlc_media_instance_t
But still the function does not required a libvlc_media_instance_t parameter
+ getting the volume should of course not depend from a libvlc_media_instance_t
does not work, I have to use libvlc_video_set_parent()
does not work, impossible to get artist name... even while playing the
file or checking for the libvlc_MediaDescriptorMetaChanged event
I tried with different mp3 files with tags
event unknown, still present inside libvlc_structures.h
* libvlc_media_list_player_stop() and libvlc_media_instance_stop()
crash with different snapshots
* no event libvlc_MediaInstanceStopped
but there is libvlc_MediaInstancePlayed, libvlc_MediaInstancePaused,
and even libvlc_MediaInstanceReachedEnd... strange...
+ libvlc_MediaInstancePlayed vs libvlc_MediaListPlayerPlayed is very confusing
* no libvlc.lib and libvlc.pdb
There is no SDK, so I load the libvlc.dll at runtime
I already sent an email about this to vlc-devel
code is here if it can help somebody:
problem is that without the .pdb file I cannot go debug inside libvlc code.
* How do I deactivate the double-click on the vlc video window?
minor problem for the moment
* How do I set the audio device to use if I have several?
there is no libvlc_audio_set_device(int deviceId) + qtvlc does not
provide this functionality
(I guess this will be for the future...)
* Also there is no event like libvlc_AudioDeviceFailed
* There is no event like libvlc_BufferStatus with a %
this is really minor
* found it strange that qtvlc does not use libvlc + Qt4 is compiled
statically, but this is another subject.. :p
The libvlc API is quite confusing (ok this is only my opinion): a lot
of stuffs: media_list, media_list_player, media_list_view +
Sometimes I wonder why there is media_list, media_view... since libvlc
users will probably create a new "media list/playlist" stuff in their
own code if needed.
About events, you have to attach each category to a callback. I think
a simple switch() from the user side would have been ok + one and only
one callback registration and all events going to the same callback.
And still there is no char * libvlc_get_version(), you have to go with
the old API to get this.
I would have seen a simple:
int mid = media_new("myvideo.avi");
media_load(mid); //send load event + meta data, duration... working,
don't have to run media_play() to get this...
media_play(mid); //send play event
media_stop(mid); //send stop event
//all events though callback()
void callack(int mid, event)
So a bit like the old API but without the playlist and with the callback system.
Anyway thanks for coding vlc, it's a nice piece of software that so
many people use daily.
I hope that you will be able to help me. If I can give you more
feedback on some stuffs, no problem
Tanguy Krotoff <tkrotoff at gmail.com>
+33 6 68 42 70 24
More information about the vlc-devel