While reading this, you will find a bunch of:
while (find (VLC_OBJECT_INTERFACE))
release; release;
These are of course plain BUGS (which are neither introduced nor fixed
by this commit). Imagine, for instance, what happens if two threads run
the code above at the same time... they end up releasing the interface
once too many.
Some comments about the naming of the subtitles (mplayer doesn't name as gnome-subtitles does, and none of them respect the main conventions)
Most of the subtitles format are now parsed. However, some styles are still discarded.
* libvlc sources and plugins now define __LIBVLC__ and headers exported to
plugins (ie, include/vlc_*.h) check for this
* libvlc sources use the value of the "libvlc" component in vlc-config instead
of vlc
* Apply flags directly to "libvlc" in configure.ac - might temporarily break win32 :)
* Headers in include must contain the structures and prototypes needed
by the plugins and should be named vlc_*.
* Headers in include/vlc must contain the structures and prototypes
needed by external libvlc clients
* Moved and renamed some things in headers.
- Removed vlc_cpu.h, vlc_error.h (merged in vlc_common)
- Removed snapshot.h (merged in vlc_vout.h)
- Removed vlc_spu.h (merged in vlc_osd.h)
- Removed intf_eject.h and vlc_interaction.h (merged in vlc_interface)
- Moved all internal headers to src
- Merged vlc_video.h and video_output.h and move private things to src
- Removed vlc/intf.h, vlc/aout.h, vlc/vout.h, vlc/decoder.h and vlc/input.h
(meta headers for use in modules, and often implying too large
dependencies)
* Removed some useless dependencies
* Unexported a bunch of functions and structures used only in src/
(--> Still some work here)
* Finally made input_thread_t and input_source_t (mostly) private.
Added input_GetItem to fetch the input_item of an input_thread
* Cleaned up deprecated entries in vlc_symbols.h and bumped up symbol
prefix
This commit has a 99% probability of breaking the build, 0.1% of killing
your cat and 0% of getting you hot chicks.
When true, the interface will automatically start playing the playlist when (and only when) it is ready. (particularly useful for embedded vouts).
* src/libvlc.c, src/vlc.c: new VLC_AddIntf() prototype.
* src/interface/interface.c: if the interface doesn't support "playing on start", do it ourselves.
* modules/gui/wxwindows/wxwindows.cpp: implement "play on start".
* modules/gui/wxwindows/video.cpp: implement vout_ControlWindow().
* modules/video_output/directx/events.c, modules/video_output/x11/xcommon.c:
+ call vout_ControlWindow() when resizing in embedded mode.
+ implemented a VOUT_REPARENT/CLOSE mode in Control() so the interface can signal that it closes its video window.
+ new input_Control() function (doesn't do much for now).
+ started bookmarks support through input_Control().
+ new --bookmarks={name=foo,bytes=foo,time=foo},{...} config option.
* src/video_output/*:
+ started support for embeddable vouts (vout_RequestWindow()/vout_ReleaseWindow())
+ new --video-x/y config options