[vlc-devel] libvlc Issues and Questions
mlist at marxbitware.com
mlist at marxbitware.com
Sun Jun 15 14:59:33 CEST 2008
Quoting Pierre d'Herbemont <pdherbemont at free.fr>:
> Hi,
>
> On Jun 15, 2008, at 11:59 AM, mlist at marxbitware.com wrote:
>> I'm the developer that has been creating the C# wrapper 0.9.0
>> available in the videolan forums. I spent last night connecting an
>> interface to the wrapper and used a few different versions of the
>> nightly builds from the last week.
>
> Have you looked at the CIL (.NET) bindings provided too?
>
The only bindings I have seen are the ones presented on this page:
http://wiki.videolan.org/.Net_Interface_to_VLC
This is based on the old API though.
>> I have noticed a number of issues and I thought I would highlight
>> them:
>
> Thanks!
>
No problem.
>> 1. DVD Menus
>>
>> When using a DVD with menus, clicking on a menu item results in a copy
>> of the output Window being made. That is, rather than reuse the
>> existing Window, it appears to create new one. The result is that
>> both the menu and movie are playing in different layers. I've
>> confirmed its not an issue in the wrapper, as I don't hear multiple
>> audio streams using the similar functions.
>
> That's a vout issue, that we could look forward to fix.
>
Nice to know its not me.
>> 2. CDDA / DVDSimple / VCD
>>
>> In the latest builds none of these work (eg. "CDDA://E:", etc). In
>> fact, in last nights build attempting to load any media results in an
>> exception in both libvlc_video_set_parent and
>> libvlc_media_player_set_drawable.
>
> No idea.
>
I'll stick to last night's build. When calling
libvlc_media_player_play, to play a CD (cdda://E:) it triggers an
error. I can trace the issue to libcdda_plugin.dll and an unhandled
exception.
As for libvlc_video_set_parent, this was working on the nightly build
done on the 9th, now it results in the following error:
"Attempted to read or write protected memory. This is often an
indication that other memory is corrupt."
I checked all the inputs and they're fine and switching back to a
earlier build corrects the issue.
>> 3. Setting the Output Window
>>
>> libvlc_media_player_set_drawable does not function.
>
> What version are you using? The good thing would be to provide a
> sample code. It is highly probable that your video_output does not
> support reading the "drawable" variable. We could look forward to fix
> that.
>
I'm just wrapping the API. It calls this:
libvlc_media_player_set_drawable(libvlc_media_player_handle,
window_handle, ref ex);
The drawable variable is passed as an IntPtr (just an Int).
>> 4. Getting Current Position
>>
>> libvlc_media_player_get_position returns 0.
>
> Works here. Again, do you have a sample code, that shows that it
> doesn't work?
>
I check this out...
>> 5. Getting the length of currently playing media
>>
>> There doesn't appear to be a media_player function for this.
>
> I think there is a libvlc_media function.
>
You mean get_meta? I thought that.
>> 6. Media_player Navigation
>>
>> Unable to locate Next, Previous, etc. Is there a different
>> interface??? I've seen set_chapter() and and audio_set_track(), must
>> these be used instead?
>
> There is no next, previous because it is not a media_list_player.
> However with input that do provide menus and track, such as a dvd you
> should be able to use set_chapter(), etc.
>
Ok, that makes sense. I notice that VLC has the ability to populate
playlists with the contents of a CD or DVD. Is this just a matter of
using the API, or do I need to write my own code?
>> 7. Visualisations
>>
>> Unable to locate functions to enable this when playing a stream or
>> mp3.
>
> Unfortunately there isn't, appart if you pass the right vlc args to
> libvlc or to libvlc_media_add_option.
>
Do you have the options, or where I can find a list???
>> 8. Stop does not function as expected
>>
>> In previous versions of the libvlc API, calling the stop function
>> would return the output window to its previous state.
>> libvlc_media_player_stop has the effect of leaving the loaded media in
>> the window frozen at the point when it was called.
>>
I'm assuming this is the vout issue that you mentioned.
>> 9. libvlc_release()
>>
>> Calling this results in an exception being generated. It states that
>> libvlc was asked to quit in an unexpected fashion.
>
> Do you have more detail on that one?
>
I have libvlc_release() wrapped up in a safe handle. When I call
dispose() from C#, it should execute the libvlc_release(). This works
with the rest of the safe handles I created.
Instead, it causes the application to crash. I'll be running tests
later and I'll send you more detailed info.
> Pierre.
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> http://mailman.videolan.org/listinfo/vlc-devel
>
----- End forwarded message -----
More information about the vlc-devel
mailing list