* all: changed the prototype of vout_AllocatePicture() and vout_InitPicture().
* src/video_output/vout_pictures.c: new vout_InitFormat() function that initialises a video_frame_format_t structure.
* include/vlc_video.h: extended video_frame_format_t.
* modules/codec/rawvideo.c: ported to the new decoder api.
* modules/video_output/x11/*: simplifications.
* modules/access/dshow/dshow.cpp: compilation fix related to ssize_t.
* share/vlc_win32_rc.rc: stringify version number.
* mozilla/*: compilation fix and cosmetic changes to the .rc.
the playlist. but use FIND_PARENT. vlc_object_find with FIND_ANYWHERE
use p_obj->p_vlc as a starting point and that doesn't work as playlist
is detach from vlc before vout is destroyed by the decoders (when
shutting down) Perhaps vlc_object_find should be fixing to find the
root object, but I'm not sure.
* src/input/* : move subtitle handling from avi to input. Now subs
should works with all file types _BUT_ won't be in synch if the demuxer
doesn't implement a _precise_ DEMUX_GET_TIME. So only .avi, .mp4 will
be ok. Others could works if perfectly cbr.
Now Subtitle track is only selected when specified by sub-file
option.(auto-dectected file is always added but not selected by default)
Btw, the code could support multiple subs files, but I don't know how
to pass multiple filenames, any ideas ?
* demux/mpeg/mpga.c : play with es_out_t. I'm investigating for now so
don't use that elsewhere.
TAB_FIND and TAB_APPEND (could be used every where now). There are a
bit like INSERT_ITEM, ... but not exactly, perhaps I should try to
merge them).
* src/input/input.c : begin to implement es_out_t thing (unsusable now).
The final aim of this new api is to make it possible to use the decoders from other modules like the transcoder for instance.
Only a few decoders have been ported to the new api (a52, libmpeg2, dts, vorbis, theora) so the old api is still supported.
Don't hold your breath, there is still much work to do before we reach this goal.
* modules/codec/a52.c, libmpeg2., dts.c, vorbis.c, theora.c:
Converted to the new api.
Merged the a52 and vorbis packetizers in their respective decoders (removes a lot of code duplication).
New dts and theora packetizers (merged in their respective decoders).
special goom tree source as I was unable to use standard goom library.
(I will provide it once mmx/ppc included)
* modules/visualization/Modules.am: added goom
* include/vlc_block.h src/misc/block.c: introduce a new data block
api (not yet tested, ported from my local new input work).
* modules/control/ntservice.c: added a --ntservice-extraintf option to allow the service to spawn additionnal interfaces.
* include/audio_output.h, modules/audio_output/directx.c: added support for 3F2R audio output in addition to 3F2R/LFE (5.1).
* ninput.h : extracted duplicated stream functions from a lot of
demuxers and do a nice (?) API.
* stream.c: implement basic streams manipulation. It is just a wrapper
but it is useful.
* all: added a i_ttl field in network_socket_t to allow per connection ttl
setting (in fact only used by access_out/udp.c.
latter everywhere.
* modules/demux/util/sub.c: Bring the config options in here to the variable structure.
* modules/misc/freetype.c: Bring the config options in here to the variable structure.
Fix the linespacing. Dnumgis, it works, just define another linespacing :)
includes in the .h files, since they are parsed out of context by
doxygen
Doxyfile: misc fixes, use ./toolbox --add-include as filter for sources.
include/vlc_common.h: doxygenized VLC_COMMON_MEMBERS
With these changes, and a slightly patched version of doxygen (which you can
get here: http://www.idi.ntnu.no/~sigmunau/doxygen-vlcpatched.tgz ) you should
be able to get some useful documentation out of the vlc sources.
* src/misc/mtime.c: implemented the heuristic described in http://www.cs.man.ac.uk/fellowsd-bin/TIP/7.html to test whether the win32 performance counter is reliable. That should fix the clock problems that a few users reported on win32.
modify/apply on all streams, --sout has the same behavour expect when
starting with a '#'.
With a starting '#' you can specify a chain of modules, it's still
unstable but a lot more powerfull.
You have access to duplicate(that duplicate all stream), transcode
(using only ffmpeg), standard/std and es (that apply muxers and access),
and display. You could chain them with ':' and specify options with
{option1=value,option2=value[,...]}.
ex: * to stream and see the stream to udp/ts:ip
--sout '#duplicate{dst=display,dst=std{access=udp,mux=ts,url=ip}}'
* to transcode,see and stream
--sout '#transcode{acodec=mpga}:duplicate{dst=display,dst=std{access=udp,mux=ts,url=ip}}'
Without a starting '#', the url is converted into '#std{acces=,mux=,url}'
Test and report bugs :)
./modules/gui/gtk/gnome.c, ./modules/gui/familiar/familiar.c: added a
terminating NULL pointer in the fake argv values we pass to gtk_init().
* ./modules/misc/qte_main.cpp, ./modules/misc/gtk_main.c: these plugins now
have the "gui-helper" capability.
* ./modules/misc/gtk_main.c: paved the way for Gtk2.
* modules/gui/macosx/prefs.m: Wrap tool tips to 60 characters,
* src/input/input.c: Correctly parse MRL of the type
/Volumes/toto:titi/coincoin.mpg (closes#238 & #186)
* modules/access/*: Changed some msg_Warn into msg_Err
* po/fr.po: Updated French translation,
* configure.ac.in: Re-enabled Swedish translation,
* Makefile.am: Do not recompile everything everytime someone changes a .h
filter chain. If the filter chain has changed, a new vout will be respawned allowing to switch filters on
the fly. This is still a bit hacky but to do it nicely will require implementing inheritance in object
variables.
* modules/video_filter/deinterlace/deinterlace.c: added a "deinterlace-mode" object variable to allow
switching deinterlace modes on the fly.
* modules/gui/gtk/menu.c: updated the deinterlace menu.
* include/vlc_common.h: compilation fixes for gtk_main and gnome_main.
functions to plugins.
* ./bootstrap: enhanced the project file generation for plugins; we now
parse makefiles to make this easier.
* ./modules/**/Modules.am: reworked a few makefiles so that they are more
easily parsed.
directory because the two project files are starting to diverge.
* ./evc/vlc.c: created a specific vlc.c file for Windows CE.
* ./src/misc/messages.c: as WinCE doesn't have stdout or stderr, the message
queue outputs to a logfile (until we have a proper interface).
yet so there's little that can be tested, but threads work at least.
* ./src/extras/libc.c: renamed strndup.c to libc.c because a few other
libc functions were added (strcasecmp, atof, getenv...).
we now use the I64Fx familly of macros to print 64 bits numbers (x being
replaced by d,i,o,u,x or X).
eg: msg_Dbg( p_this, "sample is "I64Fi" late", ll_time );
* src/misc/messages.c: got rid of ConvertPrintfFormatString().
which are a generic use of the realloc/memmove/index++ scheme we use for
dynamic arrays.
* ./src/misc/variables.c: properly free the choice list upon variable
destruction.