documentation does not include information on which headers each file
includes, since this information isn't correct.
Clarified and doxygenized some of the documentation on subpictures
include/video_output.h: added some members needed by text renderer modules
src/video_output/video_output.c: load and unload text renderer module when needed
src/video_output/video_text.c: implemented some functions to show text on the video
include/osd.h: exported the functions to show text
modules/misc/Modules.am, module/misc/freetype.c: new text renderer module, largly based on the old osdtext module.
modules/video_filter/Modules.am, modules/video_filter/osd_text.c: removed the osdtext module
configure.ac: changes "osdtext" to "freetype" some places
modules/codec/spudec/*: when iconv is available, use it to convert textual subtitles from the encoding given by --sub-encoding to utf8. Use new code to render subtitles
modules/control/lirc/lirc.c: use new code to give feedback on buttons pressed. untested.
modules/demux/util/sub.c: remove all traces of the ugly old osdtext module
modules/misc/dummy/*: added a "text renderer" submodule in the dummy module
src/misc/modules.c: included osd.h as it seems to be needed to export symbols
final notes: you need to give a proper value to --freetype-font. This should be the path to a font file freetype2 can handle (almost any format afaik) with a unicode translation table in it. Windows ttf files will do. In linux at least openoffice distributes some fonts that work. I think macosx and beos also has useable fonts.
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.
There is no more hardcoded html page. The interface recursively parse a
directory, exporting all files. All .htm/.html are parsed, and special
macro are used. I will commit somes samples pages in share/http and I
hope documentations.
TODO: - (re)implement access control in httpd (but in a useable way).
- clean login/password management. (for now .access protects
a whole directory).
- doc ;)
Added name support. Only implemented for M3U and B4S playlists at the moment
* src/playlist/playlist.c
include/vlc_playlist.h : Added the playlist_AddName function to add an item with its name without filling an item structure.
In vout_CreatePicture() replace i_repeat_first_field by the more useful
i_nb_fields
* modules/gui/macosx/intf.m: Fixed a warning
* modules/codec/libmpeg2.c include/vout_synchro.h src/video_output/vout_synchro.c:
Re-added support for slice-I streams, plus miscellaneous tweakings
* 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.
quite more convenient than, e.g, calling input_SetStatus( STATUS_FASTER )
two times if you want to switch from 1:1 to 4:1 from the interface.
Old functions still work.
* modules/gui/beos/VlcWrapper.cpp : use it
src/libvlc.c: Added a quicktime_lock on SYS_DARWIN
* ALL: QT on OSX is not threadsafe in certain areas. i have found the proces
of identifying the right Codec to use for decoding to be one of these areas.
So when we do this, only one thread at a time can use QT.
Watching QT trailers is doable now, as soon as ffmpeg fix their altivec optimizations again ;)
* modules/video_output/directx/events.c: fixed non-initialized variable.
* modules/gui/wxwindows/*: misc improvements to the playlist window (added an "Open MRL" menu as well as menus to load and save a playlist, we also make use of the "intf-change" playlist object variable now).
* src/playlist/playlist.c: the playlist file is opened in text mode, no win32 eol hack is needed.
* src/misc/configuration.c, include/configuration.h: new config_ResetAll() function to reset all config options to their original values (you still need to config_SaveConfigFile()).
* modules/gui/wxwindows/preferences.cpp: new "Reset All" button in the preferences panel.
- added another argument to var_Change().
- added a VLC_VAR_SETTEXT and VLC_VAR_GETTEXT method to var_Change()
that are used to set/get a friendly name to an object variable.
- added VLC_VAR_CHOICESCOUNT to var_Change() to be able to retrieve
the number of availabel choices without having to get their value
as well.
- VLC_VAR_ADDCHOICE uses the extra var_Change() argument to assign
a friendly name to the choice value.
- VLC_VAR_GETCHOICES retrieves the choices values and their friendly
names.
* modules/gui/wxwindows/*: first step in implementing menu auto-generation in the wxWindows interface.
resampling with some files while keeping good synchronisation.
Anybody has an idea of the maximum desynchronisation between audio and
video that still be imperceptible ?
* modules/encoder/ffmpeg/video.c: misc improvements. Should also be able to handle more input chroma format.
* modules/codec/rawvideo.c: a few fixes.
* modules/access/v4l/v4l.c: misc improvments and cleanup. Should be able to handle more source chroma formats. On the fly video encoding is also working perfectly now.
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/demux/m3u.c: upped the priority of the m3u demux as some m3u files were mistaken for ts files.
* include/configuration.h: added a CONFIG_ITEM_DIRECTORY config type.
* modules/gui/wxwindows/*: the preferences dialog should be fully useable now.
* src/video_output/*, include/video.h: added a pf_lock/unlock fonction
pointer that's used to lock the memory of a picture in vout_RenderPicture
when required by the video output plugin.
* modules/video_output/directx/*: implemented pf_lock/unlock. That will fix
the crash when pressing ctrl+alt+del.
check regularly for p_input->b_die though. Now the demuxers can safely
assume that pf_read() == 0 means EOF.
* ALL: got rid of the p_input->b_connected flag.
* src/input/input_ext-plugins.c, src/input/input.c: fixed the infinite loop
of "decoder stuck" messages that sometimes happened.
* src/interface/intf_eject.c, modules/misc/network/ipv4.c: fixed compilation
warnings.
render text on the video
include/osd.h: some constants useful when interfacing with the osd module
configure.ac.in: check for freetype2, enabled the osdtext module by default
Makefile.am: added osd.h, please check that this is correct
lirc.c: modified to provide feedback when buttons are pressed.
Look at the Feedback() function in lirc.c to see how this module can be used
./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.
- added playlist_Move to move an item in our playlist before the position
of a previous item (or end) of our playlist. Keeps index at it's current
item.
* modules/gui/macosx/playlist.?:
- Now a reorderable playlist. Thanks to Andrew Stone for example code.
This fixes#349 (Finally ;)
- True alternating colors in the playlistview. Thanks to Apple Computer
for the example code.