LibVLC 1.1 changes highlights

This forum is about all development around libVLC.
Rémi Denis-Courmont
Developer
Developer
Posts: 15257
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

LibVLC 1.1 changes highlights

Postby Rémi Denis-Courmont » 03 Mar 2010 19:39

VLC 1.1.0 is now being stabilized, and will hopefully soon hit the release download directory. It seems like a good time to highlights the main changes to the LibVLC API.
  • LibVLC binary version now has number 5. This is a binary break from the three previous interfaces (LibVLC 0.9 and 1.0 had number 2).
  • Exceptions are not used anymore anywhere.
  • Functions with a pointer return type return NULL in case of error.
  • Functions that cannot fail return simply void. There is no need to check for exception just to be sure anymore.
  • Other functions return an error code if applicable, typically -1, sometimes zero. Refer to the Doxygen documentation for details.
  • libvlc_errmsg() provides an English human-readable error message for the last LibVLC error in the calling thread.
  • Multiple instances created with libvlc_new() can have different configuration. This was a known bug/limitation in earlier version (the configuration parameter for the first instance were used by all instances).
  • Previously obsoleted functions are removed completely.
  • libvlc_get_instance() is removed.
  • libvlc_video_get_size() is added, returns both dimensions of an active video output.
  • libvlc_video_get_height() and libvlc_video_get_width() are obsoleted (but still present).
  • New video functions are added to control Marquee and Logo filters.
  • libvlc_video_set_key_input() and libvlc_video_set_mouse_input() can disable key presses and mouse events on the LibVLC video widgets (X11 port). Then the application can handle them.
  • X11 C Bindings (libxcb) is used internally instead of Xlib, resolving a lot of race conditions and crashes.
  • Many "setter" functions that previously only worked when audio or video was active can now be used off-line, e.g. fullscreen mode, audio volume, etc. In that case, there is no need to wait for events from the LibVLC media player anymore. Obviously, this only applies to some settings (e.g. audio channels cannot be listed when nothing is being played back).
  • A number of bugs, especially dead locks and race conditions were fixed.
If you find bugs, please report them urgently. Thanks in advance.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

xou
New Cone
New Cone
Posts: 3
Joined: 11 May 2010 15:27

Re: LibVLC 1.1 changes highlights

Postby xou » 11 May 2010 15:35

Hi,

All this looks great, but how do we get the vlc instance with the new library.

With the previous version I was getting the vlc instance to retrieve the video filter and change the britghness of the video.

If there is a better way to do this I am eager to try.

Jean

Rémi Denis-Courmont
Developer
Developer
Posts: 15257
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: LibVLC 1.1 changes highlights

Postby Rémi Denis-Courmont » 11 May 2010 18:04

I am not behind the removal of libvlc_get_instance. But I think the whole point is that semantic and clean APIs should be used instead.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

xou
New Cone
New Cone
Posts: 3
Joined: 11 May 2010 15:27

Re: LibVLC 1.1 changes highlights

Postby xou » 11 May 2010 18:16

I agree with you, but how can we access features not yet covered by the LIBVLC API.

I my spcific cas I found out that using the media_add_option function, I could set the brightness of the video at the start, but I have not found a way to change it while it was played.
Is there a way to get the current value and change it (via the media_meta?)

Rémi Denis-Courmont
Developer
Developer
Posts: 15257
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: LibVLC 1.1 changes highlights

Postby Rémi Denis-Courmont » 11 May 2010 18:33

Where I was getting at... someone needs to write an API for this if it is deemed useful.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

xou
New Cone
New Cone
Posts: 3
Joined: 11 May 2010 15:27

Re: LibVLC 1.1 changes highlights

Postby xou » 11 May 2010 18:38

Ok, I get the hint :-)

I'm not sure I know where to start.
I suppose by looking at the source of libvlc ?

Rémi Denis-Courmont
Developer
Developer
Posts: 15257
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: LibVLC 1.1 changes highlights

Postby Rémi Denis-Courmont » 12 May 2010 19:24

Probably the logo and marquee code in LibVLC, is the closest.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

hfiani
New Cone
New Cone
Posts: 6
Joined: 14 Apr 2011 10:53

Re: LibVLC 1.1 changes highlights

Postby hfiani » 03 Dec 2011 10:11

maybe i am a bit late for this, but i would like you to see this post to see that bug. thanks
viewtopic.php?f=32&t=96066

galix85
New Cone
New Cone
Posts: 2
Joined: 27 Feb 2013 13:51

Re: LibVLC 1.1 changes highlights

Postby galix85 » 27 Feb 2013 16:00

Hi,

Maybe it's too late but do you've in mind solve "EXC_BAD_ACCESS" crash in libvlc_media_player_set_ns_object() ??

Related post --> viewtopic.php?f=12&t=105914&p=358862&hi ... ss#p358862

Thanks

Cheers


Return to “Development around libVLC”

Who is online

Users browsing this forum: No registered users and 18 guests