* src/stream_output/stream_output.c: small sout_cfg_parser() changes.
* modules/stream_out/duplicate.c: small coding style changes.
* modules/stream_out/transcode.c:
+ Forward the aopts{foo=bar,etc..} and vopts={foo=bar,etc...} options to the encoders.
+ Got rid of the ffmpeg encoder specific options.
* modules/codec/ffmpeg/*:
+ Changed the encoder options to normal config options.
+ Parse the options forwarded by transcode.
* include/vlc_codec.h:
+ encoder_t cleanup.
+ include a "sout_cfg_t *" in encoder_t to allow passing options.
* dialogs.cpp: put NULL for the parent window argument of WX dialogs in
the dialog provider: fixes tons of errors such as
"Gdk-CRITICAL **: file gdkdraw.c: line 90 (gdk_draw_rectangle): assertion `gc != NULL' failed" and incorrect behaviour of the dialogs.
Benjamin Pracht [Sat, 24 Apr 2004 13:16:58 +0000 (13:16 +0000)]
Endianness fix for xvideo vout on big endian processors (I still have problems when shm is disabled, but that might be related to my drivers, if anybody could test that).
* all: use sout_ParseCfg. But "standard" can't use it for sap/slp
options (because we can't do the difference between missing option,
option and option="" when option is a string).
* stream_output: added a sout_ParseCfg to help sout modules, and attached
access_out, mux, stream_out to the creator to make VLC_VAR_DOINHERIT
working.
(Basically it takes an options list that will be 'var_Created' and if present
in sout_cfg_t initialised).
* modules/stream_out/transcode.c: fixed mem leak + use av_free() instead of free() where necessary.
* modules/codec/ffmpeg/*: use av_free() instead of free() where necessary.
* modules/gui/wxwindows/interface.cpp: disable the new wizard until it is useable.
* doc/Makefile.am: don't include directories directly (will put all sorts of junk in make dist).
* modules/demux/mp4/Modules.am: get rid of mp4.h.
* modules/video_output/directx/*:
- Major changes to way the embedded vout is handled.
+ the vout windows are created in our event thread so we do receive the events now.
+ we do not use the external window directly (as for normal vout we create our vout window + video sub-window).
+ Create a WS_EX_NOPARENTNOTIFY vout window to make mozilla happy.
- Improved the mouse auto-hide feature.
- Do the DirectXUpdateOverlay() in the events thread. This should make S3 graphics cards happy again.
Sam Hocevar [Thu, 22 Apr 2004 09:08:29 +0000 (09:08 +0000)]
* configure.ac:
+ Factorized the Xinerama code check.
+ If libXv.so is present, ignore libXv_pic.
* debian/control:
+ Build-depend on zlib1g-dev because ffmpeg uses it by default.
+ Build-depend on libx11-dev, libxext-dev, libxt-dev instead of xlibs-dev.
+ Build-depend on libxv-dev, xlibs-static-pic instead of xlibs-pic.
+ Added a build-dependency on libaudiofile-dev to fix the m68k build.
+ Removed the build dependency on gcc-3.2 because gcc-3.3 no longer ICEs
on ppc/mpegvideo_altivec.o (Closes: #236442).
+ Build depend on fixed libsdl1.2-dev (>= 1.2.7-5).
+ Override kdelibs4's shlibs value to get VLC into testing.
+ No longer build-depend on dvb-dev.
* debian/rules:
+ Activated DTS decoding support.
+ Added symlinks for mozilla-firefox (Closes: #239352).
* debian/copyright:
+ Added faad2 and ffmpeg authors to the copyright (Closes: #212766).
* packetizer/h264.c: a really basic h264 packetizer (it doesn't support
b-frame and it doesn't do pts/dts computation but I fear it won't be
possible).
* demux/mpeg/h264.c: a raw h264 annexe-B demuxer using the packetizer.
* modules/demux/ts.c: When a packet is lost, flag a discontinuity, do not
trash the PES packet (the rest of the PES can still be used, and anyway
the decoder must be aware that a discontinuity happened).
Sam Hocevar [Wed, 21 Apr 2004 13:23:01 +0000 (13:23 +0000)]
* configure.ac:
+ Check for vec_ld instead of vec_mtvscr in the C AltiVec detection.
+ Include <altivec.h> in the C AltiVec detection.
* modules/misc/memcpy/memcpyaltivec.c modules/video_chroma/i420_yuy2.c:
+ Include <altivec.h> in the C AltiVec versions.
* input_dec: do not switch to minimize-threads in sout mode if input are
not pace controlable (temporary workaround, we should create a thread
that handles all packetizers).
* modules/demux/sgimb.c
- when we open a kasenna multicast udp stream, don't pass along to RTSP.
- set the correct mtu for Kasenna streams.
* rest
--mtu can now be set via :mtu playlist option.\
* src/libvlc.h: put the SAP options where they belong (ie. the stream output category).
* modules/gui/skins2/src/window_manager.cpp: skins2-transparency is win32 only.
Added a --sub-autodetect-path which is a list of paths (separated by
',') where VLC can look for a subtitle file ; typically, ./Subtitles or
./subtitles (the directory in wich the film is located is implicit).
* include/vlc/vlc.h: added a b_play parameter to the libvlc VLC_AddIntf() prototype.
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".
Andre Pang [Tue, 20 Apr 2004 04:24:52 +0000 (04:24 +0000)]
* Mac OS X: intercept and respond to user-configured VLC hotkeys, rather
than only responding to shortcut keys which are defined in the .nib
interface file
* extras/contrib/src
- fix goom location
- some small url improvements. please test the contrib system.
* modules/gui/macosx/*
- autodetect Quartz Extreme. Use OpenGL vout if present.
- --macosx-vout auto|quartz|opengl to force a vout.
* Makefile.am: add share/http/vlm to target.
* NEWS: small updates
* AUTHORS: updated my email address.
Andre Pang [Mon, 19 Apr 2004 15:59:56 +0000 (15:59 +0000)]
* Added HACKING file to CMML codec plugin directory, which includes
description of what it does and how it's implemented.
* Overview of the CMML codec:
This is an implementation of the Continuous Media Markup Language
(CMML) for VideoLAN. In short, CMML is a (XML) markup language for
time-continuous data, which of course includes multimedia such as
video and audio. It allows one to annotate a media file with both
structured and unstructured textual data, but one of its distinguishing
features--and what this code implements--is its support for embedding
hyperlinks in media files.
So, while viewing some media (e.g. a radio interview with a band),
you could provide a hyperlink to any URL, including a standard web
page or other media (e.g. the band's home page). The hyperlinks
are active only for specific intervals of time while the media is
playing, so for example during a radio interview, the hyperlinks
can change depending on what questions the interviewer is asking
and topic is being discussed.
For more general information on CMML and its role in the bigger
picture of extending the World Wide Web to properly support multimedia,
see <http://www.annodex.net/overview.html>. For specifications of
CMML, see <http://www.annodex.net/specifications.html>.
* CMML codec usage:
Once you have hyperlinking capability, you take on some of the
capabilities of a web browser, in particular following hyperlinks,
and also maintaining a browsing history where you can go backwards
and forwards between pieces of media you've linked to. So, if you
are viewing a file with CMML markup:
* Hyperlinks are displayed as a subtitle track
* Hyperlinks are followed with the VLC "activate" hotkey (by default,
this is just the Enter key)
* Going back and forward are done with the "history-back" and
"history-forward" keys, by default Cmd-[ and Cmd-] on Mac OS X,
and Ctrl-[ and Ctrl-] on all other platforms.
Until the media browsing history features are made available outside
of the CMML plugin, you can only use the history features while
viewing a file that contains CMML markup: e.g. you cannot navigate
backwards or forward in the history while viewing a standard MPEG
video. This is a limitation which may be removed if the media
browsing code is merged into the VLC core.