#===================# # ChangeLog for vlc # #===================# HEAD * ./plugins/dvd/dvd_es.c, ./plugins/satellite/input_satellite.c, ./plugins/dvdread/input_dvdread.c: updated outdated variable names. * ./src/playlist/playlist.c, src/input/input.c: added safety checks to prevent crashes on next file. * ./src/misc/objects.c: commented all functions. * ./src/misc/objects.c: implemented vlc_object_find( , , FIND_ANYWHERE). * ./src/misc/objects.c: renamed vlc_object_unlink to vlc_object_detach. * ALL: got rid of p_object->p_this which is now useless. * ./include/main.h, ./plugins/beos/intf_beos.cpp: BeOS compilation fixes. * ./bootstrap.sh, ./src/libvlc.h, ./po/*: fixed bootstrap.sh so that it does not include CVS Id lines in automatically created files. * ./plugins/dummy/intf_dummy.c, ./plugins/chroma/i420_yuy2.c, src/interface/intf_eject.c, src/misc/threads.c: win32 compilation fix. * ./plugins/directx/aout_directx.c, plugins/directx/vout_directx.c, ./plugins/directx/vout_events.c: the DirectX notification and event threads now use the vlc_thread_create / vlc_thread_ready scheme. Untested. * ./configure.in: added a check for inttypes.h and sys/int_types.h. * ./configure.in: fixed the HTTP plugin compilation under BeOS. * ./plugins/network/ipv6.c: reactivated IPv6 module. * ./src/misc/beos_specific.cpp: BeOS fixes, removed a static variable. * ./include/main.h: replaced p_sys with explicit variables because it's really much simpler this way. * ./src/misc/beos_specific.cpp: the BeOS BApplication thread now uses the vlc_thread_create / vlc_thread_ready scheme to signal readiness. * ./src/misc/objects.c: prevent the creation of a too small vlc_object_t. * ./include/vdec_ext-plugins.h: removed the vdec_thread_t declaration, which belongs to plugins/mpeg_vdec. * ALL: the first libvlc commit. 0.4.1 Not released yet * ./plugins/spudec/spu_decoder.c: fixed a margin bug in the SPU renderer which caused subtitles to appear slanted in odd width windows. * ./plugins/gtk/gtk_display.c, ./plugins/win32/mainframe.cpp: we deactivate popup menus when no stream is being played, even in network mode. * ./src/input/mpeg_system.c: removed unnecessarily verbose message. * ./src/video_output/video_output.c: fixed the "picture has invalid status" bug which might have been the cause of crashes. * ./plugins/filter/crop.c: attempt at an automatic border cropping filter, using "--filter crop --autocrop". * ./vlc.spec: added missing filters to the RPM generation. * ./plugins/macosx/*: channel change support on Mac OS X. * ./extras/MacOSX/Resources/vlc.icns: new OS X icon, courtesy of Benjamin Mironer . * ./plugins/filter/crop.c: crop filter. Usage examples: --filter crop --crop-geometry 640x480 --filter crop --crop-geometry 320x200+10+10 * ./plugins/macosx/intf_vlc_wrapper.m: fixed a bug in the chapter handling. * ./plugins/macosx/vout_vlc_wrapper.m: more keystrokes. * ./plugins/chroma/i420_yuy2.h: simplified the chroma code. Please test under BeOS and QNX. * ./plugins/macosx/intf_vlc_wrapper.m: fix for non-ASCII filenames in the MacOS X interface, courtesy of Watanabe Go . * ./plugins/chroma/i420_yuy2.h: fixed an old overflow bug spotted by Rudolf Cornelissen. * ./plugins/chroma/i420_rgb16.c: fix for skewed display in software RV32 mode, courtesy of Pascal Levesque. * ./plugins/beos/InterfaceWindow.h: stopped more than one playlist being opened. * ./plugins/beos/InterfaceWindow.cpp: fixed segfault on exit with playlist open. * ./plugins/beos/vout_beos.cpp: corrected size of output window. * ./plugins/a52/a52.c, ./plugins/satellite/satellite_tools.c: compilation fixes for Solaris. * ./plugins/sdl/aout_sdl.c: fixed an endianness issue created by a brain-dead developer :p * ./plugins/win32/mainframe.cpp: the "Eject" button is enabled only after we played a dvd or vcd. * ./plugins/win32/mainframe.cpp: the toolbar is now flat and less cubist. * ./plugins/win32/mainframe.cpp: got rid of the ugly slider with some winXP skins. * ./plugins/win32/messages.cpp: added a config option to limit the number of messages in the log window (default is set to 500). * ./plugins/mpeg_vdec/vpar_headers.c: don't try to deference a null pointer. * ./plugins/gtk/gnome.c: compilation fix. * ./src/misc/netutils.c: removed the obsolete artificial delay when switching channels. * ./src/interface/intf_eject.c: added ejection code for Win32. * ./plugins/win32/*: enabled the "Eject" button (thanks Ipkiss). * ./include/configuration.h: changed ADD_BOOL and ADD_BOOL_WITH_SHORT config macros to accept a default value as an argument. * ./src/misc/configuration.c: modified the command line parsing to accept --foo and --no-foo when a "foo" boolean config option is defined. * ./src/interface/main.c: modified the help menu to indicate whether the option is enabled or disabled by default. * ./src/video_output/video_output.c: when the video output hasn't received a new picture for a while, it redisplays the last displayed one. This will be useful for DVD menus, but also solves the "picture becomes black when vlc is paused" issue. * ./plugins/dummy/dummy.c: added a CATEGORY_HINT to the config. * ./plugins/x11/xcommon.c: small change to the ToggleFullscreen routine to avoid a flickering during the switch. * ./plugins/filters/*: fixed inconsistencies. * ./plugins/win32/mainframe.dfm: new icons for the toolbar buttons. * ./plugins/win32/network.cpp: URL can now start with "http://" in the Network dialog box. * ./plugins/win32/about.dfm: updated the About dialog box. * ./include/video.h: added a b_force flag to picture_t so that we can force the display of an image even if it is late. * ./plugins/filter/*: filters are now configurable through the configuration system. Patch from Sigmund Augdal . * ./po/vlc.pot: updated potfile. * ./po/pl.po: polish translation, courtesy of Arkadiusz Lipiec . * ./debian/control: updated Debian package descriptions. * ./plugins/aa/aa.c: removed all palette code as it was unused. * ./plugins/aa/aa.c: moved the aa_fastrender call from vout_Display to vout_Render. * ./plugins/aa/aa.c: added support for resizing and right-click menu. * ./src/input/mpeg_system.c: in order to make ac3 working in avi file, moved some code from ac3 decoder to mpeg_system.c. (skip 3 bytes is now done in mpeg_system.c and no longer in ac3 audio decoder). * src/misc/netutils.c: tests if message from vlcs begins with 'E:' or 'I:' instead of testing 'E: ' and 'I: ' (to simplify miniVLCS). * ./plugins/avi/avi.c, ./plugins/avi/libioRIFF.c: added more safety tests. * ./include/inpu_ext-dec.h: added a check to fifo->b_die after the call to BitstreamNextDataPacket() in GetChunk(). 0.4.0 Thu, 23 May 2002 01:27:05 +0200 * ./plugins/access/http.c: fixed HTTP input under Win32 * ./plugins/chroma/i420_yuy2.h: bugfix for the I420 to YUY2 MMX chroma transformations, with the help of Pascal Levesque. * ./plugins/directx/directx.c: UnregisterClass() in MODULE_DEACTIVATE. If we don't do this, trying to use the class when the plugin is reloaded will cause a segfault. * win32: replaced TUpDown components by TCSpinEdit ones, which allow values greater than 32767. It fixes the audio bug ocurring when a configuration file is saved under the win32 interface * ./plugins/win32/mainframe.cpp: Added some extra space between statusbar and toolbar when nothing is displayed. * ./plugins/text/logger.c: on win32 the logger interface shows up a dos command box. * ./plugins/gtk/gnome.c: fixed uninitialized variable * ./plugins/gtk/gtk_playlist.c: simplified GtkRebuildCList() * ./plugins/beos/vout_beos.cpp: changes to reduce segfaults on exit, and also allow only one Playlist window. * ./include/modules_inner.h: fixed a crash when reopening a hidden module * ./plugins/dvd/dvd_access.c: on Win32 the DVD access plugin has to be explicitly requested. This avoids crashes when the input thread tries to open files as dvds. * ./plugins/dvd/dvd_access.c: fixed a side-effect bug causing crashes on DVD title change * ./plugins/chroma/i420_yuy2.c: margin support for the 420 planar to 422 packed chroma transformations. * ./src/input/input.c: fixed a bug with the input remaining stuck when no network data was present. * win32: fixed a stupid bug in the Network dialog. * ./src/interface/main.c: fixed a little memleak. * ./src/input/input_dec.c: removed useless code. * ./src/input/input.c, ./plugins/gtk/gtk.c: fixed access to uninitialized variables. * ./plugins/dvd/dvd_demux.c: fixed the pf_demux return value. * ./configure.in: tried to fix the -lavcodec detection. * ./plugins/x11/xcommon.c: fixed x11 and xvideo alternate fullscreen. * ./plugins/network/ipv6.c: experimental support for Windows IPv6 * ./plugins/a52/a52.c: added an option to disable the dynamic range compression. * ./Makefile.opts.in: removed configuration stuff which does not need to rebuild anything to Makefile.config, so that editing it will not cause a complete rebuild. * ./plugins/beos/VideoWindow.h, ./plugins/beos/vout_beos.cpp: improved Overlay and Bitmap output modes. * ./plugins/macosx/aout_macosx.m, ./plugins/macosx/aout_macosx.m: removed unused headers. * ./plugins/macosx/intf_controller.[mh]: you can now drag & drop files onto the vlc dock icon. CFBundleDocumentTypes in Info.plist doesn't seem to have any effect, so you'll have to hold down command-option when dropping until this is resolved. * ./src/video_output/video_output.c: removed previous patch to the video output since it causes problems for some people. * ./plugins/macosx/*: worked around a bug in seeking. * ./include/threads_func.h: OS X port now uses real-time threads. * ./configure.in: fixes for ffmpeg and mad. * ./extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib: OS X intf is now more consistent with Apple guidelines. * ./plugins/gtk/gtk_preferences.c: fixed a segfault I introduced lately in gtk_preferences. * ./plugins/macosx/intf_vlc_wrapper.m: don't try to eject unless there is a disc to eject. * ./plugins/macosx/intf_vlc_wrapper.m: fixed a segfault in the Mac OS X interface. * ./plugins/satellite/input_satellite.c: cosmetic changes in error messages. * ./plugins/gtk/*: gtk and gnome interfaces now use frequency and symbol rate default values. * ./BUGS: removed fixed entries. * ./plugins/spudec/spu_decoder.c: initialize p_spudec->p_vout to NULL to prevent segfaults if InitThread does not complete. * ./plugins/text/rc.c: on win32 the rc plugin opens a new console. * ./plugins/filters/*: filters were using memalign but freeing p_data instead of p_data_orig. * ./extras/Win32_msvc/vlc.dsp: updated MSVC++ project. * ./src/interface/main.c: small corrections to the LONGTEXT descriptions in main.c. * ./AUTHORS: a few additions. * ./vlc.spec: updates, courtesy of Yves Duret . * ./configure.in: new --with-ffmpeg option for standard installations. * ./src/interface/main.c: updated long descriptions. * ./plugins/dummy/intf_dummy.c: on win32 the dummy interface plugin will open a dos command box. With this fix, vlc should never fail silently and leave a ghost process running in the background when there isn't any working GUI plugin. * ./include/config.h: on win32 DVD/VCD_DEVICE defaults to to D:. * ./src/interface/main.c: added a few *_LONGTEXT descriptions. * ./plugins/mpeg_vdec/video_parser.c: moved the mpeg-motion and mpeg-idct options to the mpeg_vdec plugin. * ./plugins/spudec/spu_decoder.c: mark subpictures destroyed when we end spudec thread. * ./src/audio_output/aout_pcm.c: desperate attempt to improve audio output. * ./doc/vlc-howto.sgml, ./doc/vlc.1, ./README.MacOSX.rtf: updated documentation. * ./INSTALL.win32: updated INSTALL.win32. * ./plguins/directx/vout_directx.c, ./plugins/directx/vout_events.c: a little bit of clean-up in the directx video output plugin * ./plugins/macosx/*: fixed Mac OS X resizing. * ./src/misc/configuration.c: warning levels are no longer additive, patch courtesy of Arnaud de Bossoreille de Ribou . * ALL: changed __inline__ with inline (autoconf does the job for us anyway, and mipspro doesn't know about __inline__). * ./src/audio_output/aout_pcm.c, ./src/audio_output/aout_ext-dec.c: fixed deadlock in NextFrame() in aout_pcm.c. * ./plugins/directx/vout_directx.c, ./plugins/directx/vout_events.c: fixed a bug in the directx window creation function. We register a window class once per process so we must be careful not to free the associated resources. * ./extras/Win32_msvc/vlc.dsp: updated the MSVC++ project files and added support for dirent (vlc compiled with msvc can now load plugins - even compiled with mingw). * ALL: small portability fixes. * ./plugins/macosx/*: menu item to maximize the volume in Mac OS X. * ALL: dropped dependancy on autoconf 2.52. * ./plugins/directx/vout_directx.c: modified the directx video plugin to try to create an YUV surface before falling back to an RGB surface when it's not possible to use overlays. Some graphic cards can do the YUV->RGB conversion in hardware during the blitting stage. * ./plugins/directx/vout_directx.c: in the directx video plugin, we now request that the RGB surface be created in video memory. The reasoning behind this is that usually surfaces in video memory benefit from more hardware acceleration (like for instance hw rescaling, hw blitting, etc.). * ./plugins/directx/directx.c: added two options to the directx video plugin to disable the above features (mainly because my video driver is buggy and doesn't handle them well). * ./src/misc/configuration.c: small cosmetic changes to the generation of the config file. * ./src/misc/configuration.c: fix for config_GetHomeDir() on win32. SHGetFolderPath() is located in shfolder.dll not shell32.dll. * ./plugins/gtk/gtk_preferences.c: fix for the gtk preferences dialog box. To be sure that an int or float value is actually changed we call gtk_spin_button_update() in the GtkInt/FloatChanged() event handler. * ./debian/control: made the Build-Depends: entry a one-liner (Closes Debian bug #147103). * ./src/audio_output/aout_spdif.c: a lock was not released. * ./plugins/text/rc.c: added a safety lock. * ./plugins/gtk/*: new Network dialog box for Gtk and Gnome interfaces. * ./plugins/mpeg_system/mpeg_audio.c: you can now force the mpeg_audio demux module. * ./plugins/mpeg_vdec/vpar_headers.c: update reference in case of sequence end code. * ./src/input/input_clock.c: don't keep the control lock during the pause. * ./plugins/ac3_spdif/ac3_spdif.c, ./src/audio_output/aout_spdif.c: check for b_die and b_error in all loops so that we don't remain stuck waiting for data whereas the vlc has tried to quit. * ./src/misc/mtime.c: we use nanosleep whenever possible (patch from Meuuh). * ./plugins/avi/avi.c : it will not segfault with broken avi with an unknown stream. * ./src/misc/mtime.c: removed usage of usleep (not thread safe) (by Meuuh). * ./src/video_output/video_output.c: video output patch to improve handling of late pictures (by Meuuh). * ./src/interface/intf_msg.c, src/interface/intf_playlist.c: disabled calls to realloc(_,0) in a similar way to input_programs.c. * ./plugins/dvd/dvd_seek.c: fix random segfaults on title change (i_cell should be tested _before_ we access the structures). * ./src/input/input_programs.c: fixed memory corruption by setting a few pointers to NULL after they have been free()ed. * ./src/input/input_programs.c: removed now useless ASSERTs. * ./plugins/beos/*: improved overlay and bitmap support, not tested on nVidia cards. Lower CPU usage and no thread created per frame. * ./plugins/dvd/dvd_summary.c: added a sanity check. * ./plugins/vcd/*: vcd access plugin now uses mpeg_ps demux instead of its own one. * ./plugins/macosx/vout_qdview.m: attempt to fix the video output with QuickTime 6. * ./plugins/ac3_adec/ac3_adec.c: probably fixed most "crash when changing audio track" problems by zeroing the p_ac3dec structure. * ./plugins/ac3_adec/ac3_adec.c: fixed a "INPUT_MAX_ALLOCATION reached" crash. * ./src/input/input_dec.c, ./src/input/input_programs.c: check size to avoid realloc(0). * ./plugins/win32/network.*: new Network dialog box. * ./src/input/input.c, ./plugins/access/http.c, ./plugins/access/udp.c: added the input_FDNetworkClose() function to be called when closing a networking stream instead of input_FDClose(). * ./src/misc/netutils.c: use closesocket() instead of close() at the end of the network_ChannelJoin() for WIN32. * ./src/misc/configuration.c: fixed an issue with long options from modules where option arguments and playlist entries were mixed. * ./plugins/spudec/spu_decoder.c: fixed endianness issue; subtitles colors should be OK now. * ./plugins/satellite/input_satellite.c: fixed a compilation warning. * ./configure.in: added libdvbpsi version check. * ./include/modules_inner.h: fixed a bug in module reinitialization, which should fix crashes after a long pause. * ./src/input/*: fixed a bug (glitch/segfault) when seeking. * ./src/input/mpeg_system.c: we handle PCR even if they are not attached to a PMT. * ./configure.in: new --with-mad-tree configure option. * ./BUGS: updated BUGS file. * ./src/input/mpeg_system.c: it should now be possible to quit when reading a bogus file. * ./src/misc/iso-639.def, ./include/iso_lang.h, ./src/misc/iso_lang.c: iso-839-[12] tools. * ./plugins/dvd/dvd_es.c, ./plugins/dvd/dvd_summary.c, ./plugins/dvdread/input_dvdread.c: adapted DecodeLanguage calls to the new behaviour. * plugins/mpeg_system/mpeg_ts.c: ISO-639-2 descriptors handling. * ./include/mmx.h, ./plugins/imdct/*: gcc-3.1 compilation fixes courtesy of Yves Duret and other Mandrakesoft guys I don't know. * ./plugins/macosx/intf_vlc_wrapper.m: do not eject when we're reading from the disc... * ./src/misc/modules.c: if a module has a zero-scored capability, we don't try to use it, unless it was explicitely requested (--vout for example). * ./plugins/sdl/vout_sdl.c: fixed an aspect ratio issue (thanks Meuuh). * ./src/input/mpeg_system.c: fixed an old old bug in TS demux, thank you Meuuh. * ./plugins/mpeg_system/mpeg_audio.c: to avoid problem with PS, test only the first 4 bytes for mpeg header so some broken files, and all web radio will not work. You can change this by changing value of MPEGAUDIO_MAXTESTPOS. * ./doc/vlc-howto.sgml: spelling mistakes, small updates, harmonization with other documentations (thank you Alexis). * ./plugins/satellite/*: some fixes in options parsing (thank you Sam). * ./extras/MacOSX/Resources/vlc.icns: new OS X icon, courtesy of Joeri van Dooren . * ./plugins/mpeg_vdec/video_decoder.c: Mac OS X fix. * ./plugins/mpeg_system/mpeg_audio.c: you should again be able to play PS streams (I hope it will be enough). Sorry. * ./plugins/ffmpeg/ffmpeg.c: CVS version of ffmpeg can now decode msmpeg4 v1 v2, so I added support for this. But you can always use the old ffmpeg library without any problem (I hope ;). * ./include/video.h : added new fourcc codes for avi. * ./plugins/filter/clone.c: New filter, `--filter clone', duplicates display. To duplicate 12 times, use `--filter clone:12'. * ./plugins/x11/xcommon.c, ./plugins/x11/xvideo.c: --xvideo-chroma flag to force the XVimage format used. * ./plugins/text/ncurses.c: ncurses interface improvements by Thomas Graf. * ./plugins/mpeg_system/mpeg_audio.c: we don't use any more U32_AT. * ./plugins/macosx/*: disabled auto-hiding of mouse cursor since it doesn't work when browsing menus; instead, click in the video window * ./plugins/macosx/*: fixed a major bug in the spu decoder. * ./plugins/macosx/*: Objective-C files are now .m. * ./plugins/macosx/*: fixed menus. * ./plugins/macosx/*: menus for Program/Title/Chapter/Languages. * ./plugins/avi/avi.c: we use input_ClockManageRef to do synchro. * ./include/common.h, ./include/input_ext-plugins.h: exported input_ClockGetTS for plugins. * ./plugins/mpeg_system/mpeg_audio.c: a demux for mpeg audio stream (file, web radio ...) * ./src/interface/main.c: if Ctrl-C doesn't kill vlc cleanly for any reason, user just needs to hit Ctrl-C again 1 second later and we'll exit disgustingly instead of freezing. * ./plugins/macosx/intf_vlc_wrapper.c: menu code fixes. * ./plugins/macosx/*: fixed Mac OS X VOUT_SIZE_CHANGE signal. * ./plugins/ffmpeg/ffmpeg.c: corrected some bad lock/unlock. * ./plugins/avi/avi.c: can now use --novideo. * ./plugins/macosx/*: improvements of the OS X GUI. * ./plugins/mad/*: added mad plugin downscale config option for selecting downscaling routine. Choices are: fast, mpg321. Default the fast version is used. The downscale option mpg321 uses an algorithm that adapts to dither errors. This routine is borrowed from MPG321 code. * ./plugins/mad/*.c: mono audio streams get now duplicated on the right channel instead of silencing the right channel (untested). * ./plugins/avi/avi.c, ./plugins/ffmpeg/ffmpeg.c: improvements. * ./src/video_output/video_output.c: video plugins that don't handle rescaling themselves have to let the video_output thread know about resizing events (with VOUT_SIZE_CHANGE event). (this part needs some clean-up but it is basically working for the X11 and SDL plugins). * ./plugins/sdl/vout_sdl.c: fixed fullscreen for the SDL plugin. * ./plugins/sdl/vout_sdl.c, ./plugins/mga/xmga.c: xmga and sdl now switch to fullscreen on double-click. * ./plugins/avi/avi.c: try to not freeze when reaching end file. * ./plugins/x11/xcommon.c, ./src/video_output.c: fixed the resizing and scaling of the X11 video output. * ./plugins/x11/xcommon.c: clicking on the video doesn't pause it anymore (use spacebar for this), but double-clicking will now switch between fullscreen and window mode. * ./plugins/gtk/gtk_preferences.c: the Apply button in the preferences menu is grayed out unless there's a change to apply. * ./plugins/gtk/gtk_preferences.c: GtkConfigApply() now clears the list of config changes before returning. * ./plugins/network/ipv4.c: fixed ipv4.so compilation under QNX. * ./configure.in: deactivated ipv6.so under QNX for now. * ./plugins/macosx/aout_macosx.c: more stable audio output with more output buffering. * ./BUGS: no text in the status bar with gtk intf, no window title in gtk intf on some machines, correct title on another. * ./plugins/gtk/*.glade, ./plugins/gtk/*_interface.*: fix for interface autoshrink when toolbar text isn't displayed. * ./plugins/gtk/gnome.c, ./plugins/gtk/gtk.c, ./plugins/gtk/gtk_display.*: callbacks for the hide tooltips and toolbar text options. * ./plugins/mad/*: aout fifo adapts it size according to the length of the first frame. The change is needed for MPEG1/2 layer III, because the size of output pcm from mad_decoder is different. * ./include/modules_inner.h, ./src/misc/configuration.c: support for config options callbacks. * ./configure.in: we check support for variadic macros (screw Borland!). * ./plugins/gtk/gnome.c: new option lets you hide the text of the GNOME interface toolbar. * ./FAQ: small FAQ update. Please note that everyone can update this FAQ if they want, it is not my property :-). * ./AUTHORS: added quite a few missing names. * ./plugins/qnx/vout_qnx.c: port of the QNX vout plugin to the vout4 API, courtesy of Pascal Levesque . * ./plugins/avi/avi.c: you can now use slow and fast reading. After seeking, audio and video synchro is better. * ./plugins/macosx/aout_macosx.c: misc sound fixes. * ./configure.in: fixed VCD double detection. * ./src/misc/configuration.c, ./plugins/text/logger.c: the configuration file and the log file are opened in text mode. This mode should only have a meaning on Win32 and isn't supposed to break any other platform. If does give you any trouble then shout. * ./configure.in: added a --with-a52-tree option to the configure script. * ./plugins/spudec/spu_decoder.c: FOURCC_YUY2 subtitles support (for NVidia overlay) courtesy of Rudolf Cornelissen . * ./plugins/kde/*: configuration dialog for the KDE interface, courtesy of Sigmund Augdal . * ./plugins/chroma/i420_yuy2.h: workaround for yet another annoying gcc behaviour with inline assembly (seems to be BeOS-specific). If anyone has a better idea than the huge "memory" constraint, please have a look at the MMX_CALL() macro! * ./plugins/avi/avi.c: corrected a bug with broken avi files. * ./src/misc/modules_plugin.h: added config_Get/PutFloatVariable to p_sysmbols. Thanks to Sigmund Augdal for pointing this bug out. * ./src/audio_output/aout_pcm.c: on Win32 the aout_pcm thread is given a high priority. This avoids lots of audio underruns, especially when moving around the video window. * plugins/avi/avi.c : changed in order to read more avi files, Meuuh you can now read your file ;) (but audio is awful, perhaps because of mad plugin ?). Fix a bug for audio with some avi files. * ./plugins/satellite/satellite.c: fixed a compilation issue in satellite input. It now uses common or libdvbpsi ts demux. Untested cause I can't get our Nova Card work again. * ./src/video_output/vout_pictures.c: restored vout_CopyPicture(). It is needed by the directx plugin damnit ;-) * ./include/config.h: restored AOUT_BUFFER_DURATION to its old value. It should solve quite a few underrun problems. * ./plugins/directx/vout_directx.c: a little bit of DirectX plugin clean-up. * ./ipkg/control: added more information in ipkg control file. * ./include/modules_inner.h: the module name is now a default shortcut, for it, no need to manually add it. * ./plugins/sdl/vout_sdl.c, ./plugins/x11/xcommon.c: when in fullscreen mode, the Esc key does not quit immediately, but first escapes from fullscreen mode. User-requested feature. * ./include/os_specific.h: fixed a C++ compilation issue. * ./include/videolan/vlc.h: removed the main() declaration because SDL defines it as a macro. * ./plugins/avi/avi.c: with some broken avi files, will not freeze, and try to detect end of file. * ./include/threads_func.h: moved the function definitions from threads.h into threads_funcs.h. This allows us to move p_main_sys into p_main (p_main->p_sys). * ./configure.in: fixed the --with-gtk-config-path and --with-sdl-config-path options. * ./plugins/avi/avi.c: seek is faster. * ./configure.in: fixed a typo in libdvbpsi handling. * ./plugins/vcd/cdrom_tools: FreeBSD 4.5 port of the vcd input. * ./INSTALL.win32: updated win32 compilation instructions. * ./plugins/mpeg_system/mpeg_ts.c: fixed --program option. * ./include/common.h: fixed vlc_memalign. * ./plugins/avi/avi.c: now it can play broken files with seek enabled but it's very slow (will be fixed soon). * ./src/misc/beos_specific.c: added system_Configure(). Sorry O:-) * ./src/input/input_programs.c: a video divx ES will no longer be considered as an audio ES (thanks sam). * ./src/misc/darwin_specific.c: added system_Configure(). * ./plugins/macosx/vout_macosx.c: cleaned up QTScaleMatrix(). * ./plugins/macosx/*: A/V sync should be much more precise. * ./plugins/macosx/vout_qdview.c: borders in fullscreen mode are now black and the movie is centered. * ./extras/MacOSX/vlc.pbproj/project.pbxproj: new creator ID: VLC#. * ./src/misc/modules_plugin.h: exported input_ClockManageRef for fenrir. * ./include/video.h: moved vout_CopyPicture out of the way, an inline function did not make sense here. * ./include/video.h: moved vout_ChromaCmp out of the way. * ./plugins/avi/fourcc.h, ./include/video.h: merged these two files into video.h. * ./include/os_specific.h: this file is now always included. * ./include/debug.h: removed this file which was almost useless, and moved ASSERT to common.h. * ./include/common.h: fixed vlc_memalign and changed its prototype to follow posix_memalign's. * ./configure.in: dropped usage of $withval and $enableval in favor of the safer variants $with_foo and $enable_foo. * ./plugins/avi/avi.c: will not segfault when no audio is found/supported. * ./plugins/ffmpeg/ffmpeg.c: with empty frame(data_packet) it won't segfault. * ./plugins/avi/avi.c: use KeyFrame to seek, so video will not be bad as before. * ./plugins/mpeg_system/mpeg_ts.c: moved Program Specific Information decoder to the ts demux module. * ./plugins/mpeg_system/Makefile: added a mpeg_ts_dvbpsi module tha uses libdvbpsi to decode PSIs. It is used by default if the lib is found. It shares much code with mpeg_ts. * ./plugins/directx/vout_events.c: fixed typo. You have to double click on the video window to switch to fullscreen. * ./src/misc/configuration.c: on Win32 the config file is now stored under the "Application Data" folder belonging to the user. (this works if at least IE4 is installed, otherwise the old method is used to get the config directory) * ./configure.in: fixed MacOS X module linking problem. * ./src/interface/main.c: we no longer segfault if argc == 0. * ALL: renamed PLUGINS to __PLUGINS__ to avoid conflicts with libraries defining it. Grmbl. * ./src/input/input_ext-plugins.c: cosmetic change. * ./plugins/ac3_adec/*: use of _M to avoid conflict with libavcodec.a. * ./plugins/avi/*: a light AVI demux. * ./plugins/ffmpeg/*: a video decoder for divx v3 and opendivx. * ./plugins/win32/preferences.cpp: fixed a compilation bug * ./plugins/avi, ./plugins/ffmpeg: created empty directories for fenrir's upcoming work. * ./plugins/spudec/spu_decoder.c: fixed the spu decoder to take the pitch of the destination picture into account when rendering the subtitles (Implemented only for the YUV modes). * ./plugins/directx/vout_events.c: fixed the mouse autohidding feature in the DirectX plugin (at least partially). * ./plugins/directx/vout_directx.c: fixed the DirectX video output for non-overlay modes. It was only working in RGB16 before. * ./plugins/directx/vout_directx.c: DirectX video output plugin now uses triple buffering for YUV overlay. This improves the video quality a lot (no tearing) without affecting performance. (I knew double buffering sucked but I just discovered why triple buffering is better: you don't have to wait for the vsync to flip the buffers). * ./plugins/spudec/spu_decoder.c, ./plugins/dvd/dvd_es.c: temporary fix to avoid retrieving the spu palette from a network stream as if it was a DVD. * ./src/interface/main.c: tidied the help output code. * ALL: removed underscores from option names and made a few options more self-explanatory, for instance --input_channel becomes --audio-channel; run vlc -H to see what has changed. * ALL: replaced many occurences of "plugin" with the word "module". * ./src/interface/main.c: moved all satellite-specific configuration options to the satellite plugin. * ./po/*: updated translations. * ./plugins/chroma/i420_yuy2.h: optimized the 420 planar-to-packed chroma transformations. They're now PIC-friendly as well. * ./plugins/macosx/intf_open.c: added Open disc and network panels. * ./plugins/macosx/intf_controller.c: some changes to the control layout. * ./src/interface/main.c: i_warning_level is set to 0 to avoid unwanted verbose messages. * ./po/en_GB.po: British translation. * ./src/interface/main.c, ./src/misc/configuration.c: fixed the warning_level handling: "-v" and "--warning" are now working as they should and they also are cumulative (using -vv --warning=3 you end up with i_warning_level=5). * ./src/misc/configuration.c: support for short options. -V, -A, -I are back, and we also have -4 and -6 for IPv4/IPv6. * ./src/misc/configuration.c: added config_GetFloatVariable() and config_PutFloatVariable() to the config module. * ./src/video_output/video_output.c: added a --zoom config option. * ./plugins/idct/idct_sparse.c: added a call to RestoreCPUState() in InitIDCT() so that the FPU is still available after a call to InitIDCT(). * ./plugins/text/logger.c: deactivated stream buffering when logging to a file. * ./po/*: re-ran make update-po, fixed a few translations. * ./po/fr.po: completed the french translation. * ./plugins/gtk/gtk.glade, ./plugins/gtk/gnome.glade: synchronized a few strings between the Gtk+ and GNOME modules to avoid duplicate translations. * ./po/de.po: updated german translation. Many thanks to Thomas Graf. * ./doc/vlc-howto.sgml: URL & mailing-lists corrections. * ./plugins/gtk/gtk_preferences.c: the last category from the config options wasn't displayed. * po/nl.po: updated Netherlands translation of interface. * po/fr.po: completed french translations. * ALL: internationalized all configuration strings. * ./src/interface/main.c: we now set LC_CTYPE to get the right charset. * ./src/misc/configuration.c: lots of simplifications in the code. * ./po/vlc/pot: updated translations. 0.3.1 Thu, 18 Apr 2002 06:43:42 +0200 * ./vlc.spec: fixed build dependencies. * ./configure.in: when -lintl is available, we now also link plugins with it. * ./include/threads.h: fixed a segfault under Solaris, thanks to Meuuh. * ./plugins/spudec/spu_decoder.c: RGB 24bpp and 32bpp support. * ./configure.in: switched version to 0.3.1. * ./vlc.spec: imported Mandrakesoft's latest enhancements. * ./configure.in, ./plugins/network/ipv6.c: support for the GNU glibc extension gethostbyname2(), thanks to Thomas Graf. * ./plugins/macosx/vout_macosx.c: finally fixed MacOS X aspect ratio. If you know how to center the picture in the screen, and make the remaining space black instead of white, PLEASE drop me a mail! * ./src/input/mpeg_system.c: in TS demux, a program is selected only if a PMT for it was found. This should fix the problem that occured when reading a file directly extracted from a satellite card. * ./plugins/access/udp.c: UDP access plugin uses input_SetProgram. * ./AUTHORS: added people locations, just for fun. * ./configure.in: disabled SSE plugins when using mingw32. * ./src/misc/configuration.c: disabled the AltiVec warning message on the PowerPC platform because it was misleading. * ./plugins/dvdread/dvdread.c: have dvdread plug-in respond to dvd: URLs. * ./plugins/macosx/intf_macosx.c: MacOS X interface shouldn't take as much CPU as it used to. * ./plugins/motion/motionaltivec.c: fixed a bug in AltiVec-enabled MC (thanks walken). * ./plugins/memcpy/memcpyaltivec.c: fixed a case of segfault in AltiVec- enabled memcpy. * ./doc/vlc-howto.sgml: big update of Henri's howto. * ./plugins/mpeg_vdec/*: support for pictures with a pitch different from the picture width, inspired by Gildas Bazin. * ./plugins/satellite/input_satellite.c: fixed a typo in satellite input. * ./src/interface/main.c: added options to configure antenna (sat_lnb_lof1, sat_lnb_lof2, sat_lnb_slof and sat_diseqc). They only appear if satellite input is compiled. * ./plugins/satellite/input_satellite.c: fixed a few bugs in satellite input (device was not closed in every failure case, symbol rate limits in gnome interface were wrong). * ./plugins/gtk/*: added FEC choice in command line, gtk and gnome interfaces. Command line is now satellite:, ,, * ./plugins/beos/vout_beos.cpp: implemented a fix for nVidia overlays thanks to Bertil. * ./Makefile: fixed the Win32 interface under Win2k/XP. * ./src/misc/modules_plugins.h: implemented a dlerror()-like wrapper for the Win32 API. * ./plugins/mpeg_system/mpeg_ps.c: fixed another bug in PS demux: the first program added was at the same time declared as the current program and as a new program, which made the ES be selected two times. * ./src/input/input_programs.c: fixed a bug in input_SetProgram, that made the ps file input launch without video. * ./plugins/beos/vout_beos.cpp: fixed code to close vout window, does not segfault anymore. * ./po/fr.po: french translation update * ./configure.in: fixed a bug in the libdvdread detection. * ./configure.in: fixed plugin compilation under Win32. * ./vlc.spec: imported MandrakeSoft's enhancements. * ./doc/developer/decoders.xml: fixed a typo preventing compilation. * ./plugins/aa/aa.c: we now parse the AAOPTS environment variable. * ./plugins/aa/aa.c: a few simplifications in the code. * ./src/input/input.c: made file access plugin use input_SetProgram so that we may change program when reading a file. * ./src/input/input_programs.c: fixed a bug in input_SetProgram. * ./src/interface/main.c: added --input_program option, to choose the program from the command line. * ./plugins/memcpy/memcpyaltivec.c: fixed AltiVec-enabled version of fastmemcpy. * ./src/interface/main.c: fixed --memcpy switch. * ./Makefile: changed CFLAGS_VLC to vlc_CFLAGS (last-minute changes are great ideas :p) * ./README - Mac OS X.rtf: new README file for MacOS X. * ./Makefile: fixed the Win32 interface under Win2k/XP. * ./src/misc/modules_plugins.h: implemented a dlerror()-like wrapper for the Win32 API. * ./configure.in: wrote a better test for libdvdread detection. * ./plugins/gtk/gtk.glade: added lines this #@%$! Glade had munched, fixes a segfault in the Gtk+ popup menu when toggling the interface. * ./plugins/motion/motion.c: fixed a compilation issue on compilers which do not accept empty macro arguments. 0.3.0 Sat, 6 Apr 2002 04:27:50 +0200 * ./doc/release-howto.txt: updated documentation. * ./vlc.spec: added missing plugin filenames to the build process. * ./plugins/win32/mainframe.dfm: swapped two mixed up tooltips. * ./Makefile: fixed make dist and make distclean. * ./plugins/dvd/dvd.c: compilation fix. * ./plugins/gtk/gtk_callbacks.c: fixed ejection code. * ./plugins/text/ncurses.c: fixed compilation of the ncurses plugin. * ./vlc.spec: updated specfile. * ./Makefile, ./configure.in: misc BeOS build fixes. * ./plugins/win32/win32.cpp: fixed `--intf intfwin' which wasn't working. * ./Makefile: we don't include the Gtk+ and SDL DLLs in the win32 package anymore, the package is now 700k instead of 4MB. * ./configure.in, ./Makefile, ./Makefile.opts.in: replaced LIB_FOO with foo_LDFLAGS and CFLAGS_BAR with bar_CFLAGS for faster builds, and moved a lot of stuff from Makefile.opts.in back to configure.in. * ./install-win32: updated script for NSIS 1.96. * ./configure.in: added --enable-intfwin to enable the win32 interface and --with-bcbuilder to tell make where to find Borland C++ Builder. * ./plugins/win32/intfwin.bpr: we now build intfwin.so at the right place. * ./plugins/win32/Makefile: intfwin.so can be built using commandline. * ./configure.in, ./include/threads.h, ./include/common.h: a custom defs.h file isn't needed for the intfwin plugin anymore. * ./INSTALL.win32: updated compilation instructions for the intfwin plugin. * ./AUTHORS: added ipkiss. * ./plugins/win32/mainframe.cpp: disabled the "hide interface" menu item, not yet implemented. * ./plugins/win32/about.dfm: replaced the outdated author list with a "VideoLAN Team" entry. * ./plugins/gtk/gtk.glade, plugins/gtk/gnome.glade, ./plugins/kde/kde.cpp: replaced the outdated author list with a "VideoLAN Team" entry. * ./debian/rules, ./debian/control: deactivated the vlc-kde package because it does not work, and removed the vlc-a52 package because liba52 is statically linked into vlc. * ./debian/control: added more helpful package descriptions. * ALL: changed version to 0.3.0. Yeah, it's coming. * ./Makefile: fixed make dist. * ./src/video_output/video_output.c: fixed a vout4 image starvation bug. * ./plugins/dvd/dvd.c: we look for libdvdcss.so.2 as well as -.so.1. * ./configure.in: BSD/OS fixes thanks to Steven M. Schultz. * ./Makefile: renamed the `snapshot' rule to `dist'. * ./Makefile: removed the `snapshot-nocss' rule which isn't needed anymore. * ./Makefile.modules: modules now depend on Makefile.opts. * ./configure.in: added (hopefully) explicit messages on how to get libdvdcss and link vlc with it. * ./plugins/dvdread/input_dvdread.c: removed inclusion of dvd_udf.h. * ./plugins/win32/*: Added management for secondary config dialogs * ./plugins/ogg/*: added preliminary files for an Ogg/Vorbis decoder a contributor is currently working on. * ALL: removed libdvdcss from the vlc tree. * ALL: removed libdvdread from the vlc tree. * ./acconfig.h: removed this file. * ./plugins/dvd/dummy_dvdcss.c: merged this file into dvd.c. * ./AUTHORS: moved a few gentlemen to the libdvdcss AUTHORS file. * ./plugins/gtk/gtk_callbacks.c: use the dvd_device config option. * ./po/ja.po: added Japanese translation from Fumio Nakayama . * ./plugins/gtk/gtk_callbacks.c: fixed disc ejection code. * ./include/threads.h: new pthread implementation for WinNT/2K/XP. This implementation shouldn't be subject to race conditions as it is using SignalObjectAndWait() from the Win32 API. As this should be somehow slower than the old method (still used on Win9x), you can specify that you want to use the old method with the "fast_pthread" config option. * ./include/videolan/vlc.h: added a new p_main_sys global variable. This variable is a pointer to an OS specific structure which is defined in *_specific.h. This structure can be filled by the already existing System_Init() function and is a nice way to avoid too many #ifdefs. * ./include/defs.h.in: got rid of the DVD_DEVICE macro. We now use the dvd_device config option. This creates a small memory leak as we don't free the string obtained from config_GetPszVariable, but I think we can live with it for now. * ./configure.in: the SSE plugins are disabled on the mingw32 build as they don't work (because memalign is not implemented on win32, and malloc only aligns on an 8 bytes boundary). * ./INSTALL.win32: fixed a small mistake. * ./include/config.h: fixed config directory name for windows. * ./plugins/win32: the network dialog now respects the preferences settings. * ./src/input/input_ext-plugins.c: compilation fix. :-ppppp * ./plugins/memcpy/fastmemcpy.h: AltiVec-enabled version of fastmemcpy. * ./plugins/macosx/vout_macosx.c: use ImageBuffer instead of ScreenBuffer in OS X video output (should be faster). * ./src/interface/main.c: check that channels have been created before the call to network_ChannelJoin. * ./plugins/win32/*: fixed a few bugs in the preferences. * ./plugins/win32/*: better auto-resizing of the main window. * ./plugins/win32/*: the disc dialog now respects the preferences settings. * ./src/misc/configuration.c: small compilation fix. * ./plugins/beos/vout_beos.cpp: added a test for the nooverlay option. * ./include/config.h: changed directory of the config file for BeOS to be consistant with OS standard. * ./configure.in: BeOS, liba52 and chroma plugin compilation fixes. * ./plugins/dvd/dvd_access.c: removed a warning. * ./src/misc/configuration.c: Solaris fixes by Meuuh. * ./FAQ: removed outdated stuff. * ./plugins/directx/vout_events.c: fixed yet another bug related to the event thread creation. * ./plugins/directx/vout_events.c: removed a few debug messages. * ./extras/Win32_msvc/*: Microsoft Visual Studio C++ 6 project files. This is useful mainly for debugging as the hardware accelerated plugins can't be compiled with msvc. * ./plugins/downmix/ac3_downmix_sse.c, ./plugins/downmix/ac3_downmix_3dn.c: Win32 compilation fixes when downmixsse and downmix3dn are declared as plugins. * ./plugins/directx/vout_events.c: fixed the waiting on the event thread creation in the directx plugin. * ./Makefile: updated the "package-win32" rule. * ./install-win32: all txt files are now converted to dos format (CRLF). * ./doc/win32/Cross-Compile-Howto.txt: VLC-Win32 Cross-Compile Howto, courtesy of Bill Eldridge. * ./plugins/beos/vout_beos.cpp: improved overlay detection, default colour space selection. * ./plugins/gtk/gtk_preferences.c: allow the user to resize the configuration windows. * ./plugins/gtk/gtk_preferences.c: moved config_GetIntVariable out of the loop. * ./plugins/gtk/gtk_preferences.c: you can now set a maximum height for the configuration windows in the gtk and gnome plugins. This patch _doesn't change_ the look of the interface unless this interface tries to use more space than allowed, in which case scrollbars are added to make the navigation easy. Note that this setting only affects the default size the interface will use, the user is then free to change the size of the window as he wants. * ./plugins/gtk/gtk_preferences.c: tooltips are now triggered only in specific places. This is a lot less intrusive and annoying for the users. * ./plugins/win32: fixed the bug on exiting the vout pressing 'q'. * ./plugins/beos/*: implemented an "always-on-top" feature for the interface window, RGB16 Overlay supported again, resizing is now implemented consistantly. * ./plugins/win32: subtitles should work, now. * ./plugins/access/udp.c: disabled the server argument in udpstream: because it confuses users and is not of any practical use. * ./src/interface/main.c: fix for sparc. * ./plugins/dvd/dvd_access.c: don't try to stat() the dvd drive letter on win32. * ./plugins/directx/vout_directx.c: disabled YUV overlay double buffering for now, as it seems to actually be slower. * ./include/threads.h: temporary fix in vlc_cond_signal() for win32 (I really should use SignalObjectAndWait() on WinNT so we can avoid race conditions in the pthread code). This fixes a problem noticed on WinXP where vlc would freeze regularly and eat-up all the CPU (fun no?). * ./src/input/input_programs.c: when unselecting an ES, we must ged rid of p_es->p_pes so that it is regererated when we select this ES again. It made vlc segfault when switching from some stream to another, or when switching program in satellite input. * ./plugins/access/udp.c: UDP access plug-in can now receive MPTS (Multiple Program TS) and switch programs. * ./plugins/macosx/*: audio and video output go to time-constrained scheduling [OS X port]. * ./plugins/gtk/gtk_preferences.c: some dirty ifdefs for a nicer gnome interface (gnome buttons, gnome dialogs). * ./po/nl.po: translation of user interface messages to Netherlands. * ./plugins/gtk/gnome.c, ./plugins/gtk/gtk.c: new options "gtk_hide_toltips" or "gnome_hide_tooltips". Tooltips are enabled by default. This option is only considered on module initialization. * ./configure.in: GNU make detection. * ./extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib: deleted non-working fullscreen menu item [OS X]. * ./plugins/access/http.c, ./plugins/access/udp.c: udp and http no longer modify p_input->psz_name. * ALL: various little portability fixes. * ./src/misc/configuration.c: changed the behaviour of the config file: now all the config options are saved. config options which have no default value are also saved in the config file but as an empty string, and config_LoadConfigFile will ignore empty config options, which also means we cannot pass an empty string as a config option. (this shouldn't matter anyway). * ./plugins/gtk/gtk_preferences.c: modified the gtk interface to save an empty option as a NULL pointer. * ./src/misc/configuration.c: modified config_LoadConfigFile to consider an empty option as a NULL pointer. * ./plugins/gtk/gtk_preferences.c: save button (inadvertently suppressed). * ./plugins/win32: added toolbar icons (thanks xav), we can no longer edit plugin names in the preferences :) * ./plugins/win32: the tool button for playlist is now a toggle button. * ./plugins/beos/InterfaceWindow.cpp: disabled controls if the playlist was empty. * ./plugins/win32/*: added a win32 interface plugin, developed with Borland C++ Builder. To build the plugin, follow the instructions in INSTALL-win32.txt. * ./plugins/gtk/gtk_preferences.c: fixed an ugly structure, the tabs are not verticaly expanded as they were, small enhancements. * ./plugins/gtk/gnome.c, ./plugins/gtk/gtk.c, ./plugins/gtk/gtk_common.h: new Tooltips structure. * ./plugins/gtk/gtk_preferences.c: modifications of some widgets, the structure, cosmetic changes. * ./src/interface/main.c: typos, a couple of new descriptions. * ./src/interface/main.c: moved the "display" option from main to the relevant plugins. ( We now have the x11_display, xvideo_display, xmga_display and ggi_display options ). * ./INSTALL-win32.txt: fixed a little omission. * ./src/plugins/gtk/*: fixed a bug that made vlc segfault when choosing a program, change to another and come back to the first one. * ./src/plugins/gtk/*: added gtk and gnome interfaces for satellite input. We should find a way to hide the button if satellite support is not compiled. * ./plugins/beos/vout_beos.cpp: implemented correct scaling and used new window size variables. Beta always on top for the interface window. New cursor handling. * ./plugins/macosx/aout_macosx.c: fixed a problem in the MacOS X aout which caused the previously played audio frames to be played when there were no new frames available. * ./plugins/macosx/vout_macosx.c: MacOS X vout now uses the height/width calculated in video_output.c. * ./configure.in: Win32 fix. * ./configure.in: miscellaneous fixes for the OS X port. * ./src/video_output/video_output.c: the calculation for the initial video window dimensions is now done in video_output.c and made available into p_vout->i_window_height/width. This allows to get rid of duplicated code and unify the behaviour of the video output plugins. (not all the plugins have been modified because I didn't want to break anything). * ./src/misc/configuration.c: moved GetConfigurationFromCmdLine() into configuration.c and renamed it to config_LoadCmdLine(). * ./src/misc/configuration.c: config_GetHomeDir doesn't use getpwuid_r anymore as this was creating some problems on solaris. This function now uses getpwuid and is called only once to store the home directory into the p_main structure. * ./plugins/satellite/*: added satellite input. It works with WinTV Nova card, and siemens 0.9.4 drivers from www.linuxtv.org. * ./src/interface/intf_msg.c: fixed stupid bug in stupid ConvertPrintfFormatString() function. * ./plugins/win32/waveout.c: fixed the "waveout not closing" bug. We need to reset the waveout device before closing it. * ./src/input/mpeg_system.c: fixed a bus error on UltraSparc. * ./plugins/sdl/vout_sdl.c: Win32 and Solaris compilation fix. * ./plugins/beos/vout_beos.cpp: improved scaling, correct aspect ratio even in full screen mode, duplicate code reduces and framework for Overlay and OpenGL modes in place. * ./src/misc/modules_plugin.h: kludge to allow the ALSA module to be compiled as a plugin. Please test. * ./include/modules.h: fixed a C++ warning. * ./plugins/vcd/input_vcd.c: VCD raw device fix, courtesy of Steven Schultz. * ./configure.in: better IPv6 detection. IPv6 is disabled under MacOS X (no inet_pton call). * ./src/input/input_programs.c: fixed some bugs in program management: selected ESs must be attached to the selected program. * ./plugins/aa: aalib output plugin courtesy of Sigmund Augdal. * ./configure.in: fixed a few bashisms. * ./src/misc/configuration.c: fixed build under Solaris. * ./TODO: updated todo list. * ./plugins/dvd/dvd_access.c: fixed a memory leak. * ./plugins/mpeg_vdec/vpar_pool.c: fixed a memory leak. * plugins/win32/waveout.c: fixed typo. * ./configure.in: BeOS compilation fixes. * ./debian/rules: activated (broken) KDE interface. * ./plugins/access/http.c: fixed a segfault. * ./plugins/alsa/aout_alsa.c: fixed a segfault. * ./include/common.h: fixed the compilation fix for Borland C++ :) * ./include/common.h: compilation fix for Borland C++. * ./plugins/macosx/aout_macosx.c: MacOS X aout now uses AudioConverter for int->float. * ./plugins/macosx/*: Various MacOS X intf improvements and bug fixes. * ./plugins/chroma/i420_rgb8.c: fixed a warning. * ./plugins/filter/deinterlace.c: fixed chroma deinterlacing. * ./plugins/kde/kde.cpp: the KDE interface compiles again. * ./plugins/mpeg_system/mpeg_es.c: fixed a segfault I introduced today. * ./plugins/network/ipv4.c: cosmetic fix. * ./src/interface/main.c: fixed a typo in the --help output. * ./src/misc/netutils.c: fixed a segfault in the vlcs communication; still unstable but solving other bugs won't do any good without rewriting the whole playlist code. Which I'm doing right now. * ./configure.in: MacOS X compile fixes. * ./src/input/input.c: skip "//" if we find "://" in a resource we have to play : this allows us touse the syntax udpstream://host. * ./extras/MacOSX_dvdioctl: removed outdated files. * ./plugins/fx/scope.c: fixed an infinite loop error. * ./plugins: fixed segfaults in various demux plugins. * ./plugins/sdl/vout_sdl.c: SDL_VIDEODRIVER can be specified from the command line; try "--vout sdl:aalib" * ./configure.in: fixed linking of the ipv4 plugin. * ./configure.in: DirectX plugin is now correctly detected and configured. * ./BUGS: updated bug list. * ./configure.in: ./configure --help should be a lot clearer now. * ./plugins/chroma/i420_rgb8.c: plain C 8 bpp transformation. * ./plugins/chroma/i420_rgb16.c: plain C 24/32 bpp transformations. * ./plugins/ggi/ggi.c: support for 8 bpp displays. * ./plugins/sdl/vout_sdl.c: support for 8 bpp displays. * ./plugins/x11/xcommon.c: support for 8 bpp displays. * ./src/video_output/video_output.c: fixed a segfault. * ./plugins/x11/xcommon.c: added an alternate fullscreen method. With this method, _nothing_ is allowed to be displayed on top of the video (especially not taskbars, etc...). Of course this can also be annoying sometimes, this is why it's an option. * ./src/misc/configuration.c: small fix for the config file. The parser assumes that the config file is divided into sections (a section is the config data for a plugin and begins with something like [foo]), so the comment for the beginning of the section must be after the section marker and not before. * ./plugins/beos/vout_beos.cpp: tidied code and prevented curruption on window not containing the video. Video window now returns to correct size and position after toggling full screen. * ./configure.in: more modules are plugins. * ./src/misc/configuration.c: changed ~/.VideoLan/vlc to ~/.videolan/vlcrc, and a few cosmetic changes (sorry Gildas for the butchery). * ./plugins/chroma/i420_rgb16.c: C version of the I420 to RV15/16 chroma. * ./src/misc/configuration.c: this the last piece of the new configuration module. You can now save your configuration options (only from the gtk/gnome interface for now). The config file will be saved as ~/.VideoLan/vlc. * ./plugins/spudec/spu_decoder.c: we now analyze the subtitle image data to find the border color and the inner colors when there was no way to find the palette data (network stream). * ./plugins/mpeg_system: fixed a parsing bug I introduced yesterday. * ./Makefile: fixed OS X vlc.app compilation dependencies. * ./configure.in: fixed the endianness check under Solaris. * ./src/input/input.c: strings are now initialized to "" instead of NULL. * ./plugins/spudec/spu_decoder.c: we now properly support the subtitle palette information we get from the DVD. Subtitles rox ! * ./src/video_output/vout_subpictures.c: removed all DVD-specific routines and put them into spu_decoder.c. * ./plugins/audio_output/aout_spdif.c: removed an ugly loop. * ./plugins/audio_output/aout_spdif.c: moved iec958/spdif encapsulation from ac3_spdif to aout_spdif. It will eventually allows to use ac3_adec or a52 for spdif output. * ./plugins/dvd/dvd_access.c: fixed chapter selection at startup. * ./src/input/input_dec.c: p_es->p_demux_data is available in p_config->p_demux_data so that the input can pass information directly to the decoder. First application: aspect ratio for DVD is read from the ifo (should fix the buf with aspect ratio in anamorphic DVDs). * ./plugins/dvd/dvd_es.c: the DVD plugin also copies the spu yuv palette in p_demux_data so that the spudec can display subtitle with the right color (sam !). * ./plugins/gtk/gtk_menu.c: removed duplicate code and useless lock in gtk. * ./plugins/vcd/input_vcd.c: fixed EOF and Stop segfault in VCD input: input_BuffersEnd was being called twice. * ./AUTHORS: updated Tony Castley's e-mail. * ./plugins/beos/vout_beos.cpp: new resizing and scaling code. More in line with BeOS standards. * ./plugins/a52/a52.c: a52 plugin updated to use liba52-0.7.3 (which is now available in debian :) * ./src/interface/main.c: new configuration option to choose audio output format at runtime. It allows to select spdif pass-through decoder with --ac3_adec and to remove the ugly b_ac3 in main.h. As a consequence --spdif doesn't work anymore: you should use --ac3_adec pass. * ./src/interface/main.c: return the option name in error message for unknown option intead of the argument. * ./plugins/gtk/gtk_preferences.c: gtk config interface modified so you can only have one instance of a plugin config dialog box displayed at one time. * ./plugins/gtk/gtk_preferences.c: new GTK configuration interface. This interface is generated dynamically at run-time from the configuration data contained in each plugin. * ./src/misc/configuration.c: config_PutPszVariable and config_GetPszVariable are now thread safe. * ./src/misc/configuration.c: few modifications/optimizations to the config module. * ./include/config.h: got rid of all the _VAR macros in config.h. * ./plugins/vcd/input_vcd.c: added missing include (MacOS X port). * ./plugins/dvd/*: fixed EOF segfault at end of DVD. * ./src/input/input.c: buffer manager is renintialised at area change. * ./plugins/dvd/dvd_access.c, ./plugins/vcd/input_vcd.c: we now exit more cleanly on initialization error. * ./plugins/dvd/*: rewrote most functions in DVD plugin. Some old bugs might have been solved in the operation. The plugin some be more readable now, and should produce fewaer segfaults (I hope so :p) * ./plugins/vcd/input_vcd.c: added some tests in open. * ./plugins/alsa/aout_alsa.c: spdif support in the ALSA plugin. * ./plugins/vcd/input_vcd.c: when reaching the end of a track, moves to the following one. * ./src/interface/main.c: disabled the GNOME segfault dialog in debug mode. We want nice, clean segfaults, with huge core files and a lot of rattle noise. * ./plugins/dvd/dvd.c: I hope you liked this bug: DVD demux was always used. * ./plugins/dvd/dvd_demux.c: fixed demux plugin selection. * ./plugins/vcd/input_vcd.c: take the lock on stream in VCDInit. Please test, as I don't have any VCD to do it. * ./plugins/ac3_adec/ac3_parse.c: ac3dec is now less verbose. * ./src/interface/interface.c: fixed a deadlock when seeking the stream using the keyboard arrows. * ./plugins/gtk/gtk_display.c: removed an occurance of former angle item in gtk. * ./plugins/dvd/input_dvd.c, ./plugins/dvdread/input_dvdread.c: fixed a bug in ES management introduced lately in DVD/DvdRead. * ./plugins/dvd/*: beginning of reorganisation in DVD plugin source files, in order to try to make it easier to understand. There is some work left though :p. * ./plugins/vcd/vcd.c: decreased the score for VCD plugin, as the VCD demuxer was used even for DVD :p. It should make autodetection work. * ./plugins/vcd/input_vcd.c: modified vcd input for the new input III. Still have problems with end of tracks. * ./plugins/vcd/vcd.c: modified the command line, as stef did for the DVD. * ./plugins/dvd/input_dvd.c: DVD demux was no longer selected under win32. * ./plugins/dvd/dvd_summary.c, ./plugins/dvdread/input_dvdread.c: DVD angle is now handled through a program structure, so that the interface needs nothing specific to change angle. * ./src/input/input_clock.c: fixed a bug in clock management where ES without a program couldn't get timestamped. * ./plugins/gtk/*: fixed program management in gnome/gtk. Program now also appears in popup. * ./plugins/gtk/gtk_menu.c: in interface, only display ES associated with the selected program, or with no program at all. * ./src/input/input.c: fixed typo in the win32 change to the input parser. * ./plugins/dvd/input_dvd.c, ./plugins/dvdread/input_dvdread.c: more complete command line parsing for DVD, hopefully working this time. * ./plugins/network/ipv6.c: IPv6 network module, courtesy of Alexis Guillard , for BT. * ./src/interface/main.c: --6 and --4 options to force IPv6 or IPv4 (FIXME: it should be -6 and -4 but I don't know how to do it with the new configuration module). * ./src/misc/netutils.c: channel manager now uses a socket from the network plug-in and is more portable (and probably broken, too :) * ./plugins/mpeg_system/mpeg_ps.c, ./plugins/mpeg_system/mpeg_ts.c: input_ReadPS and input_ReadTS are now in mpeg_system.c to be more easily reused by plug-ins other than mpeg_ps and mpeg_ts. * ./src/audio_output/audio_output.c: we now make sure the aout plugin buffers always contain between AOUT_BUFFER_DURATION/2 and AOUT_BUFFER_DURATION*3/2 worth of audio. This should solve the audio buffer underruns. * ./src/input/input.c: fix for the bug in input when filename contains a '@' character. * ./src/input/input.c: simplified the win32 specific changes to the input parser. (I think we can safely assume that no access plugin name will have a length of one character). * ./plugins/dvd/dvd.c: DVD access plugin is only called if specified under windows (no automatic detection). * ./plugins/dvd/input_dvd.c: replaced setenv with putenv. * ./plugins/gtk/gtk_open.c: fixed a bug in gtk. * ./plugins/dvd/input_dvd.c: new command line for DVD, to get rid of global options input_title or so. * ./Makefile: added network to the list of the plugins directories. * ./plugins/dvd/input_dvd.c: fixed DVD input under Win32. * ./src/input/input.c: fixed input parser under win32, which couldn't understand that c:\windows\bureau is a valid file and doesn't need to be accessed with the plugin 'C' :-) * ./AUTHORS: added xav. * ./include/videolan/vlc.h: got rid of int_types.h and did a few changes Ipkiss will need. Hope I did not break other platforms. * ./include/common.h: fixed compilation problem related to ssize_t. * ./include/common.h: various Win32 compilation fixes. * ./include/input_ext-plugins.h: DVD compiles, but doesn't work yet. * ./plugins/network/ipv4.c: fixed some typos in my previous Win32 multicast commit. * ./plugins/dummy/input_dummy.c: fixed `vlc vlc:quit'. * ./src/input/input.c: initialized uninitialized variables. * ./src/input/input.c: initialize p_access_module & p_demux_modules to NULL when input thread is created. * ./po/no.po: Norwegian translation by Sigmund Augdal. Berdå ka pø tüt. * ./src/misc/modules.c: shortcuts for --intf work again, gvlc launches the Gtk interface, qvlc launches the Qt interface, etc. * ./plugins/fx/scope.c: we now have sound together with --aout scope. * ./plugins/dvd/dvd.c, ./plugins/dvdread/dvdread.c: removed numerous deadlocks. * ./plugins/network/ipv4.c: multicast under Win32 now works with the new input. * ./plugins/dvd/dvd.c, ./plugins/dvdread/dvdread.c: dvd and dvdread support for input III. * ./src/input/*, ./plugins/network/*, ./plugins/access/*: Input III (Episode 1). Major rewrite of the buffer core functions, modularity of access plugins (file, udp, http), modularity of network stack (ipv4, soon ipv6), autodetection of the type of stream. * ./plugins/mpeg_vdec/vpar_headers.c: we no longer crash when the next stream doesn't have the same image size as the previous one. * ./src/audio_output/aout_pcm.c: another overrun fix; please test. * ./configure.in: fixed a plugins/dsp.so compilation issue under OpenBSD. * ./plugins/dsp/aout_dsp.c: OpenBSD compilation fix. * ./src/video_output/video_output.c: fixed a segfault on exit. * ./src/input/input.c: BeOS network support (no idea if it works when you don't have BONE, though). * ./include/common.h: BeOS compile fixes. * ./plugins/beos/vout_beos.cpp: fixed BeOS video output. * ./src/misc/configuration.c: fixed uninitialized variable in config_Duplicate(). * ./src/audio_output/audio_output.c: char pointers obtained by config_GetPszVariable need to be freed. * ./src/interface/main.c: forgot to add the declaration of server_port. * ./src/input/input.c: multicast now works under Win32, but this is a _bad_ kludge. * ./include/threads.h: support for the State Threads Library, a userland threads library (http://state-threads.sourceforge.net/). Useless to most people, but can be handy to debug stuff. Activate with `--enable-st'. * ./plugins/ac3_spdif/ac3_spdif.c, ./plugins/dvdread/dvdread.c, ./plugins/dvd/dvd.c: adaptation to new configuration scheme for dvd, dvdread and spdif. * ./plugins/lirc/lirc.c: removed CVS garbage. * ./plugins/gtk/gtk_menu.c: fixed a compile issue on IA64. * ./plugins/fx/scope.c: new toy plugin, an audio scope module. * ./src/audio_output/aout_spdif.h: replacement header for aout_common.h. * ./src/audio_output/audio_output.c: fixed a quite old bug in the audio output which made the sound stutter when wrapping around the audio output fifo. * ./src/audio_output/audio_output.c: lots of simplifications in the audio output, got rid of b_stereo. * ./plugins/gtk/*: added a menu in the GTK and gnome interfaces to change the current program in multi-program streams (such as ones provided by a DVB-S card). * ./src/misc/configuration.c: new configuration architecture for vlc. * ./src/interface/intf_msg.c: fixed array over-run bug in intf_MsgUnsub. * ./configure.in: don't try to grok altivec with mingw32. * ./configure.in: --with-directx-path should now indicate the path where the actual headers are (before the headers had to be in an include subdir). By the way you can download these header files from the videolan web site. * ./src/misc/modules_plugin.h: if symbol foo isn't found in the plugin, we always try to open _foo, whatever the architecture. * ./plugins/lirc/lirc.c: non-blocking patch from Sigmund Augdal ; hope this time my enhancements don't break everything :-) * ./configure.in: gtk*-config detection fix for FreeBSD. * ./configure.in: removed a bashism. * ./plugins/x11/xcommon.c: support for systems without shm.h. * ALL: QNX compilation fixes here and there; the qnx plugin still doesn't work. * ./Makefile: the win32 port now uses a more recent version of gtk+. * ./plugins/gtk/gtk.c: the log window is now black with colourful text. * ./plugins/gtk/gnome.c: ported the log window to the GNOME interface. * ./src/interface/intf_msg.c: messages are sent to the queue even if -vvvv* wasn't specified. * ./plugins/vcd/cdrom_tools.c: MacOS X VCD support. * ./plugins/lirc/lirc.: various fixes, thanks to Sigmund Augdal. * ./plugins/text/logger.c: rewrote an ugly loop. * ./plugins/gtk/gtk.c: added a Gtk+ window containing all the log messages; updated in real time. To open it, go to "view"->"messages". * ./src/interface/intf_msg.c: got rid of TRACE and intf_DbgMsg which were seldom used anyway. * ./src/interface/intf_msg.c: all intf_*Msg functions now write to stderr. * ./src/interface/intf_msg.c: implemented a message queue interface plugins can subscribe to. * ./plugins/text/logger.c: wrote the logger interface plugin. Usage: vlc -I logger:filename.log. * ./src/video_output/vout_subpictures.c: lots of fixes in the SPU renderer. * ./src/video_output/video_output.c: fixed a typo in aspect ratio calculation. * ./plugins/macosx/vout_macosx.c: MacOS X vout improvements. * ./plugins/macosx/intf_macosx.c: MacOS X intf now returns, allowing vlc to terminate properly. * ./Makefile: added a new make target: package-macosx. * ./plugins/gtk/gtk_playlist.c: Win32 compilation fixes (mingw includes dirent). * ./configure.in: configure now checks for ddraw.h and not directx.h. * ./plugins/directx/vout_directx.c: don't include directx.h anymore (this file isn't part of the directx sdk). * ./plugins/waveout/waveout.c: moved all the stuff from aout_waveout.c directly into waveout.c (I don't know what I was thinking about when I created these two files ;-) * ./plugins/waveout/waveout.c: until we fix the audio buffer underrun problem, waveout will be the default audio output on win32 (instead of directx). * ALL: got rid of *_Probe functions because most of them were duplicates of the real _Init or _Create functions. That's 1000 lines of code gained. * ./src/misc/modules.c: we try not to keep the global lock in module_Need, which should speed up output spawning. * ./plugins/dummy/input_dummy.c: fixed vlc:quit command. * ./plugins/gtk/gtk_playlist.c: compilation fix. * ./plugins/macosx/*: preliminary fixes for the vout4 port. * ./plugins/gtk/*: Win32 fixes. * ./plugins/beos/*: BeOS fixes from Rudolf Cornelissen. * ./src/interface/main.c: --desync now really accepts a value in ms. * ./plugins/vcd/input_vcd.c: fixed a crash when not opening a VCD. * ./src/video_output/vout_subpictures.c: fixed subtitles under BeOS and other architectures which don't support overlay. * ./plugins/a52/a52.c: compilation fix (include stdint.h). * ./plugins/a52/a52.c: fixed a SEGV. * ./plugins/beos/vout_beos.cpp: ported the BeOS RGB video output to vout4. The overlay video output still needs to be written though. * ./plugins/a52/*: just renamed the liba52_adec plugin into a52 to comply with the naming convention used by the other plugins. * ./plugins/lirc/lirc.c: IR remote control plugin by Sigmund Augdal , activate with --enable-lirc. * ./configure.in: put liba52_adec in a builtin for PIC/non-PIC reasons. * ./plugins/liba52_adec/*: new AC3 decoder plugin using liba52 from Aaron Holtzman and Michel Lespinasse. This plugin isn't used by default, you have to specify: --ac3_adec liba52. * ./src/misc/modules.c: changed module_Need to make it possible to have several modules with the same shortcut name. * ./plugins/gtk/gtk_open.c: fixed a bug in the network dialog. * ./src/misc/modules_plugin.h: added mstrtime() to module_symbols_t so we can compile the mpeg_vdec plugin with TRACE mode enabled. * ./plugins/ac3_spdif/ac3_spdif.c: fixed ac3_spdif which has been broken recently. * ./plugins/ac3_adec/ac3_adec.c: check frequency in ac3_adec and change fifo if needed. * ./src/audio_output/audio_output.c: moved initialisation of p_aout from plugins to audio_output.c; if audio output rate is specified at launch time, we try to use it by default. * ./plugins/chroma/i420_rgb16.c: MMX YUV to RGB transformation for 15bpp. * ./plugins/directx/vout_directx.c: added double-buffering for the directx plugin in overlay mode. * ./plugins/directx/vout_directx.c: several directx bug-fixes: implemented the right behaviour on exit, fixed bug preventing the creation of several windows (the wall filter is working now :-)), fixed unnecessary background redraws (it made the video flicker), fixed bug where we were losing the video display because of lost surfaces in video memory, when using hardware overlay, the output window will now specify "(using hardware overlay)". * ./plugins/x11/xcommon.c: we don't use DPMS functions if they are not available. * ./plugins/win32/waveout.c: added a new very simple audio plugin for Win32. This plugin uses the waveOut API which is a lot easier to use for streaming stuff than directsound. (you don't have to take care of underflows anymore because it doesn't use circular buffers). If you are having a lot of underflows, this plugin is currently better adapted than the directx plugin. * ./src/audio_output/audio_output.c: moved some initialization stuff in audio_out.c so we can know the caracteristics of the audio stream before calling aout_Open(). * ./configure.in, Makefile: configure and Makefile tweaking for dvdread module. * ./src/misc/modules_plugin.h: fixed a missing function initialization which made decoder plugins segfault in GetChunk calls. * ./configure.in: proper soundcard.h check from Yves Duret. * ./plugins/mpeg_adec/mpeg_adec.c: enabled --stereo option for streams that pretend to be mono while they are not. * ./plugins/ac3_adec/ac3_adec.c: fixed an alignment issue in the ac3 decoder. * ./src/input/input_dec.c: decoders do not necessarily use bit stream (see mad plug-in). * ./plugins/mad/mad_adec.c: mad PTS should finally be accurate. * ./configure.in: some configure changes. * ./plugins/mad/mad_adec.c: libmad_input now takes one frame at a time (see mad_adec.h for defines) * ./plugins/mad/mad_libmad.c: audio_linear_dither() gives better sound quality then s24_to_s16_pcm(), but also makes audio artefacts louder so disabled it for now. * ./plugins/mad/mad_libmad.c: cleaned up libmad_output. * ./plugins/mad/mad_adec.c: cleaned up InitThread. * ./plugins/mad/mad_adec.h: made buffer size match libmad's expectations. * ./plugins/mad/DESIGN: updated documentation. * ./plugins/directx/vout_events.c: fixed crashes on exit in the directx plugin. * ./src/video_output/vout_pictures.c: vout_PlacePicture is now accepting picture width=height=0. * ./configure.in: added extra checks for strange compilers such as Borland C++ which do not support all gcc options. Note that vlc does not compile with bcc32 yet, but is getting closer and closer to. * ./plugins/win32: skeleton for the win32 interface Ipkiss is developing. * ./config.guess ./config.sub: latest GNU versions. * ./configure.in: when possible, xvideo is compiled as a plugin. * ./vlc.spec: fixed a few minor inaccuracies. * ./debian/control: vlc-gui is no longer depended on, but rather recommended. * ./src/interface/main.c: --spumargin flag; use this to force displaying subtitles at the bottom of the screen instead of putting them in the middle, for instance: `--spumargin 5'. * ./plugins/qnx/qnx.c, ./plugins/macosx/macosx.c, ./plugins/beos/beos.cpp: converted the plugin initialization code of the macosx, beos and qnx code. (please note that they should still not compile as they need to be adapted to the new Vout4 architecture) * ./plugins/directx/vout_directx.c: major rewrite of the directx video plugin to adapt it to the new vout4 architecture. This plugin has also been through a major clean-up and it is now much more robust and optimized. * ./plugins/gtk/gtk_playlist.c: fixed a few problems with the win32 build. * ./src/interface/main.c: replaced the "overlay" command line option with "nooverlay". The former was confusing and useless because overlays were used by default anyway. * ./vlc.spec: imported MandrakeSoft's new spec file. * ./debian/control: fixed build-dependencies for vlc-mad. * ./debian/rules: fixed the vlc-arts and vlc-mad package builds. * ./plugins/gtk/{gtk|gnome}.c: the gnome/gtk interface should no longer use p_input->stream before it has been initialized. * ./src/input/input.c: stream lock is initialized in input_CreateThread instead of initThread, to have it initialized when we call it in the interface. * ./src/audio_output/audio_output.c: added support for S8 and U16 aout. * ./debian/control: fixed Debian build-depends. * ./include/config.h: changed RELEASE to HAVE_RELEASE because RELEASE is already defined in under Linux. * ./plugins/mad/mad_adec.c: fixed issues in the PTS handling of the mad plug-in (incomplete). * ./src/input/input_ext-dec.c: more precise way to retrieve a PTS from the bit stream. * ./INSTALL.libmad: configure, build and install instructions for libmad library and mad plugin. * ./plugins/mad/mad_adec.c: smooth sound (not tested on iPaq). * ./src/audio_output/aout_common.c: le coup de grâce: all the code in audio output is now factorized (except for ac3 spdif) in aout_common.c/.h. * ./src/audio_output/aout_common.h: aout thread functions are declared with a macro. * ./src/audio_output/audio_output.c: HUGE cleanings in audio output: removed AOUT_INTF_*_FIFO, which where not used. * ./src/audio_output/aout_common.c: factored S16StereoPlay, U8MonoPlay, and so on.., in a single function aout_FillBuffer (unsigned 8bit may be broken, but I have no stream to test with :( * ./configure.in: a few fixes for the Win32 build. * ./src/video_output/video_output.c: fixed all the problems related to ToggleFullScreen(). * ./src/misc/modules.c: fixed a compile issue under platforms without HAVE_DYNAMIC_PLUGINS. * ./src/interface/intf_eject.c: MacOS X port. * ./plugins/chroma/i420_rgb16.c: 24/32 bpp software YUV. * ./plugins/ggi/ggi.c: activated double buffering. * ./src/video_output/vout_pictures.c: we create more Xv pictures to get smoother rendering. * ./plugins/mad/mad_libmad.c: removed aout_CreateFifo from mad_adec.c InitThread() and added it to mad_libmad.c. * ./src/interface/intf_eject.c: BSD compilation fix suggested by Steven M. Schultz. * ./src/audio_output/aout_s16.c: beginning of code factorization in aout_s16 (more cleaning will come). As for libmad, I have tried to create the aout fifo in libmad_output, to open it with the right sample rate, but strangely it didn't work. * ./src/input/input.c: fixed a few segfaults caused by the dummy plugin. * ./plugins/mpeg_adec/mpeg_adec.c: fixed a segfault due to misuse of DecoderError. * ./plugins/x11/xcommon.c: replaced XFlush with XSync. This must be the fourth time someone has to commit this, so I added a reminder :-) * ./plugins/mpeg_system/input_ts.c: hopefully fixed a bug in TS input, that caused a segfault when there was no network stream. * ./src/interface/intf_eject.c: BSD/OS port by Steven M. Schultz. * ./include/modules_inner.h: replaced _X with __VLC_SYMBOL because _X was already a system macro under MacOS X. * ./plugins/dummy/dummy.c: fixed vlc:loop, vlc:quit, etc. entries. * ./plugins/glide/glide.c: activated double buffering. * ./plugins/mga/xmga.c: started writing an xmga plugin; doesn't work yet. * ./src/input/input.c: fixed the input memory leak, and the insane thread spawning we got with vlc:loop. * ./src/misc/intf_eject.c: disc ejection routine courtesy of Julien Blache, currently Linux-only. * ./src/audio_output/aout_ext-dec.c: better communication between audio decoder and output: aout plugins are now opened directly in the right mode (works with mpeg_adec and ac3_adec, not tested with mad). * ./src/audio_output/audio_output.c: first attempt to implement mono output (doesn't work yet). * ./plugins/dvdread/input_dvdread.c: DVDRead plugins works again more or less ; major bugs remain but it is usable. It is selected by default if you have it compiled. * ./plugins/mpeg_vdec/vpar_headers.c: fixed a bug in QuantMatrixExtension, many thanks to "Thomas L. Wood" ! * ./debian/control: updated list of supported architectures. * ./share/*: added 16x16 and 32x32 versions of PNG icons. * ./plugins/mga/mga.c: removed the mgammx module and put the code in the chroma_i420_ymga module instead. This introduces a slight performance issue as we now need to memcpy() the Y plane, but I have some vout4 enhancements on their way which make this point moot. * ./debian/changelog: imported official Debian changelog. * ./debian/control: activated the vlc-mad and vlc-arts packages; package builds should now work again. * ./plugins/dvd/dvd.c: solved a symbol resolution issue when vlc was compiled without libdvdcss which overflowed the return stack. * ./plugins/ggi/ggi.c: ported the GGI plugin to vout4. * ./plugins/glide/glide.c: ported the Glide plugin to vout4 (untested). * ./src/input/input.c: prepared everything for multi-input mode; since no interface is yet prepared to handle this, I changed them so that they just use the first available input for now. This may break other things, but I promise I'll eventually repair everything :-) * ./plugins/mga/mga.c: pipeline and cache optimizations. * ./plugins/mga/mga.c: MMX-accelerated version of the MGA plugin. * ./plugins/mpeg_vdec/Makefile: little workaround for PA-Risc compilation. * ./plugins/mad/mad_libmad.c: optimized libmad_output() for smoother sound. It is still not optimal. * ./plugins/fb/fb.c: ported the framebuffer video output to vout4. * ./src/audio_output/aout_s16.c: fixed a segfault. It may have unexpected side effects because I don't know this part of the code, but at least it doesn't crash anymore. * ./plugins/beos/beos.cpp: first attempt at porting the BeOS plugin to the new video output and module systems. Doesn't work nor even compile yet. * ./configure.in: we now check the gtk-config version. * ./plugins/mga/mga.c: we use the MGA_VID_FSEL ioctl to select the frame to be displayed. Unfortunately, increasing the number of frames doesn't seem to work and makes the picture stutter... * ./Makefile: fixed a bug when no builtins were selected. * ./plugins/mga/mga.c: ported the MGA video output to vout4. Only does YV12 for the moment, and there is a strange bug with some streams which gives only a green image. Needs to be looked at. * ./plugins/x11/xcommon.c: fixed a few typos. * ./plugins/mad/DESIGN: updated documentation. * ./plugins/mad/TODO: updated TODO list. * ./plugins/mad/BUGS: updated documentation. * ./plugins/mad/mad_libmad.h: removed unused prototype from headerfile. * ./configure.in: fix for obscure architectures like hppa where target_os isn't properly detected. * ./include/video_output.h: got rid of pf_setpalette; I'll find a nicer way. * ./plugins/mga.c: fixed MGA module compilation. Doesn't work yet, though. * ./include/common.h: hton64 is now an inline function. * ./src/video_output/vout_pictures.c et al.: vout4 now automatically detects when two chroma formats are the same, such as UYVY/Y422, or roughly equivalent, such as I420/YV12. Plugins need not worry about conversion anymore. * ./BUGS: added a list of known bugs. Please add your findings! * ./MODULES: added a short description of each module. Maybe we should add more details to make this file really useful. * ./doc/bugreport-howto.txt: wishful thinking... * ./Makefile: added a workaround for the fact that .c files don't depend on . * ./plugins/memcpy/memcpy.c: all memcpy modules are now built from the same single file. * ./src/interface/main.c: added the --nommx, --no3dnow, --nommxext, --nosse and --noaltivec options to vlc. * ./configure.in: removed the --disable-mmx option, now useless because of the vlc --no* options. * ./src/interface/main.c: fixed a crash caused by the memcpy module being released too early. * ./include/video.h: more vout4 changes, including margin support, more FOURCC formats recognized, transparent support of identical or almost identical FOURCC formats. * ./include/video_output.h: added a vout_Render function to video output modules which is to be executed before vout_Display. * ./include/common.h: this header is back. * ./plugins/chroma/i420_rgb.c: planar YUV 4:2:0 to packed RGB conversion functions, mostly taken from vout3's yuv functions, but heavily modified to use FAST_MEMCPY and to handle image dimensions which are not multiples of 16. Not all functions have been written yet, though. * ./plugins/chroma/i420_yuy2.c: planar YUV 4:2:0 to packed YUV conversion functions, various targets such as 4:2:2 YUYV, YVYU, UYVY, or 2:1:1 YUYV, with accelerated MMX versions. * ./plugins/chroma/i422_yuy2.c: same as i420_yuy2.c but takes planar YUV 4:2:2 pictures in input. With accelerated MMX versions as well. This plugin makes it possible to display 4:2:2 files on most video cards without the quality loss of 4:2:0 downsampling. * ./plugins/filter/*: thanks to the vout_Render function, all filters now output their data perfectly in sync. * ./plugins/dvdread/Makefile: fix to prevent unnecessary target rebuilds. * ./plugins/sdl/vout_sdl.c: support for YV12, UYVY, YUY2 and YVYU overlays. * ./plugins/x11/xcommon.c: support for I420, YV12, YUY2 and Y211 overlays. * ./ChangeLog: imported the 0.2.92 changes, unrolled current CVS changes. * ./include/config.h et al.: this file is no longer generated. * ./include/video.h: we use the FOURCC definition of a chroma format to describe picture types (see http://www.webartz.com/fourcc/). * ./plugins/dvdread/input_dvdread.c: compilation fix by Eyal Lebedinsky. * ./plugins/x11/xcommon.c: fixed the XShm operations order. * ./plugins/x11/xcommon.c: small optimizations. * ./plugins/x11/xcommon.c: removed unused code. * ./plugins/x11/xcommon.c: your old window position and size are now restored when you come out of fullscreen mode. * ./plugins/esd/esd.c: fixed detection of the esd plugin. * ./plugins/mpeg_system/input_ts.c: fixed the ts plugin's input type detection. * ./plugins/x11/xcommon.c: fixed the BadCursor error in the x11 and xvideo plugins. For real this time (unlike my 2001/08/03 fix :p). * ./plugins/filter/wall.c: made the wall filter work a bit better. It now spawns a 3x2 mosaic, but this will eventually be configurable, à la `--filter wall:3x3'. * ./plugins/arts/arts.c: fixed the aRts audio output plugin. * ./configure.in: removed duplicate function checks. * ./Makefile.modules: added extra magic so that the module Makefiles are now ridiculously simple. And I mean *simple*. Check it! This will make a possible switch to full autoconf/automake a lot easier. * ./include/modules_inner.h: added the vlc version name to the plugin symbols, to be sure we only load plugins with the same version number. A nasty consequence is that you need to rebuild your tree after midnight if you are using a CVS tree :-) * ./include/modules_export.h: got rid of modules_export.h by #defining exported functions in the same header as their prototype. * ./include/videolan/vlc.h: added modules_inner.h and other commonly used .h files to common.h so there are less and less files to include, and renamed common.h to . * ./src/misc/tests.c: first modifications to the module handling system towards my ultimate goal to get rid of the *_Probe functions. Got rid of TestMethod and TestCPU, as well as src/misc/tests.c. * ./plugins/chroma/yv12_rgb8.c, ./plugins/chroma/yv12_rgb16.c: wrote the chroma plugin handling functions. No YUV functions have been ported yet because it'ls a lot of work, but the core system works, I tried it with a naive yv12->rgb16 plugin (which will disappear when the real functions are ready). * ./plugins/dvd/dvd_summary.c: made a lot of functions one-liners to avoid wasting too many output lines. * ./plugins/dvd/input_dvd.c: fixed a segfault in DVDInit. * ./plugins/gtk/fixfiles.sh: Added a fixfiles.sh script to be run after Glade has generated its C files. * ./plugins/kde/*: did some work on the KDE interface to make it suck a bit less. It still segfaults, but at least it runs and it looks less ugly. * ./plugins/sdl/vout_sdl.c: RGB SDL rendering works again, though in 16bpp only. * ./plugins/vcd/linux_cdrom_tools.c: made this file independent of any vlc structure so that it'll be easily put in a library. Maybe libdvdcss? * ./plugins/vcd/input_vcd.c: fixed VCD date display. * ./plugins/x11/*: merged vout_xvideo.c, vout_x11.c and vout_common.c into xcommon.c. * ./plugins/x11/xcommon.c: wrote non-Shm XVideo output. * ./plugins/x11/xcommon.c: made X11 output work again. Still pretty unstable, only works for 16bpp. * ./po/fr.po: additional french translation. Any taker for the rest? * ./src/video_output/video_output.c: fixed a segfault when the allocated pictures were not direct buffers. * ./share/*: replaced 48x48 .xpm images with 32x32 ones to conform to Debian policy (Closes Debian bug #126939). * ./Makefile: removed the automatic ./configure launch when running `make all' for the first time. * ./plugins/filter/distort.c: --filter distort:ripple (Ok, ok, I promise it's the last one !! :-) * ./configure.in: fixed compilation with dvdcss disabled. * ./configure.in: fixed compilation with plugins disabled. * ./plugins/dvd/input_dvd.c, ./plugins/vcd/input_vcd.c: removed useless variables in the VCD and DVD plugins. * ./plugins/vcd/input_vcd.c: fixed a function which was returning "struct foo" in the VCD plugin. * ./plugins/x11/xcommon.c: fixed the old « XVideo eats more and more CPU » bug I mistakenly reintroduced in my first vout4 commit. * ./src/misc/modules: we now stop at the first ':' when looking for a module name, to easily pass information to the modules. Possible example: --vout sdl:software, implementation of such an option is left as an exercise. * ./plugins/filter/filter.c: merged filter_bob and filter_bob422 into filter_bob. Use --filter bob to deinterlace 422 into 420 as well. * ALL: factorized code common to most filters and the video output, optimized a few filters by aligning data and reading 64 bits at a time. * ./plugins/filter/transform.c, ./plugins/filter/distort.c: two new absolutely useless, CPU-eating, resource-wasting, but fun filters: enjoy `transform', which performs flips and 90° rotations, and `distort', which performs animated image effects (currently only a naive sine wave is implemented). Usage examples: --filter transform:hflip, --filter transform:vflip, --filter transform:90, --filter transform:180, --filter transform:270, --filter distort:wave. * ./plugins/x11/xcommon.c: added missing XSync() in the XVideo plugin. * ./plugins/filter/deinterlace.c: pathetic attempt at a 4:2:2 renderer and deinterlacer, combining the most awful line dropping techniques of both BOB and 422 to 420 downscaling. Don't worry, it should only survive for a couple of days. * ./plugins/filter/wall.c: new stupid plugin: "--filter wall" for split-image playback :-) (will evolve into a real image wall plugin when I have time) * ./plugins/filter/bob.c, ./plugins/filter/invert.c: filter plugins. Not very polished (please don't look at how the dates are calculated!), but worth a try. Use the following flags: "--filter invert" for inverse video, "--filter bob" for BOB deinterlacing * ./src/video_output/vout_pictures.c: buffer choice optimizations - vout4 should eat even less CPU now. * ./src/video_output/video_output.c: fixed aspect ratio handling. * ./src/interface/main.c: additional fixes for OSes with no gettext (thanks to ej0). * ./configure.in: don't try to use gettext if we don't have GNU gettext. This may change in the future though (most GNU software seems to include a local copy of gettext in case the operating system doesn't provide it). * ./debian/rules, ./debian/control: added vlc-arts to the debian package generation. * ./po/ru.po: (very old) russian translation courtesy of Valek Filippov . * ./po/fr.po: fixed a charset issue in the french translation. * ./config.guess, ./config.sub: updated these files from GNU's latest versions. * ./po/vlc.pot: added vlc.pot skeleton for translators. * ./src/interface/intf_channels.c, ./include/keystrokes.h: removed unused files. * ./include/common.h: put common_win32.h back into common.h -- it wasn't that big and we should not multiply header files. * ./src/interface/main.c: added gettext support by Thomas Graf , may be broken on other platforms but we'll only see it when I'm finished with vout 4 :-) * ./src/video_output/*: new video output version 4, featuring direct to YUV buffer decoding, non-ugly subtitle blending, XVideo and SDL video output. * ./plugins/spudec/*: renamed spu_dec to spudec and mad_adec to mad to stay coherent with other plugins. Also, renamed mpeg to mpeg_system. * ./AUTHORS: added jobi. * ./plugins/x11/vout_common.c: factored code common to vout_x11.c and vout_xvideo.c. 0.2.92 Mon, 31 Dec 2001 19:50:40 +0100 * Added a missing call to DecoderError() in mpeg_adec.c. * Fixed a segfault in the aRts plugin. * Fixed a bug in DecoderError. * Next Generation Buffer Manager. * All decoders enter DecoderError() in case of error, even if they haven't allocated all their data. This prevents the input from getting stuck if a decoder has failed its initialization. * Backported lool's fix for the Gtk+ playlist crash. * If $DISPLAY isn't set, don't try to run the Gtk+ interface. * Fixed a segfault in input_dvd.c:DVDInit. * Fixed a PPC compilation issue. * Mouse wheel seek patch for XVideo courtesy of Peter Surda. * Ported to SDL. * Backported a VCD crash fix from the main branch. * Fixed compilation with dvdcss disabled. * Bug fixes in the VCD input. * The SDL plugin now says whether we are using software or hardware YUV in its window title. * Added --with-dll-path option for my automated Win32 package builds. * Initialize SDL before opening the SDL audio output. * Prevent two SDL video outputs or audio outputs to be spawned at the same time to avoid ugly crashes. * TS input: bugfix in DecodePAT and minor optimizations elsewhere. * TS input: we now check that the contents of the PAT has changed before updating it, instead of just relying on its version number. * Disabled broken ALSA audio output. Closes Debian bugs #110869 and #119846. * Fixed build dependencies on libasound2-dev. Closes Debian bug #121057. * Changed configure.in so that libXv_pic is used instead of libXv.a when available. Closes Debian bug #111790. * CPU detection under BeOS. * Fixed XVideo port selection. * Fixed 4:2:2 software rendering. * Removed cruft I forgot in aout_alsa.c. * Minor compile fix under Hurd. * Fixed a potential segfault if the subtitle stream was encountered before the video stream. * Fixed potential compilation issues under eg. BSD/OS. * Fixed unnecessary target remake (recursive make is harmful !). * Fixed a potential BeOS linking issue. * Fixed a minor bug in input.c. * Fixed an issue in Makefile.dep causing to rebuild unnecessary files in the gtk/gnome plugins. * Removed cruft from configure.in. * Fixed major bugs in the PSI decoder. * Fixed possible segfault with --input. * Fix for EOF of ES-only streams. * MPEG-1 aspect ratio patch, courtesy of Vladimir Chernyshov . * Seeking patch for X11, courtesy of Peter Surda . * Fixed a segfault on exit when no fast_memcpy module was found. * Workaround for a bug in the GLIBC dlopen() code. * Fixed win32 compilation. * New libmad plug-in, courtesy of Jean-Paul Saman. We now have sound on iPAQ Familiar Linux. * Borrowed MPlayer's fast memcpy() routines. Best is autodetected, choose "--memcpy " to choose one from c, mmx, mmxext or 3dn. * Added versioned build-dep to libasound2-dev (Closes Debian bug #121057). * Updated Gtk/GNOME interfaces to use "udpstream" instead of "ts". * More checks for GTK headers. * Fixed a crash when pausing. * Fixed numerous bugs in ES selection. * Fixed stupid bug in vout_Manage. It sometimes called SetDSequenceMatrix when there was no valid sequence. * Hopeless fix for the input netlist corruption bug. * Implemented simple BDirectWindow (DMA) support. * DeleteDecoderConfig wasn't freeing (anymore) the packets left in the decoder fifo. This bug was creating an io_vec starving on title change when playing DVDs. * Removed a bug in the Makefile that made the CVS-snapshots building fail. * Added "#include " to include/threads.h. * Removed the mutex the vout and intf thread (were supposed to use) for syncronizing acces to the p_vout->p_sys structure. * Added error checking in pthread wrapper; as a result, intf_msg.h must now be included *before* threads.h. * Changed all files to include intf_msg.h before threads.h; while I was at it, I update the copyright notices. * Removed the obsolete darwin plug-in. * Fixed a deadlock (bug reported by marcari). * Various (sometimes hopeless) fixes to try to improve xvideo stability. * Documentation updates. * Updated man page. * dvd:[@] to avoid device namespace collision under win32. * Fixed a compilation issue under Win32. * Fixed a potential packet corruption in the DVD input. * Changed the protocol version for communication between vlc and vlcs from 12 to 13 (due to change from ts:// to udpstream://) * Big clean-up to allow compiling every module as plugins. * Added bytes_swap.h to provide ntoh() and htol() on Win32. With this change we don't have to link winsock2 with every plugin anymore. This should also give us a slight speed increase. * Added #define WIN32_LEAN_AND_MEAN in threads.h to speed-up compilation on Win32. * Modified ac_downmix_3dn and sse so they compile with the latest gcc for Win32. * Support for libdvdread. * Added "Video" menu hint to debian/*menu (Closes Debian bug #121036). * Major rewrite of the network layer. only supported syntax is: udp[stream]:[//][serveraddr:[serverport]][@[bindaddr][:bindport]] * Don`t use long long, use u64/s64 (int_types.h). * Fixed a stale pointer in mpeg_vdec_Run(). * (Hopefully) fixed the network connect() bug under UNIX. * aRts audio output courtesy of Emmanuel Blindauer . * Fix to the esd plugin when esd-config --cflags is nonempty. * --channels puts gtk/gnome in multi-channel network mode. * The network window of the interface reports the values of the environment variables. * Channels mode excludes vls configuration. * The vlc does not try to bind vls.via.ecp.fr by default when you select channels mode. * Fixed MacOS X 10.1 network input, thanks to Mathias Kretschmer . * Fixed a few crashes due to race conditions in the decoder spawning. * Removed unused code here and there. * Fixed a bug in altivec detection on MacOS X. * It seems that the 'focus' bug under WinME is solved. * Updated the INSTALL-win32.txt file. * The ./configure script is more friendly for Win32 users. * Moved warning message to debug message in spdif pass-through plugin. * Changed a bit the wait time. It works better here, please test. * The default file-translation mode was not being set under win32. * Fixed heap corruption issues in ac3dec (thanks reno). * Fixed a crash when using `--input dvd /dev/dvd' instead of `dvd:/dev/dvd'. * configure should no longer assume AltiVec is supported when it actually isn't with buggy compilers and/or pre-set $CFLAGS. * Commited my little release-howto (only useful to core vlc developers). * Closing Debian bug #119369 which was fixed a while ago. * Decoder modularization. 0.2.91 Mon, 12 Nov 2001 17:14:29 +0100 * Added FAQ. * New --channelserver switch. * Documentation updates. * ipkg script for Familiar Linux 0.5 & bug fix in debian/rules. * Disabled DirectX audio output for the time being. * Added Oct's NSIS installer script. It will probably not work for you, but I need it to build the Win32 auto installer. * Automatic handling of the Channel Server's response in network mode. * GetMACAddress takes the interface defined in the environment variable vlc_iface instead of eth0. * Fixed bug with MPEG audio in TS streams. * Fixed compilation (and quite probably runtime) issues under IA64 due to mixed int/void* casts. * Merged DVD netlist with input netlist to remove duplicated code. * BSD/OS VCD patch, courtesy of Steven M. Schultz . * Win32 network fix. * imdctsse should now compile and work in plugin and under BeOS. * Kludge to have less discontinuity after a zero scr in DVD. * Fixed some win32 64-bit issues. * Fixed some win32 compile issues. * Don't use long long, use u64/s64 (int_types.h). * Move function that translates language codes into country name in src/misc so that every plugin can use it. * Changed the name of a function in dvd_udf.c to fit with the forthcoming libdvdread plugin. * Corrected à long time bug (around 0.2.81 I think), that created a corruption in ifo data. This was the reason why some DVDs that worked with 0.2.80 no longer worked with newer version of vlc. They should work again now. * New --enable-release config option. * Removed deprecated code and structures. * Maybe corrected aspect ratio issue in fullscreen xvideo. * Fixed support for SPU and LPCM streams over network. * Added a new drawer to the control window to support Title / Chapter selection, Subtitle selection, Audiochannel/Language selection, Angle selection. * New --volume option (untested, like usual :). * Reimported Intf_Controller, connected "File/Open/File" to Intf_Controller::file:Open (OS X). * The intf is no longer accessed indirectly from vout_Destroy. * Made it possible to open a File after vlc was started (you can use vlc now without starting it from the command line) under OS X. * Cleaned up playlist handling in Intf_Vlc_Wrapper. * Modified the pf_close kludge in input.c so that we don't segfault when pf_init fails. * Changed chapter selection buttons aspect to try and differentiate them from title selection ones. * Changes to the BeOS interface to remove unwanted volumes from the Disk Menu. Readonly filesystems like NTFS were being incorrectly added. * Do not resample audio output if delta is short enough. * Fixed a segfault on exit under Windows 2000. * Enabled http button in gtk/gnome interface. * Use memalign for aligned data (instead of a greek malloc). * Some optimizations in imdct (all data are now aligned). * SSE downmix now works for windows. * SSE imdct is desactivated for windows (MINGW32 doesn't know how to aligned data). * Fixed '-' input. * New interface for MacOS X, courtesy of Florian G. Pflug. * BeOS interface changes to include menu for Title and chapter navigation. * Improved more "BeOS" CD detection. * VLC FAQ TBU. * Synced dummy_dvdcss with Stef's changes to libdvdcss. * configure now compiles the VCD plugin if linux/cdrom.h is present. * Added VCD input plugin for Linux. * Fixed ATTR_ALIGN configure test. * Fixed compilation problems with OpenBSD. * xvideo.so is now built in by default. Mixing PIC and non-PIC code was not very nice. * Fixed compilation errors in src/interface/main.c when the compiler did not support SSE or 3DNow! inline assembly. * Qt fix in vlc.spec courtesy of Christopher Johnson . * Fixed error reporting on an unknown argument parsing. * Fixed a deadlock in the TS input. * Resizing the video out window in BeOS now retains the scaling. * Tidied up the BeOS code to remove interface messages not required. * Fixed an error in the ts://server[:port][/broadcast] input parsing. * Minor video parser optimization. * SDL now displays an error message on 422 streams. * Chroma 4:2:2 and 4:4:4 support in the decoder. * Fixed bugs in the C YUV transform with 4:2:2 format. * Fixed bugs in RPM spec files. * Fixed a bug in configure where ix86 machines were improperly detected. 0.2.90 Wed, 10 Oct 2001 15:00:29 +0200 * XVideo module now compiled as built-in for Debian packages, to avoid PIC and non-PIC code collision (Closes Debian bug #111790). * MacOS X port : replaced -traditional-cpp (deprecated) with -no-cpp-precomp. * MacOS X port : native QuickTime video output, courtesy of Florian G. Pflug . Use it with -I macosx_qt. * Fixed bugs in the altivec detection, courtesy of Michel Lanners . * Added HTTP url drop (from a WWW browser) to the gtk/gnome interface. * Added User-Agent header in the HTTP input. * Fixed an input segfault which occured using ES input. * Enhanced --with-tuning. * Added an endianness check for cross-compilations. * We now check for sys/times.h. * Repaired dummy input broken yesterday. * Minor ShowBits() optimization. * Fixed a bug in vlc.spec. * New --disable-plugins option ; make all plug-ins built-in. * Changes to ensure the BeOS compile still works. * Added HTTP virtualhost support in the HTTP input. * Enabled mouse clicks in the GGI plugin. * Fixed a warning in input_es.c. * Don't connect on INADDR_ANY, patch courtesy of Mathias Kretschmer . * Cleaned up sam's mess with input's pf_open and pf_close (not completely). * With -vvv modules now show up their scores. * HTTP input support. * Borrowed Mandrakesoft's vlc.spec and libdvdcss.spec. * New configure option --with-tuning=[arch], extending --enable-pentiumpro ; for Pentium, use --with-tuning=pentium, for PowerPC 604 use --with-tuning=604, and so on. * Dramatically improve compilation time, with a negligible performance tradeoff. * Removed -march=pentiumpro ; should now work on pentium-class machines. * Removed --enable-stats configuration directive. Stats are now activated at runtime with --stats. * New intf_StatMsg() call. * Vout picture heap is now 8 pictures instead of 5 (better synchro). * Tremendous enhancements in statistics display. * Better capabilities handling. * Error checks in debug mode : pthread ERRORCHECK_MUTEX and MALLOC_CHECK_=2. * "added support for an unusual construct at the start of some slices", says walken :-). * In spdif ac3 is selected by default * Video output grows to respect acpect ratio instead of shrinking (not in x11 because it takes cpu to resize a picture). * Disable dpms in xvideo. * Better handling of the buffer of the sound driver to try to remove sratches in spdif. * Fix bad dates in ac3 spdif "decoder" (playing with the bit stream is very funny). * Thanks to Stef for his ideas, Meuuh for his bit stream, and Sam for his trolls :) * Fixed bugs in the MacOS X port. * Faster configure script and as-yet untested Darwin patches. * Test for Altivec C extensions. * If memalign isn't available, fall back on valloc. * Fixed a stupid mistake in NormScan(). * By default, use the real size of the stream for the video output size. * Altivec IDCT and motion compensation, courtesy of Michel Lespinasse for mpeg2dec (untested). * Fixed many alignment issues. * Miscellaneous updates to configure, especially for cross-compilation. * Fixed the BeOS slider overflow problem. * Corrected BeOS Slider and button status behaviour. * Simplified Code in the vout_beos ready for another developer to implement more advanced video output. * Fixed typos, courtesy of Michel Lanners . * Fixed a netlist packet leak in demuxPSI (Mark Gritter ). * Removed the nuts message "unable to allocate memory" when the netlist got empty. * Various fixes for GCC 3.0. * Reworked jlj's patch for field pictures. * Fixed numerous bugs with the Altivec IDCT (still not compiling). * MPEG audio emphasis fix, courtesy of Matthieu Lochegnies . * ac3dec uninitialized data structure fix, courtesy of Damian Ivereigh . * Altivec IDCT and motion compensation, based on Paul Mackerras's mpeg2dec. * Local minor optimizations in IDCT. * Removed a hopeless kludge in input_clock.c. * Fixed a problem with field streams not working with new video decoder. * IP Multicast support, courtesy of Mathias Kretschmer . * Removed O_NONBLCK in aout_Play because we don't use it and some drivers (e.g. esssolo1 have problems with this) ; * Added warning messages. * Fixed build dependencies for architectures not supporting libasound2 (Closes Debian bug #109722). * Install doesn't explode if libdvdcss hasn't been compiled. * Attempt to fix the SDL detection under *BSD. * Removed /usr/local/include, because it is unsafe in a cross-compilation environment. * The win32 port is once again using msvcrt.dll instead of msvcrt40.dll. * Fixed a synchro bug (typo) in video_output.c. * Added documentation to use VLC as a netscape plug-in and do some (buggy) web streaming. * Totally rewrote the video decoder (inspired by walken's mpeg2dec), implying - performance boost ; - fixed the "Dual Prime Arithmetic" bug ; - 3DNow! motion compensation module. * AC3dec statistics do not show up with --enable-stats, because I doubt they're understandable by a normal human being, and they pollute the output. * Minor changes to the (non-working) ncurses interface. * Fixed a packet leak in DemuxPSI. * Added gnome.h check and cleaned the error messages in the configure script. * Tiny small optim in LPCM decoder. 0.2.83 Wed, 22 Aug 2001 15:18:01 +0200 * Split ChangeLog into ChangeLog and ChangeLog.libdvdcss. * Added --xvadaptor flag to select the XVideo adaptor to use. * Added support in ./configure for the cprof profiler. * Activated -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 on all platforms, fixes issues under Solaris and QNX. * Additional checks for SSE-specific (non-MMXEXT) instructions, as reported in lucky.openbsd.misc. * GNU/Hurd configuration and compilation fixes. * Fixed a crash in subtitle rendering. * Activated old crappy subtitle rendering in overlay mode (ugly but probably better than having no subtitles at all). * Added proper Conflicts: rules in debian/control. * configure.in fixes for BSD/OS. * Added vlc:loop playlist command to go back at the beginning. Usage: vlc file1.mpeg file2.mpeg ... fileN.mpeg vlc:loop * Fixed a bug in the gtk interface which caused vlc to go amok after having met a zero-sized area. * 'snapshot*' rules do not depend on 'clean', and don't use /tmp anymore. 0.2.82 Tue, 7 Aug 2001 12:39:16 +0200 * Got Makefile to launch ./configure almost properly. $(MAKECMDGOALS) rules ! * Various debian scripts fixes. * Added -lmsvcrt40 to the win32 flags for proper execution under Wine. * Fixed broken soname setting under Solaris (and OS X, sort of). * Made the illegal instruction report more explicit. * Fixed the sdl video output plugin that was broken 2 days ago. * Tidied the snapshot-* Makefile rules. * Tidied the modules Makefiles. * Removed useless stuff in the debian/ directory. * Removed the "make all" kludge in the Makefile.opts rule. I hope this patch is harmless on all systems. * Added a dummy libdvdcss so that the DVD plugin can be used without libdvdcss. It will try to dlopen() libdvdcss at runtime, though, and will use the dummy functions only if it couldn't find a valid libdvdcss. This is probably only useful to package maintainers. * Made the remote command plugin usable even with no stream. * Fixed a deadlock in the remote command plugin. * Fixed a deadlock in the SPU decoder. * Minor bug fix to aout_directx.c. * Big rewrite of the DirectX audio plugin. The audio output is now (almost) perfect on Win32. * Fixed a bug in ac3dec_CreateThread() in ac3_decoder_thread. * On Win32, open() will now open files in binary mode by default. * A few minor changes to vout_xvideo.c. * Fixed a segfault in yuv_End() in video_yuvmmx.c. * Fixed the "Gdk-ERROR **: BadCursor" bug in the x11 and xvideo plugins. * Fixed a segfault in SetBufferPicture() in video_output.c. * Fixed a segfault in PSEnd in input_ps.c. * The video decoder thread is now also reniced to a lower priority on Win32 (like in the Linux version). This slightly increases the responsiveness of vlc. * Modified input_dvd so you can now go directly to the selected chapter when you change the title. * Implemented the Probe function in the Xvideo plugin. Xvideo is now the default video output plugin when it is supported. * Now use SDL_CFLAGS for searching SDL/SDL.h. * Don't miserably die in `make` when ./configure hasn't be run. * Fixed a bug when compiling KDE plug-in without Qt plug-in. * Now taking into account $KDEDIR. * Made SDL configure error messages more explicit. * --disable-sdl is now correctly taken into account. * Changed the order of evaluation of sdl-config and sdl11-config. * Finally fixed SDL*/SDL.h check. * VC++/Intel compiler fixes by Jon Lech Johansen . * Better gtk-config detection. * Removed duplicate checks in configure.in. * Fixed a typo in vlc.spec. 0.2.81 Sat, 28 Jul 2001 04:13:57 +0200 * Removed useless variables in configure.in which caused all subsequent compilation tests to fail. * Additional fixes to the sdl-config detection. * Added a make uninstall rule. * New --with-dvdcss flag. * Fixed a bug in aout spdif with dolby stereo (use of obsolete PTS). * Format asm functions for gcc, fixed the segfaults with imdct_sse. * Now using gcc -pipe. * (Hopefully) fixed the #@!$ field pictures bug. * Fixed the MMX YUV plugin issues with gcc 2.96 and 3.0. * Updated TODO, cosmetic changes. * Now use sdl-config for SDL. * Fixed a stupid bug in buffer management with field pictures. * Fixed a reinit bug after a discontinuity - such as seek(). * The spdif audio output won't kill itself anymore at the beginning. * New and theoretically better Win32 pthread implementation. * dvd_ifo.c now takes into account error messages from UDFFindFile. * Fixed the "quit" event handling in directx/vout_events.c. * Temporarily disabled aout_Probe() in aout_SDL (libSDL bug). * ncurses compilation fix by Michael Mondragon . * Fix for large inline functions and gcc 3.0. * Fixed the gnome plugin so that it does not include gtk headers. * Tuned constants, since it seems to make people happy. * Fixed the "paused movie won't restart" bug. * Removed the outdated generic decoder. * Rewrote the video decoder so that it can use multiple processors (--smp). * Fixed a bug in the video decoder initialization. * Grayscale mode now turns off chroma IDCT decoding. * Kludged so that times displayed in the scrollbar are finally correct for MPEG-2 streams. * FreeBSD compilation fix by Øyvind Kolbu . * QNX RTOS plug-in by Jon Lech Johansen . * Added IDEALX developer documentation in doc/. * Reactivated SDL parachute in non-debug mode (memory leak otherwise). * Fixed GetChunk for chunks < 4 bytes. * The Win98 DVD input is finally working. * Put a readv() function in input_iovec.h, the input_es plugin now compiles (Win32). * Modified input_ts to use readv() in input_iovec.h (Win32). * Fixed an initialisation bug in vout_directx.c. * Right clicking on the mouse displays the navigation menu (DirectX plugin). * Fixed audio/video synchro bug with esd, should fix buggy sound due to 44100-48000 Hz conversions. * The Win32 GetMessage function has been isolated in a thread. This has been done because this function can block the thread. Thanks to this change, you can now move your window without any video and audio interruption. * Plugins are now compiled in plugins/* and libraries in lib/*. * The KDE UI compiles again but does not work yet. * ALSA plugin message corrections. * Calculation modules can now be calledwith a shorter name (eg. '--downmix mmx' instead of '--downmix downmixmmx'). * Fixed insane verbosity of the SDL plugin. * Fixed the segfault in vout_UnloadFont. * The Xvideo plugin now closes the video window when it XVideoGetPort fails in vout_Create. * Fixed alignement in imdct asm functions. * 16 byte alignement for data (needed for SSE). * Optimization in SSE downmix. * Probably fixed the "X eats more and more CPU" bug. Please test. * mingw32 cross-compilation issue fixed. * Small optimization in vpar_blocks.c, sparing a few memset() calls. * Additional error checking in vout_sdl.c. * Minor manpage fix, conforming to Debian policy version 3.5.5.0 (Closes Debian bug #99561). * Portablility fix: We now control the name to be used in the assembler code for a C function or variable. * Reenabled all the accelerated modules on Win32. * Bugfix for chapters change in DVD. * A few bug fixes for the directx plugin. * Removed the custom usleep function for win32 as we don't really need this accuracy, and it was eating cpu resources. * Elementary Stream input plugin (use it with --input es). Only works with video streams at the moment. * Added command line option '--stdout ' which redirects stdout and stderr to the specified file. This option should mainly be useful on Win32. * On Win32, vlc now has an icon associated to the .exe file, and is a full GUI application (you don't have this annoying dos command box anymore) * Added INSTALL-win32.txt for specific details to the Win32 port. * Compile fix for newer versions of MacOS X by Colin Simmonds . * Win32 network support by Boris Dorès . * Fixed an alignment issue in the ifo parser. The Matrix problem should be solved. * Minor cosmetic fixes and warning removals here and there. * FreeBSD (and probably QNX) shared memory handling fix. * Unrolled two loops in dvd_netlist.c to prevent message flooding. * DVD input stuttering fix by Jon Lech Johansen. * Removed a lock that caused late frames in DVDRead. * Added gprof profiling support with --enable-profiling. * DirectX enhancements by Gildas Bazin, such as software rendering. * Another failed attempt at profiling vlc under Linux: ported the threads API to GNU Pth. Activate with --enable-pth. It doesn't seem to spawn new threads for me, maybe someone will have better luck. * Makefile optimizations. * Automatic build of libdvdcss if not found. * The DVD netlist no longer stops when the fifo is empty ; it just waits until there are free vectors again. * Exported the CSS part of the dvd plugin into a library. See ChangeLog.libdvdcss for a separate changelog. * Slight modification in input_dvd since Getiovec wasn't at the right place. * Send escape packet when changing title, not to be stuck in some decoder. * The position in the title is now reset when we change title to prevent a title from being unavailable because we're stuck at the end. * Fixed a bug with 1-chapter-long titles that displayed chapter 0. * Added a _temporary_ field in p_main to know whether the audio stream is AC3 (ugly). It allows a vlc launched in spdif mode to play mpeg or lpcm audio. * Cleaned the title property messages to get rid of the ugly stars. * Added LPCM support. It should work with stereo LPCM. * Fixed a warning when compiling main.c. * Checked that OS supports SSE instructions on PIIIs (to avoid illegal hardware instructions on Linux 2.2.x). * Fixed a bug in synchro reinitialization: we no longer have a shift each time we restart the synchro (for SCR discontinuity for instance) * In DVD mode, we reinit the synchro only if the SCR are not continuous (instead of each cell). * Tried to improve AC3 spdif to prevent desynchronization. * Lots of DirectX plugin fixes by Gildas Bazin. * Compilation fix in message queue mode. * Another FreeBSD compilation fix. * SDL compilation fix for FreeBSD. * Fixed compilation of motion modules as plugins. * Applied old FreeBSD patch for dvd input by German Tischler. * Found what was causing the slowdowns: a namespace collision. Put all plugins into builtins again. * Put most builtins in plugins again due to performances issues. * Fixed the painfully slow build process (at last!). * Added new dummy input plugin. 0.2.80 Tue, 5 Jun 2001 04:41:06 +0200 * BeOS interface compilation fix by Rene Gollent. * DirectX plugin compilation fix by Gildas Bazin. * Removed %ebx spill in the iMDCT plugins. * Change to the set out of the BeOS code to allow more logical updates. * Moved modules_builtins.h.in into src/misc. Please remove include/modules_builtins.h in your local tree. * DirectX plugin by Gildas Bazin . * Fixed a double malloc/free bug in DVDRead. * Win32 plugin support by Gildas Bazin . * BeOS fixes. renamed iovec.h to input_iovec.h because of namespace issues. * Miscellaneous Win32 fixes by Gildas Bazin . * Win2000 DVD input by Jon Lech Johansen . * Applied patch from Jon Lech Johansen to compile vlc with MS and Intel C/C++ compilers. * Updated the gtk/gnome interface to work in network mode. * Fixed some bugs in interface (language menus in ts, misnamed fields). * Play/Stop work in network mode to start/stop decoding of the stream. * Fixed the BeOS compile typo. * The ALSA plugin is back. * A gift for Gildas: plugins don't rely on backlinking any more. * Changes and bugfixes to make network work in VLAN Broadcast mode. * Bugfix in the interface to access the network specific features. * Some base of synchro in ac3 spdif. * Fixed a bug with Previous chapter button in gnome. * Added a wrapper for readv() on platforms which don't support it. * Win32 compilation fixes, esp. the MAC retrieval. * Fixed a warning for *BSD compilation. * Patch by Eugenio so that the OS X interface and video output handle the aout and vout banks. * Applied Eugenio's fix to the DVDioctl driver. I didn't test it, but it should not hang the kernel anymore. * Ported most dvd_ioctl.c functions to the DVDioctl driver: ReportAgid, ReportChallenge, ReportKey1, ReportASF, InvalidateAgid, SendChallenge, SendKey2. They should comply with the "Mt. Fuji Commands for Multimedia Devices" paper. * Unification of gnome/gtk intefaces: now all the files are in plugin/gtk. * Updated BeOS interface with new changes for playlist management. * More cleanings in gtk interface. * The dvd plugin reads again blocks of 32 sectors to gain speed. * Added two functions which retrieve the MAC Address under Windows. * 3D Now! imdct. * We now do pthread detection for FreeBSD like the XMMS guys do. It works even better. * FreeBSD pthread fixes. * AC3 IMDCT and downmix functions are now in plugins, --imdct and --downmix options added. * Bugfixes, cleanings in gtk. * Initialization bugfixes in input_dvd. * Added a b_stopped flag to interface playlist to have a stop function in interface plugins. * Updated the Gtk+ interface so that it has the same features as the Gnome one. * Beginning of SSE/3DNow! support for imdct and downmix. * Ported alsa interface for alsa 0.9beta * Fixed a deadlock in spudec. * Added SPU cropping. * Gnome interface segfault fix. * BeOS interface segfault fix by Rene Gollent . * Fixed an aspect ratio issue in the SPU decoder, and optimized the SPU renderer. * Speed optimization in the handling of the unusual ephemer DVD subtitles. * Little optimization to bozo's UnalignedShowBits fix. * Race fix in the packet cache by Jon Lech Johansen . * Fixed a bug in UnalignedShowBits that makes some unaligned streams not wotk correctly (for instance VLS' generated TS streams) * Added support for some terribly braindead DVD subtitles in Kenshin which do not have a "stop display" command. Anime fans rejoice! * Fixed the BeOS interface to use p_aout_bank instead of p_main->p_aout. * Coding-style butchery (mostly tabs). * Changed the level arg in intf_WarnMsg so that it makes more sense. * Beginning of the backport of Gnome to Gtk. * Improved ac3 spdif output ( and made it work again :)). * Added p_input->stream.p_selected_area->i_tell in input TS so that the slider work with Transport Stream files. * Moved b_fullscreen from p_vout->p_sys to p_vout and unified way of toggling fullscreen. * Tuned the Gnome interface appearance, added a Preferences window and a Jump window, added Oct's playlist. * Fixed a few warnings with gcc 3.0. * aout and vout are now allocated in banks, making it possible to have several of them at the same time. * configure now checks for MMX and MMX EXT support in the assembler. * Removed all MMX code from the main program and moved it to the existing idct modules (Closes: Debian bug #96036). * KDE interface. * FreeBSD CSS decryption support. * Fixed a segfault in TS input (psi packets with adaptation field). * Corrected vlc-howto.sgml thanks to Arnaud Gomes-do-Vale . * Fixed a remaining buffer overflow in the Gnome interface and applied the patches to the Gtk+ interface. * Fixed a segfault in the SPU decoder initialization. * Mandatory step for video output IV and the audio output quality fix: the output threads are now spawned when a decoder needs one, so it can decide the audio frequency or the video window size. * Fixed a few buffer overflows in the Gnome interface. * The module bank is now a global variable. The video output bank and the audio output bank might follow (when they exist). * Coding style and organization fixes to the spdif decoder. * autoconf and Makefile changes by Arnaud Gomes-do-Vale . * DVD title change no longer restarts the input. * BeOS crash fix by Wade Majors . * Slight modification in ClockManageRef: after a synchro reinit, we still do the mwait and re-init last-cr. * New audio output using direct AC3 pass-thru. * Fix for a buffer overflow in the Gnome interface by Shane Harper . * DVD chapter change fixed. * Fixed a bug in TS input, which should be much smoother now. 0.2.73 Sat, 28 Apr 2001 07:02:35 +0200 * Removed debug instructions in the audio output. * Coding style fixes here and there. * Miscellaneous QNX compile fixes. * Changed --enable-debug into --enable-trace. * Beginning of the mingw32 port by Gildas Bazin . * Changed broadcast handling. * Added a vlc-howto in sgml format in the doc directory. * Fixed the continuous 'seeking position' bug in network mode. * Support for `ts://foo:42' style input source. * rc interface plugin for vlc control through /dev/stdin courtesy of Peter Surda . * Misc XVideo fixes (aspect ratio, mouse pointer, blue areas). * AC3 decoder enhancements. * Fixed an alignment issue in the bitstream callback. * Got rid of asprintf. * Better angle handling (on the fly selection). * Bugfixes in CSS. * Various changes and bugfixes in the Gnome interface. * XVideo fullscreen mode by David Kennedy . * X11 fullscreen mode by David Kennedy . * Fixed build process when no plugins or no builtins were chosen. * Makefile changes to get around MacOS X's brain-damaged gcc. * FreeBSD configure and Makefile patches, courtesy of Espen Skoglund . * Cosmetic change in css decryption. * Added basic angle support. * Corrected some bugs in gnome interface: language menu are now synchronized and menus have less chances to change when opened. * Network channel change is now available again. * Fixed optional PES size bug, courtesy of Steve Brown . * MacOS X icon is now correctly added to the app. * Fixed a compilation issue in the DVDioctl driver. * Added a call to ranlib after a built-in module compilation. 0.2.72 Mon, 16 Apr 2001 14:33:53 +0200 * New improved packet allocator. * Additional Makefile cleaning for built-in modules. * Fixed Makefile for Solaris target. * Fixed the 0.2.71 IFO parsing bug. * All Debian packages are now lintian-clean. * Fixed XVideo plugin linking. * Updated TODO list. * Built-in modules support almost finished. * A few Makefile fixes for BeOS. * XVideo patches by Shane Harper . * Beginning of the built-in modules support. * Got rid of the sleep() hack in beos_specific.cpp. * Fixed a segfault when launched without argument under Darwin. * Fix for Darwin program path handling. 0.2.71 Fri, 13 Apr 2001 08:13:26 +0200 * Merged 6 months of CVS logs to the ChangeLog file. * Fixed a lintian error in debian/rules. * XVideo resize patch by Shane Harper . * Added udf fix by Billy Biggs. * Added checks in dvd_ifo. * Cleanings in gnome interface : the interface should depend on the input method. * Intf: TS streams in menu * TS input: only one audio & spu ES selected at a time * Removed the build of the vlc app from the install target. * Added an icon to the MacOS X vlc. * "make vlc.app" now correctly updates vlc.app * Fixed BeOS menu problem. * Added a field to p_input->stream to inform the interface of a stream. change (useful in network mode). * Added error checks in dvd input. * Changed the way ifo are read. * Fixed a bug in area management. * Fixed a warning in netutils.c. * Created darwin_specific.c to store the program path at boot time. (XXX: check that it didn't break the OS X port) * Removed redefinition of NULL in src/audio_decoder/adec_layer?.c. * Updated icons. * BeOS icon and MIME resources courtesy of Wade Majors . * Updated Makefile.in to make vlc.app by default on Mac OS X & Darwin, added clean code for it as well. * Hacked main.c to disregard argv[1] when compiled for OSX & run as a full app (ie., double clicked and not launched from command line). * Cleaned up debug spew left in modules.c and video_text.c. * Created macosx_common.h in plugins/macosx/ to hold common stuff. * Updated & cleaned up intf_macosx.c and vout_macosx.c - added Open menu function support and a no-frills About box. * Fixed icons location and Debian desktop menus. * Fixed a memory leak in gtk_callbacks.c (thanks to Dae). * Disabled message queue by default. * A few other changes in the CSS code, the BeOS issues should be fixed. * Corrected an awful typo in the version name. * Removed deprecated stuff from config.h. * Fixed the whitespace/tab issues in the Makefile. * X and Xv output: added autohide cursor as in SDL. * X and Xv: keys 1 to 0 change channel. * SDL: keys F1 to F10 change channel. * Ported the 0.2.0's channel changing functions. * Fixed the lock segfault bug with some compilers. 0.2.70 Sat, 7 Apr 2001 05:52:00 +0200 * Fixed headers for FreeBSD compilation. * Fixed debian/rules for non-x86 packages (Closes: Debian bug #88583). * Deleted BBitmap[0] directly after overlay creation as no longer needed as overlay now owns Bits() * Fixed MPEG-1 mux_rate parsing. * Fixed MPEG-1 stuffing. * Don't create BBitmap drawing thread if using overlays * Changes to BeOS interface with file selection support * Fixed a boolean_t/int mix. * Increased FIFO_SIZE. * Fixed all alignment issues * Networked TS input * Working menus for run-time audio/spu/title/chapter selection with gtk interface. * Port of the interface menus to gnome plugin. * Gtk playlist * Tried to fix the "stream jumps at will" bug. * Fixed most of the bugs in gnome interface menus * Added radio checks in menu items. * Bug fixes and enhancements in the Gtk+/Gnome interfaces. * Borrowed config.guess and config.sub from SDL [MacOS X port] ; * Changed files so that the MacOS X port compiles & runs [MacOS X port] ; * If SDL/GTK/DSP is not available, don't compile the associated module. * Gtk+ interface: fixed a precision issue in the scale. * Qt interface: somebody pop up us the menu!! * Fixed Debian sparc build for real (Closes: Debian bug #89285). * vlc core compiles under QNX RTOS. Now if anyone feels like tidying it and writing output and interface plugins... * Split audio output into several separate files to make it easier to debug. Removed a few redundancies as well. * Support for Darwin CoreAudio, courtesy of Colin Delacroix [MacOS X port] ; * Added warnings for ac3 mantissa (we still have problems with AC3 on MacOS X) ; * Renamed WriteResource to avoid a namespace clash with Darwin's WriteResource. * Compile Darwin module by default on Darwin system. [MacOS X port] * Use $QTDIR for the qt module ; * SDL fixes and enhancements by Shane Harper * Header cleaning: filled all empty authors fields, added CVS $Id stuff. * Fixes to aout_darwin.c by Colin Delacroix . * Fixes to configure.in, Makefile.in and main.c (Altivec detection) by Eugenio Jarosiewicz . * Added a SYNCHRO_START in DVDRead for each cell change to fix multi-angle streams * Changed seek function to prevent jump-at-will and to remove two bugs in sector computing. * Initialize some values in netlist (payload_discard wasn't which caused frame dropping) * Come back of multi-sector read which should make reading faster * Language & Inteface support for BeOS interface * XVideo plugin courtesy of Shane Harper * Makefile.in and configure.in fixes by Nilmoni Deb * A few syntax fixes in the plain X11 plugin * Various bug fixes in dvd_netlist. Some bugs seem to remain though. * New function input_ToggleES for interaction with interface. * Changes in gnome interface : navigation menus are now splited, there are radio item in menus and the code should be better. * First step for dvd_ifo rewritting. Now allocation/disallocation is being done as it has to be. * Fixed a bug in title management that make dvd like Seven work. * vout_beos now uses double buffering for YCbCr overlay. This (for some reason) improves audio/video sync * Fixes for the Qt plugin compilation under Debian * Heavy butchering in the CSS and DVD ioctl code to put all architecture- dependent code in dvd_ioctl.c * Added almost fully-functional /dev/dvd driver for MacOS X in extras/DVDioctl. * Fall back to one-packet-once reading in dvd input since multi-block seems to have a bug that make the vlc crash on title/audio/spu change. I hope that this bug will be fixed soon for the performance is poorer now * Add-ons and changes in gnome interface: o menu subdivision is done only if there are over 20 items, o in DVD mode next/prev apply to title, o in DVD mode, added a box with button to navigate through chapters. * Additional enhancements to the OS X DVD ioctl module * Big cleaning of the BeOS DVD ioctl code, got rid of all Linuxisms * Compilation fixes for the BeOS DVD ioctls * XVideo plugin enhancements by Shane Harper * Added the GNU getopt library, which gets compiled in when getopt_long isn't available on the desired platform. * Replaced the `--warning' flag with the standard cumulative `-v' flag. `-v' is like `--warning 3', and `-vvvv' is like `--warning 0' (`--warning' is still valid for those used to it) * Cleaning in configure.in and Makefile.in, the Solaris port now builds and runs properly. * Code cleanup: removed a few tabulations. * Fixed inline asm routines to remove all read/write operands. * Added to most files to prevent warnings under FreeBSD. * Added "break;" after "default:" in case switches to prevent warnings when compiling with GCC 3.0pre. * Sync MOSX dev/CVS tree : code support for MacOS X audio, video and interface (courtesy of Eugenio Jarosiewicz & Colin Delacroix) ; * Cleaning code and a small fix to make quit work on OSX * Disable x11 plugin if X11 headers are not found. * Misc fixes in the DVD input. * Fixed CSS authentication under Linux. * Playlist now refreshes when a file is opened. * XVideo plugin background is now black instead of white. 0.2.63 Mon, 5 Mar 2001 00:41:16 +0100 * Got rid of the CONTRIBUTORS list, and switched AUTHORS to a linux-kernel like author list. * Updated TODO list. * Fixed a segfault in the BeOS interface when --noaudio was specified. * Title and Chapter selection in the Gnome and Gtk+ interfaces. * Fixed a bug in audio selection * Tried to fix an issue in size computing. * Commited BeOS changes by Richard Shepherd and Tony Castley. * Added boolean_t b_YCbr to vout_thread_s structure to flag YUV-YCbCr decoding needed instead of YUV-RGB * Will be removed later when video_output.c rewritten * vout_CreateThread() initialises b_YCbr to zero * New BeOS video plugin that supports hardware overlays and new MediaPlayer compatible interface * Added YUV-YCbCr transforms * Fixed bugs in title/chapter handling once more, especially for size detection and location of main movie. * Support for multitrack DVD : now the stream is given to input as it has to be ; however, all the tracks are displayed one after the other ; I think we need to decode navigation ES to choose the track * Fixed behaviour at end of device. * Added DVD/VCD button and menu for quick DVD device selection to the Gnome and Gtk+ interfaces, so that vlc can play a DVD even when launched from a GUI. * Added debian/* files to help generating CSS-enabled non-US packages, and changed plugins/dvd/* to reflect this change. * Added .xpm icons (fixes lintian warnings). * --help output and manpage are now in sync (Closes Debian bug #87478). * Fixed Build-dpends entry in debian/control (Closes Debian bug #83707). * Completely changed title and chapter initialization. Now we have real title units. * Fixed size for a majority of DVD. * More consistency in the p_input->stream management. * Made input_SelectES() and input_UnselectES() not block the input thread for a long time. * Changed debian/control to fix Debian bug #83707 * Added a --disable-css configure option * Moved some code here and there in the DVD plugin to make it easier for me to build the Debian CSS-free packages. * Fixed miscellaneous alignment problems (alpha/sparc ports) ; * Added a fps display when toggling 'i' ; * Fixed a bug in the video parser where one picture buffer was not released at quit time ; * Broke the mux_rate calculation, but hey guys ! it was already broken and nobody noticed it. * New function for DVD reading, that is able to read multiple blocks (I've chosen 32 now), that doesn't use any memcpy anymore and is also much faster. It is ready now for cell positioning in multi-angle DVD (to come soon). * DVD specific netlist adapted to 2048 bytes long blocks that contain several data_packets. * Modification in mpeg_system.c to use p_payload_start instead of p_buffer (necessary for DVD plugin). It does not break other plugins since they set p_payload_start to p_buffer * New field i_read_once in input_thread_s to be able to read more than the TS related 7 packets ; i_read_once is set to INPUT_READ_ONCE by defaults but plugins can change it during initialisation. * Bug fix with frequential downmix * Additional optimizations to the subtitle decoder * The GGI video output should now be faster. Also, right-mouse-clicking works in GGI mode as well. * Optimizations done to the SPU decoder. Now the RLE is expanded at decoding time, not rendering time. The main loop in vout_RenderSPU is now 20 lines long. * The Gtk+ interface is now built as a Debian package as well. The Gnome package depends on it because of the icon and menu entry. * Added an intf_WarnHexDump() function to do raw hexadecimal dumps of memory areas. For debugging purposes or for real men, as you wish. * Lots of tidying in dvd_ioctl.c, a few comments added. * Better error handling in the subpicture decoder. * Tidied video_spu.c. More to come later. * Fixed subtitle displaying. Will soon work in overlay mode as well. * Disabled slice-level resynchro since it's probably buggy. * Fixed a structural major bug in the macroblock structure management. * Added debug messages. * Fixed a compile problem in debug mode. * Added functions and hooks to display dates instead of off_t. * Added a 'd' keystroke to dump the stream contents (for debugging purposes). * New ES detection based on .ifo for DVD module. It might fail (I have found one DVD for which ifo seems false). * Title and chapter selection on the command line (see -t and -T options) It will allow to watch some DVD that went through menus by default. * Beginning of menus in gnome interface. * Fix bug in ac3dec for mono streams * BeOS: new video output method, the vlc now uses BBitmap instead of BDirectWindow (better performances) * BeOS: added resizing * BeOS: added beta support for overlay * Added a plain Gtk+ port of the Gnome interface, for the gnome-impaired people. Gtk+ is now compiled by default, while Gnome isn't (you will have to add --enable-gnome when running configure) * Replaced -lcurses with -lncurses in configure.in. * Added DemuxPSI, DecodePAT and DecodePMT. Never tested which streams where PAT or PMT are splitted in more than one section. 0.2.62 Fri, 2 Mar 2001 17:32:24 +0100 * DVD plugin is still non-functional when you don't have DVD ioctls, but at least it compiles under BeOS as well. * Minor cosmetic changes here and there. * Added the BeOS code for vlc_mutex_destroy() and vlc_cond_destroy() * Minor optimizations in the video decoder. * Move ac3 globals variables into structures * Fixed a bash-ism in configure.in * Fixed a segfault in input.c when no input plugin was found for a given file. * Fixed a deadlock in the Gnome interface. Next time I'll initialize my mutexes, I promise. * Added Oct to the authors list in intf_gnome.glade :) * Second step in area management ; everything is in place now to have title handling; it is coming :) * Ported Glide and MGA plugins to the new module API. MGA never worked, so this didn't make it work better. * Started thinking about built-in modules, and added some code to make it easier eventually. * Added Oct in the AUTHORS file. * Fixed a mistake in configure.in. * All your base are belong to us. * Fixed a bug in src/misc/modules which prevented loading modules when launched from the Tracker. * Fixed a similar bug in src/video_output/video_text.c. * BeOS CSS support, thanks to Markus Kuespert who ported the Linux DVD ioctls. We can now read encrypted DVDs under BeOS ! Woohoo. * First serie of changes in DVD module for the forthcoming interface menus. There is a new capability in input type modules for setting the attributes of a new area. It is set to NULL for PS and TS plugins. It should be called for every title change, chapter change, audio mode change or spu channel change. * Kludge of the kludge, removing an oddity in YUV initialisation, and activating YUV overlay on startup whenever hardware acceleration is available. Thanks for bearing with us, stay tuned. * mux_rate parsing. * Changed video decoder's error messages into warnings. * Add dither fix * Drag and drop support under BeOS. * Change in the code to detect beginning of movie. It is much better now but still fails with some DVD for which the movie is not the first Program. * Beginning of ideas to handle chapters and ES selection * configure.in and Makefile.in patches for better SDL support and support for $(bindir) $(datadir) and $(libdir) stuff, courtesy of Arkadiusz Miskiewicz * Ported ggi.so to the new modules API. As for the other modules, only the "q" key works. Moreover, VLC doesn't exit cleanly if you close the GGI window. * Deactivated non-working widgets in the Gnome interface. * Added CONTRIBUTORS file. * Ported the framebuffer plugin to the new module API. As for most of the other video output modules, keyboard doesn't work. Except ^C to quit. * UDF filesystem support so that we know the location of the first video related file with 100% reliability (great change that should make DVDs with binaries and extra stuff work with vlc). * Correction of a bug in ifo reading that falsified the adress of video titles. * Changed the method for selecting title at start. It is _not_ reliable though, but it is better than the preceding one. * Tried to fix the BeOS interface and video output. Any BeOS developers listening ? I can't even test that code, it probably wants additional fixing. * Added a workaround in modules.c for broken libc's which happen to truncate filenames in dentry structures when using 64bits offsets. The kind of stuff you only see in RedHats . * Made the SDL error messages a bit more useful. * The Gnome menu is now created when mouse is released, not when it is pressed. It may sound stupid, but it really makes a difference. 0.2.61 Fri, 16 Feb 2001 08:09:59 +0100 * Fixed package building (both RPMs and .debs). * Fixed `make snapshot' rule. * Added some magic to filename detection. To read a DVD you now just need to run 'vlc dvd:/dev/hdc' for instance. Same for file:// URIs. * Fixed a segfault in the slider when no stream was playing. * Made the slider go from 0 to 100 (instead of 99 :) * The vlc now doesn't exit when finished playing. As a side effect of the playlist code being very recent, it continuously loops. * Fixed a segfault in the input thread creation, as well as a possible deadlock. This happened mostly when opening non-existing files. * Created input_SetStatus to do input_SetRate's job. input_SetRate will be used to set an arbitrary rate, for people who want to read DVDs at 1/2.71828 times the actual speed. * Stubs for the ncurses control interface. No working code yet, but the holes just need to be filled. * Improved X11 support. Still not as functional as before. * The output window now states the method name, so that people know whether they are using X11 or SDL. * The Gnome interface is now drag'n'drop aware, you can drop a file on it just like Xine does (or so I guess). * New more recent css authentication code. * Beginning of udf support (not in Makefile) * Removed useless includes in intf_gnome.c * Made the vout_sdl.c functions static * Ported vout_x11.c to the modules API; code isn't very nice yet though * X11 output works again. It's just the output, but it works; I now need to clean the code and add event handling. * Should have fixed the dependency generater for some plugins. 0.2.60 Wed, 14 Feb 2001 08:33:46 +0100 * Started porting the X11 vout (still disabled) * A few unnoticeable changes in the Gnome intf * Changes in the way stream size in DVD mode is calculated. It is no longer such an ugly kludge and is much more accurate. * Changes in DVDSeek so that the interface slider is in 0 when we are at the beginning of the strem. * Try to detect the beginning of the movie in the middle of the title. It works for most of the DVDs but will begin in the middle of the movie with some others. * Calculate only the first title key in css mode because it might take a long time with some title. The search stops now when we have a key once whereas it did stop only when we had it twice before. It should not cause problems. * Really fixed MC segfault bug. * Adaptation of DVD module to navigation slider. The seek has to be done on a multiple of 2048, and shopuld take care of the offset to the beginning of the stream. It works with most of my DVDs by fails to detect size of some streams. * Change of the order of call to ifo and css functions in input_dvd.c, because we can't read ifo files before authentification on some DVDs. * Changed location of some css tables. * We read ifo date and decrypt css keys for all titles now. It takes quite a long time to initialize with some DVDs (if you have 42 titles for instance). The key decryption might give a false value if the title is less than 10 Mb ; I'm working on that :) * Quick patch to avoid a segfault when arbitrarily seeking the stream. * Added --intf option to vlc * Started cleaning vout_sdl.c * The dummy plugin works again * Added a slider to the Gnome interface so that we can browse through streams * Removed enhancement because of an incompatibility with slow motion. * We can now seek at position 0 :p ; * Tried to enhance picture dating on timebase discontinuities. * Fixed pause bug. * Much cleaning in css code. It should work fine now. * Fixed my old stupid bug that disabled sound after having played the first playlist item. * Added `Prev' and `Next' buttons to the interface, with the beginning of a playlist window (still empty). * Added `Slow' and `Fast' buttons to the interface and popup menu. * Removed tests against i_rate and i_new_rate calculation from the plugins and hid this complexity into input_ext-intf.c * The pure Gnome part of the Gnome interface has been rewritten from scratch, and the .glade file included as well. You can edit it by installing glade-gnome and doing `glade plugins/gnome/intf_gnome.glade', or directly by hand if you grok XML. * Files can now be loaded into vlc using the `Open' buttons. But for the moment you still have to launch vlc with at least one file, because it quits when the end of the playlist is reached. * Idle screen was disabled because it eats a lot of CPU and is mostly useless for the moment. And it gets activated when pause lasts for too long. * Plugins have completely disappeared, we now only use the new module API. * All intf and vout modules are now independant. So far, only the Gnome intf module and the SDL vout module have been ported. configure.in has been modified to reflect the changes (x11 and dummy aren't compiled by default anymore, while SDL and Gnome are). * Right-clicking on the SDL video output window brings the Gnome menu. * Pause, Play, Exit, About work from the menu or from the interface window. * The old SDL keys still work. * Fixed a bug in #define that prevented from using ioctls * Some functions to prepare ifo commands utilisation to move in the structures of DVDs * Change in configure to avoid compiling css functions on BSD. * Added comments to src/interface/intf_plst.c and include/intf_plst.h so that people understand how the playlist works. * Updated the TODO list (34 items to do, 41 done !) * Portability : changed off64_t to off_t and activated appropriate GNU/Linux options ; * Changed fseek() to fseeko() for 64-bit offsets ; * Reset frame predictors on a stream discontinuity. * Implemented basic stream navigation function, and bound Jump forward and jump Backward in the SDL intf. Enjoy ! * Pause function implemented ('p' key). * Fixed a compile probleme on machine without a dvd player :ppppp * Fixed two bugs in ifo and css that caused memory corruption and segfault when using sdl in dvd mode. * Moved the playlist handling from input/input.c to interface/interface.c * Fixed a few warnings at compile-time. * Fixed sound channel selection in playlist mode. * Added a color message in the plugin bank because on peut bien déconner cinq minutes, quand-même. * We now spawn a new input thread for each file. * Added a missing pf_close() because it's always cool to close files after we read them. * Solved bug with cssdescrambling. The vlc might segfault with dvd plugins. I will fix that soon. * Minor modification in pluginification. * Playlist works again (still the old wrong way like Meuuh doesn't like, but this is going to change within a few hours) * Input_ps, input_ts and input_dvd are now plugins, located in plugins/mpeg/ and plugins/dvd/ * Fast/slow keys are now A/Z instead of A/S since S was already linked to the scale/noscale toggle. * `--dvd' doesn't work anymore, for the moment try to use : vlc --input dvd /dev/dvd * Module bank is now less verbose ; use `--warn 1' to turn back verbosity on * New method using netlist to read packets on DVD device by sectors of 2048 bytes. * Some modifications in netlist to make it work with DVD. * Fixed à bug in mpeg_system.c * We can now choose the speed of forward (between 32/1 and 1/8) * Functional fast forward and slow motion API ; * Dirty hack in the SDL intf to bind "a" (fAst forward), "s" (Slow motion) and "p" (Play). * Centralized clock management, preparing for stream navigation ; * Fixed a bug in the management of the first video PTS. * Fixed a bug in period calculation for progressive sequences. * Fixed a FIXME in SDL: p_vout->p_sys is no more used in intf_sdl.c * Used instead p_vout->i_changes like in x11 * Disabled SDL parachute to let the vlc dump a core instead of staying stuck * Patched 2 debian bugs (see http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=vlc) * Improved the snapshot generation * Mouse pointer hidden/shown with middle button in SDL output * Removed obsolete video_yuv_mmx.S * Updated the TODO list and wrote a small todo.pl parser to make it easier to see which items remain to be done * `make snapshot' now creates vlc-*.tar.gz and vlc-*-nocss.tar.gz 0.2.50 Wed, 31 Jan 2001 04:30:37 +0100 * Version 0.2.50 for the Linux Expo * --overlay and --fulscreen options (only work with --vout sdl) * The vlc exits after the end of the stream, which prevents from having to kill it and relaunch it during a presentation. * Not a very nice hack, but will probably spare us a few user complaints: if no -a option is specified, the vlc will play the first audio type it finds, so there is no need to specify "-a ac3" for a DVD anymore. * CSS support kludged for current DVD input. It is very slow now but will be more adapted to the forthcoming DVD input. It should read the first title of many DVDs but has been tested with few. * Beginning of ifo commands to implement DVD navigation. * Fix for field pictures. * Hooks for fast forward and slow motion support. * Fixed backwards moves. * Tuned up optimizations. * Completely removed BIZARRE_OPTIMS. * Check for the needed headers for DVD ioctls * Some cleaning in the dvd authentification code * Various miscellaneous minor optimizations of the video parser. * Beginning of support for encrypted DVDs. * It only tests encryption and authenticates disc. * Really fixed GetChunk now. * 32-bit aligned bitstream (not that fast). * The motion compensation routines are now modules as well ; choose your implementation with `--motion motion', `--motion motionmmx' or `--motion motionmmxext'. Of course, the best implementation is chosen if you don't ask for any. There doesn't seem to be any performance hit due to the move to shared libs, which is a good thing. Please test actively if you have time, though. * Updated --help result, manpage, INSTALL document, and a few files. * Borrowed LiViD's MMX and MMX EXT IDCT. This might break things. Expect a performance increase. * Removed a few useless malloc() and unused variables in the audio SDL stuff * Prepared the work for built-in modules (not yet finished) * Small tweak in the copy handling, reduce CPU usage. * --aout sdl now works * Added SDL sound support. Sounds a bit laggy sometimes but my streams are ill. please try. * Modified configure.in and all that stuff. Re-run configure * SDL audio, video and interface are all part of the same .so now. * Removed YUV old files :-> * Reverted something that wasn't supposed to go into the cvs :p * Removed -fargument-noalias-global which causes problems with as (???). * Borrowed livid's latest libmmx and MMXEXT MC. Not in the Makefile => to test it, replace vdec_motion_inner_mmx.c by vdec_motion_inner_mmxext.c. * A few changes in the CPU extensions detection code, borrowed from the kernel and from mpeg2dec. I still don't know how to detect if code compiled with -mcpu=pentiumpro will run, since the cpuid arcanes are quite obtuse to me. Perhaps we should also have a way not to load modules if they have been compiled with a different CPU to avoid segfaults. * Add check for MMX EXT extensions, which doesn't work, which is a good thing since there is no MMX EXT IDCT yet :) * Change for the forthcoming fast forward and slow motion support. * Fixed the --aout, --idct and --yuv flags * Updated manpage and --(long)help output to reflect that change * Removed a few unneeded #includes here and there * Cosmetic changes in error messages in input.c * Now use of 64 bits offsets to parse the whole DVD. So we have all the available information * Fixed a bug in parsing of VTS attributes * Fixed a bug in input.c that made input plugin initialize even though no stream is reachable (thanks Sam) * Merged the YUV plugins in the same directory to avoid too much code duplication * YUV transformations now use the new module API ; now only the vout and interface still depend on the old plugin API * Changed TestMMX to TestCPU because we will be able to test for other specific extensions (3DNow, SSE) for the forthcoming IDCT we'll borrow to mpeg2dec (as usual :P) * Don't show "hiding module" messages anymore except in debug mode * Swapped C IDCT and Classic IDCT scores since the classic one seems to be faster ; anyway you should use the MMX one * Fixed a Makefile bug under BeOS * Tried to fix the cpuid code so that it compiles under BeOS (Polux, can you test it when you have time ?) * Fixed a bug in the frame rate handling ; * Fixed a bug in the DTS/PTS ordering. Our pts are _at last_ accurate. * Finally fixed repeat_first_field and co. (pas encore tout compris...) * Implemented video_parser bitstream callback for PTS/DTS. * Fixed close button support in SDL * Fixed --width and --height support in SDL * Fixed the bug-that-made-the-vlc-segfault-on-exit, which means that more than ever, « le client ne segfaulte pas ». * There was still a problem upon quitting: sometimes the null packet wasn't big enough to reach a decoder breakpoint, so I now create 10 of them (since I can't make it bigger) to be sure. Meuuh, what do you think ? * Fixed the Makefile to spare a few variables here and there. * Reduced module hide delay, removed loading of the audio output plugins since they are now modules. * Changed a few intf_Msg to intf_DbgMsg, and added "vout:", "intf:", and so on in a few other messages. * Removed unused includes in the idct modules. * Correction of bugs in ifo parsing. Now the structures should be well initialized. It remains some segfaults but it globally works. * DVD mode is enabled with option --dvd. For the moment, it only read the first vts and find the movie if it is at the beginning of the title set. * Beginning of dvd_input. Parsing of ifo file almost completed. * The IDCT functions are now located in modules : the classic IDCT, our optimized IDCT, and MMX IDCT. * Cosmetic changes for modules (pf_* instead of p_*) * Fixes to the BeOS and dummy modules * Changed default values : INPUT_PTS_DELAY down to 200 ms ; video heap down from 10 to 5 pictures ; decoder fifo size from 1023 to 511 PES ; * Fixed various bugs in 32 bit-versions of input_ext-dec.h ; * Fixed a bug in GetChunk() ; * Renamed GetByte, GetWord, ShowWord to _GetByte, _GetWord, _ShowWord ; * Moved decoder_fifo-specific code from programs.c to dec.c ; * Fixed bugs in program.c that prevented vlc to close all decoders ; * Gave sam a lesson for the use of the bitstream in spu_decoder.c :ppp ; * Made the video parser unlock the reference pictures before quitting (still one left, yaknow why ?) * Destroy fifo mutex and cond variables _after_ they are used for the last time. henri, that'll be one binouze. * Attempt to port the BeOS audio plugin to the new module API. Will probably need a few fixes to work or even compile. * Ported the alsa plugin to the news vlc module API * Fixed 32 bits bitstream bugs. * Moved the MPEG audio decoder to the new bitstream * Cleaning in the SPU decoder. * Moved swab32 from input_ext-dec.h to common.h. We probably won't need it anymore really soon, since ntohl() and htonl() seem to be properly optimized when gcc is passed the right optimization flags. * Fixed GetBits32 and RemoveBits32. I know the #ifdefs are useless since we only support u32 words, but it's a safe reminder. Comments appreciated on this fix since I may have b0rked something -- it runs well here though. * Changed code for handling b_die in bitstream ; * Moved input_ext-dec.h to input.h ; * New input_NullPacket function ; * Fixed init bugs in input and vpar ; * Placed a callback to the decoder in the bitstream structure ; * Fixed a purify bug in input_ps.c ; * Added -mcpu=pentiumpro in the Makefile. * Complete commenting of modules_core.h and small modifications * Separated MODULE_CONFIG_START and ADD_WINDOW (Henri, beware) * Fixed a very, very old bug that caused namespace collision between plugins (Henri, beware: call your aout_getplugin function like this, not alsa_aout_getplugin) * Removed the Debian specific clean rules from the Makefile, since they are already handled by the debian/rules script. * Tidied a few compilation rules (-lfoo should always be at the end) * Added 8bits palette SDL support. * Fixed a warning under FreeBSD (dlerror() is a const char*, not a char*). * Made configure script look for the bswap assembly instruction (using AC_TRY_COMPILE makes sure the compiler will really accept it). * Fixed colors' bug (TODO: write a function in vout that recalculate colors from RGB masks); * Cleaning of the fullscreen switch, still sucks but the surface is not reallocated and that's good (thanks to the magic function SDL_WM_ToggleFullScreen provided by sdl library :). * Added a missing mutex_unlock in video_output.c * Moved a mutex_destroy after the thread cancellation to prevent possible problems * Added a missing #ifdef in intf_msg.c which prevented compilation with --enable-debug * Fixed a bug in the input that prevented to quit properly in certain cases (some ES were not deleted because their index was skipped when the former one was deleted, well Meuuh should know what I mean) * Cleaning of SDL Lock/Unlock Surface. * All plugins now compile with -fPIC. * Made the audio_output API a bit simpler. * Got rid of modules_config.h. * Fixed `make install' rule. * Fixed warnings in the MMX YUV compilation. * Probably fixed a bug in the input : pp_foo structures were free()d at the end, but this was useless since the last call to realloc() is equivalent to free(), and two consecutive calls to free() aren't a goo idea. * We check that the version number match and that we don't already have a module by that name when loading a new module. * All public module_* functions now properly lock the module bank. * The audio_output now uses the new module API ; EsounD and DSP modules have been ported, which should be enough for Henri to port the ALSA one. * Added vlc_mutex_destroy and vlc_cond_destroy function, for pthreads. Used them before quitting, every lock and cond is destroyed * Checked the return value of malloc and realloc in input_programs * Fixed compilation pb under solaris 2.6 * Should compile & run on Solaris with ./configure --disable-dsp (tested on puma) * Removed most SYS_SOLARIS #ifdef's in favour of more generic tests * Updated example ./configure line in INSTALL file * Now we only load modules that end with ".so" * null module is compiled by default * Fixed initialization of payload_start and payload_end * --enable-sdl and some others are now --with-sdl[=name] to supply an optional library name ; * Deleted all unnecessary #include ; * /usr/include is now searched when looking for libraries and headers. * src/misc/modules.c is in a workable state now. * Splitted modules.h into modules.h and modules_core.h to enable clean compilation of the Null Module. * Added the Null Module, the module that does nothing but that is going to be of great help for debugging my module code. * Plugins are now called modules, because we will be able to compile them either as a dynamic plugin, or within the program. And, more important, I can commit this without having to break the vlc :) * Fixed pitch bug; * video_output.c : compute picture size even if b_need_render == 0; * Fixed a deadlock (the vout unlocked a mutex locked by another thread, grrrr, I'll kill someone) ; * Put config.h in front of others in audio_decoder.c. * Better display of the fps. * Removed i_iovec_start and i_iovec_end. Used i_data instead * Fixed THX Cimmarron bug (it was _not_ a synchro bug). * Fixed a bug in the DTS/PTS parsing ; * Fixed a bug in vpar_headers.c synchro handling introduced before ; * Enhanced synchro's handling of dates and frame structure changes. * Fixed a bug in the PSM decoder. * We now read the DTS (but we don't use it for the moment). NB : b_has_pts has disappeared for brevity reasons, use i_pts != 0 instead. * New synchro statistics and warnings. * Avoid calling SafeRead() with a null packet size. * Use of ptrdiff_t whenever necessary (IA-64 port) ; * Changed behaviour of preparsing code, faster startup ; * Fixed DecodePSM(), cannot test ; * Cleaned up ParsePES(), fixed a bug which could reject very small but valid PES packets ; * Fixed cosmetic bugs in vpar_synchro frame_rate display. * Changed subtitles palette. * SPU decoder now uses Meuuh's GetChunk() code. * Lots of cleaning in the SPU decoder. * Message queue is flushed before we spawn input. * Fixed so that it compiles with VDEC_SMP (no good sync yet though). * Using i_id instead of i_stream_id whenever possible ; * Fixed a bug in -c and -s options. * Fixed a compile pbm in debug mode (f34r d4 1-line fix) * Fixed AC3 and SPU PES reading (ph34r da one-byte patch) * Some 79 char wrap. * No need to add "\n" at the end of intf_*Msg() messages anymore. * Moved input_DecodePES() to input_dec.c ; * Fixed an segfault in input_programs.c ; * Added -fomit-frame-pointer optimization. * Fixed a *major* memory leak in the pre-parsing code. Hopefully it should be the last one. * New decoder spawning API input_dec.c ; * Moved p_input->pp_es -> p_input->stream.pp_es and clean up of input_programs.c & co ; * Fixed memory leaks. * Moved video_decoder's headers from include/ to src/video_decoder. * Temporarily removed b&w kludge. * Splitted up p_method_data/p_plugin_data ; * Cleaned up input_ts.c, added it into the Makefile. * Fixed various memory leaks. * Removed all arbitrary limits on the number of elementary streams. * Removed b_die and b_error from all decoders (obsoleted by decoder_fifo_t). All decoders should now exit cleanly (if it's not the case, it should be referenced as a bug). * Fixed a bug which prevented the input to exit normally (non-selected ES in the pp_selected_es array). * Added netlist support. * Added U8_Mono audio output * Fixed "-a [ mpeg | ac3 | lpcm | off ]" option * Only pre-parse the first 32 MB of data. * Added -a, -c and -s options. (-a doesn't work but I will let the people who thought it would be cleaner to put config in environment variables correct what's wrong in my code). * Now we only try to open plugins which are existing files * Big cleanup of the PS input plugin ; * Fixed a bug in AC3 initialization ; * PS streams are now pre-parsed (this can take a while) if possible ; * Move #define from audio_output.h to config.h * Change vlan_server_ip to vishnou's ip (but vlans not working yet) * GetChunk() : reads n bytes from the elementary stream and places them in a big buffer (a gift for Sam). * Quantic start in fullscreen fixed. * Input-II now correctly handles private stream 1 (AC3, DVDSPU). * Split the audio decoder into adec_generic, adec_layer1 and adec_layer2 (no new code added) * Added SDLYUV support, * Fixed the ratio/position problem in YUV, * We now display CPU usage statistics for each thread. * Additional fix for Layer 1 mono * Indentation fixes * Fixed audio syncword detection for mpeg 1 streams (hopefully) * Fixed Layer 2 Mono decoding. * Hardware YUV overlay (SDL) with real colors ;p It may suck for non 4:2:0 streams. * Removed vout code found in intf file to support fullscreen switching. Now only vout_SDL updates SDL data and intf only switch flags such as b_reopen_display and b_fullscreen in p_vout->p_sys. * Fixed a var name typo in input_programs.c which prevents vlc from compiling with --enable-debug option. (i_es_pid -> i_es_id :) * Autodetection of Overlay support * Fixed support for broken MPEG-1 files. * Cleaned up program and ES management by using input_programs.c whenever necessary. * Cleaned up decoder spawning. * Enhanced handling of stream discontinuities. * Fixed two typos in the Makefile (sam you owe me at least one beer) * Moved b_discontinuity to pgrm_descriptor_t, cleaned up CRDecode (needs some more cleaning for discontinuities) * Added pf_new_pes in plugins * Fix in the SCR parser for high values. * Fixed a bug with DVD's SCR (too close from the PTS). * Generation d'un makefile presque correct pour les vieilles versions de make Nettoyage: gestion des dependances pour les plugins, suppressions de pas mal de redondances, options de compilations coherentes, etc... * Code to manage es_descriptors and program_descriptors, from benny's input_psi.c * VLAN support modified. * We now correctly parse MPEG-1 SCR and there is no need to kludge to read the stream at the right pace. * Fixed a bug in the synchro with non-P5/B1 streams. * Support for MPEG-1 .mpg files. * Fixed a bug in the synchro with non-P5/B1 streams. * The input-II. 0.2.0 Wed, 31 Jan 2001 04:30:37 +0100 * Version 0.2.0 pour la Linux Expo * Backport of the sdl plugin (minor correction in video_output as I made in unstable) * Ajout des options --fullscreen et --overlay * Added hardware YUV overlay support (SDL). Huge performance increase. * Fixed MPEG audio decoding for streams without b_data_alignment flags. * Fixed a bug in the SPU decoder which caused a segfault. * Support for 8bit soundcards. * YUV support for SDL. * We now open /dev/dsp in non-blocking mode. * Frame dropping enhancements for very slow machines. * Fixed a buffer overflow under BeOS. * Miscellaneous framebuffer fixes. * Miscellaneous SDL fixes. * MMX Y4Gray16 colorspace transformation. * Optimized grayscale mode. * Fixed volume control. * Splash screen. * Minor changes in the Debian files. * Fixed fps display. * Fixed MPEG1 video decoding. We don't read MPEG 1 PS files for the moment. * Fixed a 100% cpu usage bug, in the dummy aout. * Added a 'f' shortcut to switch between Windowed and Fullscreen mode. * Added --broadcast option for network input. * Screen is now emptied when framebuffer output exits. * Totally new frame dropping algorithm. * Fixed a bug in video_ouput.c which trashed more late pictures than necessary. * Fixed the DEBUG mode in the Makefile. * Fixed a bug in mwait() which made us wait too long. * The video_decoder can now be split into several threads to take advantage of the SMP machines. * Added --enable-debug, --enable-stats, and --disable-optims in the GNU configure stuff. * Added alsa audio support (plugin) * vlc is now compiled without the STATS mode by default. * Fixed a bug which made frames go backwards with some displays (the video_decoder thread is now niced). * Added intf_WarnMsg(), and made use of it in the most needed places. 0.1.99i Mon, 28 Aug 2000 02:34:18 +0200 * fixed the support for field pictures, which involved a few dozens bugs in the video parser and video decoder. * put names of authors under a lot of source files, for historical purposes. * fixed another input_file exit bug for the beos version. * fixed the aliases install. * renamed an inconsistent variable in src/input/input_file.c. * added support for I+ synchro (all Is and the first P). * fixed a motion compensation bug which generated some distortion on B images. * fixed a motion compensation bug for skipped macroblocks. * fixed a synchro bug for field images. * cleaned Octplane's crappy indentation. * fixed the --server option which didn't work if a ~/.vlcrc existed. 0.1.99h Tue, 22 Aug 2000 01:31:58 +0200 * fixed the sound issue under beos. * fixed a bug that was making the crash randomly under beos. * fixed a bug that was exhausting system ressources under beos. * improved the cond_var for beos. * added support for the SDL vout : the --display fullscreen allows fullscreen when possible. Disabled by default. * added sdlvlc (which probably should start in fullscreen, no ?) * removed sdlvlc :) * updated debian directory to build vlc-sdl. * removed CCFLAGS flags which were improperly used. * added hints for powerpc build. * fixed the input_file exit bug. * fixed a Makefile bug which removed the CVS directory. * removed the frame statistics output. * removed a verbose message in intf_sdl.c. * added a few sanity checks in the audio mpeg and ac3 decoders. * temporarily got rid of vlc.channels. * added notice in debian/control about unencrypted DVDs. * fixed PowerPC .deb build. 0.1.99g Wed, 16 Aug 2000 01:07:14 +0200 * removed all "*vlc" aliases except "gvlc" and "fbvlc". The other sucked. * new --synchro flag which lets you force which images are decoded. * removed an unused variable in the MMX YUVs. * fixed 32bpp MMX YUV, made the comments clearer, removed an emms. * now scaling is on by default, so that people won't tell that the vlc cannot do scaling :-) * fixed a few long lines. * fixed 8bpp YUV. * fixed the fscked up Bresenham algorithm in all YUV functions. * fixed a dumb bug in the Makefile that prevented inclusion of the -march=pentium directive. thanks Meuuh, blame sam. * fixed a warning in main.c. * separate Debian packages. * added request for ALSA support in the TODO list. * changed "pentiumpro" to "ppro" in the ./configure, it was misleading. 0.1.99f Tue, 8 Aug 2000 11:24:01 +0200 * plugin detection now works * "gvlc", "fbvlc", "ggivlc" aliases now work * fixed functions that weren't properly inlined * removed bloat from the MMX YUV plugin * vlc.init becomes ~/.vlcrc * removed float operations in the video decoder, and all emms asm functions * borrowed linuxvideo's MMX motion compensation * fixed an undefined symbol in the MMX YUV plugin 0.1.99e Thu, 20 Jul 2000 15:14:06 +0200 * new bitstream syntax and slight performance increase * BeOS build fix * removed the sample code from the reference decoder 0.1.99d Wed, 12 Jul 2000 01:24:40 +0200 * fixed RPM build * .deb is now more lintian-friendly * fixed vlc.spec to install nicely * PLUGIN_PATH and DATA_PATH now in include/*.h * removed a few useless warning messages * removed remaining header stuff related to the old non-free decoder * fixed the MGA build (doesn't work yet, though) * new plugin API * updated the INSTALL document * plugin auto-detection * fixed a few misspellings in the code * removed the default --enable-ppro option because it didn't work on K6-2 * the framebuffer client now leaves the console in a working state * the dithered 8 bpp YUV transformation works again (blame bbp !) * the YUV transformations are now plugins as well * alternative symlinks like gvlc, fbvlc are now created at compile time * borrowed libmpeg2's GPLed MMX YUV transformations (16 and 32 bits) * fixed an endianness problem which occured on iMacs * fixed the build for the Mandrake distribution 0.1.99c Sun, 18 Jun 2000 18:54:48 +0200 * fixed Makefile.in for debug version * caught Delete Window event in Gnome and X11 modes * fixed man page * GGI output now works * fixed a segfault on exit for the Gnome plugin * fixed compile problems for BeOS * sound support almost works under BeOS * fixed a warning in ac3_exponent.c * automatic support for .rpm and .deb building 0.1.99b Sat, 17 Jun 2000 03:35:02 +0200 * fixed a bug preventing to quit when run with no arguments * new VLAN changing code * created the ChangeLog file :) 0.1.99a Thu, 15 Jun 2000 20:48:54 +0200 * first public release