7 * All Debian packages are now lintian-clean.
8 * Fixed XVideo plugin linking.
10 * Built-in modules support almost finished.
11 * A few Makefile fixes for BeOS.
12 * XVideo patches by Shane Harper <shanegh@optusnet.com.au>.
13 * Beginning of the built-in modules support.
14 * Got rid of the sleep() hack in beos_specific.cpp.
15 * Fixed a segfault when launched without argument under Darwin.
16 * Fix for Darwin program path handling.
19 Fri, 13 Apr 2001 08:13:26 +0200
21 * Merged 6 months of CVS logs to the ChangeLog file.
22 * Fixed a lintian error in debian/rules.
23 * XVideo resize patch by Shane Harper <shanegh@optusnet.com.au>.
24 * Added udf fix by Billy Biggs.
25 * Added checks in dvd_ifo.
26 * Cleanings in gnome interface : the interface should depend on the
28 * Intf: TS streams in menu
29 * TS input: only one audio & spu ES selected at a time
30 * Removed the build of the vlc app from the install target.
31 * Added an icon to the MacOS X vlc.
32 * "make vlc.app" now correctly updates vlc.app
33 * Fixed BeOS menu problem.
34 * Added a field to p_input->stream to inform the interface of a stream.
35 change (useful in network mode).
36 * Added error checks in dvd input.
37 * Changed the way ifo are read.
38 * Fixed a bug in area management.
39 * Fixed a warning in netutils.c.
40 * Created darwin_specific.c to store the program path at boot time.
41 (XXX: check that it didn't break the OS X port)
42 * Removed redefinition of NULL in src/audio_decoder/adec_layer?.c.
44 * BeOS icon and MIME resources courtesy of Wade Majors <guru@startrek.com>.
45 * Updated Makefile.in to make vlc.app by default on Mac OS X & Darwin, added
46 clean code for it as well.
47 * Hacked main.c to disregard argv[1] when compiled for OSX & run as a full
48 app (ie., double clicked and not launched from command line).
49 * Cleaned up debug spew left in modules.c and video_text.c.
50 * Created macosx_common.h in plugins/macosx/ to hold common stuff.
51 * Updated & cleaned up intf_macosx.c and vout_macosx.c - added Open menu
52 function support and a no-frills About box.
53 * Fixed icons location and Debian desktop menus.
54 * Fixed a memory leak in gtk_callbacks.c (thanks to Dae).
55 * Disabled message queue by default.
56 * A few other changes in the CSS code, the BeOS issues should be fixed.
57 * Corrected an awful typo in the version name.
58 * Removed deprecated stuff from config.h.
59 * Fixed the whitespace/tab issues in the Makefile.
60 * X and Xv output: added autohide cursor as in SDL.
61 * X and Xv: keys 1 to 0 change channel.
62 * SDL: keys F1 to F10 change channel.
63 * Ported the 0.2.0's channel changing functions.
64 * Fixed the lock segfault bug with some compilers.
67 Sat, 7 Apr 2001 05:52:00 +0200
69 * Fixed headers for FreeBSD compilation.
70 * Fixed debian/rules for non-x86 packages (Closes: Debian bug #88583).
71 * Deleted BBitmap[0] directly after overlay creation as no longer needed
72 as overlay now owns Bits()
73 * Fixed MPEG-1 mux_rate parsing.
74 * Fixed MPEG-1 stuffing.
75 * Don't create BBitmap drawing thread if using overlays
76 * Changes to BeOS interface with file selection support
77 * Fixed a boolean_t/int mix.
78 * Increased FIFO_SIZE.
79 * Fixed all alignment issues
81 * Working menus for run-time audio/spu/title/chapter selection with gtk
83 * Port of the interface menus to gnome plugin.
85 * Tried to fix the "stream jumps at will" bug.
86 * Fixed most of the bugs in gnome interface menus
87 * Added radio checks in menu items.
88 * Bug fixes and enhancements in the Gtk+/Gnome interfaces.
89 * Borrowed config.guess and config.sub from SDL [MacOS X port] ;
90 * Changed files so that the MacOS X port compiles & runs [MacOS X port] ;
91 * If SDL/GTK/DSP is not available, don't compile the associated module.
92 * Gtk+ interface: fixed a precision issue in the scale.
93 * Qt interface: somebody pop up us the menu!!
94 * Fixed Debian sparc build for real (Closes: Debian bug #89285).
95 * vlc core compiles under QNX RTOS. Now if anyone feels like tidying
96 it and writing output and interface plugins...
97 * Split audio output into several separate files to make it easier
98 to debug. Removed a few redundancies as well.
99 * Support for Darwin CoreAudio, courtesy of Colin Delacroix [MacOS X port] ;
100 * Added warnings for ac3 mantissa (we still have problems with AC3 on
102 * Renamed WriteResource to avoid a namespace clash with Darwin's
104 * Compile Darwin module by default on Darwin system. [MacOS X port]
105 * Use $QTDIR for the qt module ;
106 * SDL fixes and enhancements by Shane Harper <shanegh@optusnet.com.au>
107 * Header cleaning: filled all empty authors fields, added CVS $Id stuff.
108 * Fixes to aout_darwin.c by Colin Delacroix <colin@zoy.org>.
109 * Fixes to configure.in, Makefile.in and main.c (Altivec detection)
110 by Eugenio Jarosiewicz <ej0@cise.ufl.edu>.
111 * Added a SYNCHRO_START in DVDRead for each cell change to fix
113 * Changed seek function to prevent jump-at-will and to remove two bugs in
115 * Initialize some values in netlist (payload_discard wasn't which caused
117 * Come back of multi-sector read which should make reading faster
118 * Language & Inteface support for BeOS interface
119 * XVideo plugin courtesy of Shane Harper <shanegh@optusnet.com.au>
120 * Makefile.in and configure.in fixes by Nilmoni Deb <ndeb@ece.cmu.edu>
121 * A few syntax fixes in the plain X11 plugin
122 * Various bug fixes in dvd_netlist. Some bugs seem to remain though.
123 * New function input_ToggleES for interaction with interface.
124 * Changes in gnome interface : navigation menus are now splited, there
125 are radio item in menus and the code should be better.
126 * First step for dvd_ifo rewritting. Now allocation/disallocation is
127 being done as it has to be.
128 * Fixed a bug in title management that make dvd like Seven work.
129 * vout_beos now uses double buffering for YCbCr overlay.
130 This (for some reason) improves audio/video sync
131 * Fixes for the Qt plugin compilation under Debian
132 * Heavy butchering in the CSS and DVD ioctl code to put all architecture-
133 dependent code in dvd_ioctl.c
134 * Added almost fully-functional /dev/dvd driver for MacOS X in
136 * Fall back to one-packet-once reading in dvd input since multi-block
137 seems to have a bug that make the vlc crash on title/audio/spu change. I
138 hope that this bug will be fixed soon for the performance is poorer now
139 * Add-ons and changes in gnome interface:
140 o menu subdivision is done only if there are over 20 items,
141 o in DVD mode next/prev apply to title,
142 o in DVD mode, added a box with button to navigate through chapters.
143 * Additional enhancements to the OS X DVD ioctl module
144 * Big cleaning of the BeOS DVD ioctl code, got rid of all Linuxisms
145 * Compilation fixes for the BeOS DVD ioctls
146 * XVideo plugin enhancements by Shane Harper <shanegh@optusnet.com.au>
147 * Added the GNU getopt library, which gets compiled in when getopt_long
148 isn't available on the desired platform.
149 * Replaced the `--warning' flag with the standard cumulative `-v' flag.
150 `-v' is like `--warning 3', and `-vvvv' is like `--warning 0'
151 (`--warning' is still valid for those used to it)
152 * Cleaning in configure.in and Makefile.in, the Solaris port now
153 builds and runs properly.
154 * Code cleanup: removed a few tabulations.
155 * Fixed inline asm routines to remove all read/write operands.
156 * Added <string.h> to most files to prevent warnings under FreeBSD.
157 * Added "break;" after "default:" in case switches to prevent
158 warnings when compiling with GCC 3.0pre.
159 * Sync MOSX dev/CVS tree : code support for MacOS X audio, video and
160 interface (courtesy of Eugenio Jarosiewicz & Colin Delacroix) ;
161 * Cleaning code and a small fix to make quit work on OSX
162 * Disable x11 plugin if X11 headers are not found.
163 * Misc fixes in the DVD input.
164 * Fixed CSS authentication under Linux.
165 * Playlist now refreshes when a file is opened.
166 * XVideo plugin background is now black instead of white.
169 Mon, 5 Mar 2001 00:41:16 +0100
171 * Got rid of the CONTRIBUTORS list, and switched AUTHORS to a
172 linux-kernel like author list.
174 * Fixed a segfault in the BeOS interface when --noaudio was specified.
175 * Title and Chapter selection in the Gnome and Gtk+ interfaces.
176 * Fixed a bug in audio selection
177 * Tried to fix an issue in size computing.
178 * Commited BeOS changes by Richard Shepherd and Tony Castley.
179 * Added boolean_t b_YCbr to vout_thread_s structure to flag YUV-YCbCr
180 decoding needed instead of YUV-RGB
181 * Will be removed later when video_output.c rewritten
182 * vout_CreateThread() initialises b_YCbr to zero
183 * New BeOS video plugin that supports hardware overlays and new
184 MediaPlayer compatible interface
185 * Added YUV-YCbCr transforms
186 * Fixed bugs in title/chapter handling once more, especially for size
187 detection and location of main movie.
188 * Support for multitrack DVD : now the stream is given to input as it has
189 to be ; however, all the tracks are displayed one after the other ; I
190 think we need to decode navigation ES to choose the track
191 * Fixed behaviour at end of device.
192 * Added DVD/VCD button and menu for quick DVD device selection to the
193 Gnome and Gtk+ interfaces, so that vlc can play a DVD even when
195 * Added debian/* files to help generating CSS-enabled non-US packages,
196 and changed plugins/dvd/* to reflect this change.
197 * Added .xpm icons (fixes lintian warnings).
198 * --help output and manpage are now in sync (Closes Debian bug #87478).
199 * Fixed Build-dpends entry in debian/control (Closes Debian bug #83707).
200 * Completely changed title and chapter initialization. Now we have real
202 * Fixed size for a majority of DVD.
203 * More consistency in the p_input->stream management.
204 * Made input_SelectES() and input_UnselectES() not block the input thread
206 * Changed debian/control to fix Debian bug #83707
207 * Added a --disable-css configure option
208 * Moved some code here and there in the DVD plugin to make it easier
209 for me to build the Debian CSS-free packages.
210 * Fixed miscellaneous alignment problems (alpha/sparc ports) ;
211 * Added a fps display when toggling 'i' ;
212 * Fixed a bug in the video parser where one picture buffer was not
213 released at quit time ;
214 * Broke the mux_rate calculation, but hey guys ! it was already broken and
216 * New function for DVD reading, that is able to read multiple blocks
217 (I've chosen 32 now), that doesn't use any memcpy anymore and is also much
218 faster. It is ready now for cell positioning in multi-angle DVD (to come
220 * DVD specific netlist adapted to 2048 bytes long blocks that contain
221 several data_packets.
222 * Modification in mpeg_system.c to use p_payload_start instead of
223 p_buffer (necessary for DVD plugin). It does not break other plugins
224 since they set p_payload_start to p_buffer
225 * New field i_read_once in input_thread_s to be able to read more than
226 the TS related 7 packets ; i_read_once is set to INPUT_READ_ONCE by
227 defaults but plugins can change it during initialisation.
228 * Bug fix with frequential downmix
229 * Additional optimizations to the subtitle decoder
230 * The GGI video output should now be faster. Also, right-mouse-clicking
231 works in GGI mode as well.
232 * Optimizations done to the SPU decoder. Now the RLE is expanded at
233 decoding time, not rendering time. The main loop in vout_RenderSPU
234 is now 20 lines long.
235 * The Gtk+ interface is now built as a Debian package as well. The Gnome
236 package depends on it because of the icon and menu entry.
237 * Added an intf_WarnHexDump() function to do raw hexadecimal dumps of
238 memory areas. For debugging purposes or for real men, as you wish.
239 * Lots of tidying in dvd_ioctl.c, a few comments added.
240 * Better error handling in the subpicture decoder.
241 * Tidied video_spu.c. More to come later.
242 * Fixed subtitle displaying. Will soon work in overlay mode as well.
243 * Disabled slice-level resynchro since it's probably buggy.
244 * Fixed a structural major bug in the macroblock structure management.
245 * Added debug messages.
246 * Fixed a compile problem in debug mode.
247 * Added functions and hooks to display dates instead of off_t.
248 * Added a 'd' keystroke to dump the stream contents (for debugging
250 * New ES detection based on .ifo for DVD module. It might fail (I have
251 found one DVD for which ifo seems false).
252 * Title and chapter selection on the command line (see -t and -T options)
253 It will allow to watch some DVD that went through menus by default.
254 * Beginning of menus in gnome interface.
255 * Fix bug in ac3dec for mono streams
256 * BeOS: bew video output method, the vlc now uses BBitmap instead of
257 BDirectWindow (better performances)
258 * BeOS: added resizing
259 * BeOS: added beta support for overlay
260 * Added a plain Gtk+ port of the Gnome interface, for the gnome-impaired
261 people. Gtk+ is now compiled by default, while Gnome isn't (you will
262 have to add --enable-gnome when running configure)
263 * Replaced -lcurses with -lncurses in configure.in.
264 * Added DemuxPSI, DecodePAT and DecodePMT. Never tested which streams
265 where PAT or PMT are splitted in more than one section.
268 Fri, 2 Mar 2001 17:32:24 +0100
270 * DVD plugin is still non-functional when you don't have DVD ioctls,
271 but at least it compiles under BeOS as well.
272 * Minor cosmetic changes here and there.
273 * Added the BeOS code for vlc_mutex_destroy() and vlc_cond_destroy()
274 * Minor optimizations in the video decoder.
275 * Move ac3 globals variables into structures
276 * Fixed a bash-ism in configure.in
277 * Fixed a segfault in input.c when no input plugin was found for
279 * Fixed a deadlock in the Gnome interface. Next time I'll initialize
280 my mutexes, I promise.
281 * Added Oct to the authors list in intf_gnome.glade :)
282 * Second step in area management ; everything is in place now to have
283 title handling; it is coming :)
284 * Ported Glide and MGA plugins to the new module API. MGA never worked,
285 so this didn't make it work better.
286 * Started thinking about built-in modules, and added some code to
287 make it easier eventually.
288 * Added Oct in the AUTHORS file.
289 * Fixed a mistake in configure.in.
290 * All your base are belong to us.
291 * Fixed a bug in src/misc/modules which prevented loading modules
292 when launched from the Tracker.
293 * Fixed a similar bug in src/video_output/video_text.c.
294 * BeOS CSS support, thanks to Markus Kuespert <ltlBeBoy@beosmail.com>
295 who ported the Linux DVD ioctls. We can now read encrypted DVDs
297 * First serie of changes in DVD module for the forthcoming interface menus.
298 There is a new capability in input type modules for setting the
299 attributes of a new area. It is set to NULL for PS and TS plugins.
300 It should be called for every title change, chapter change,
301 audio mode change or spu channel change.
302 * Kludge of the kludge, removing an oddity in YUV initialisation, and
303 activating YUV overlay on startup whenever hardware acceleration is
304 available. Thanks for bearing with us, stay tuned.
306 * Changed video decoder's error messages into warnings.
308 * Drag and drop support under BeOS.
309 * Change in the code to detect beginning of movie. It is much better now
310 but still fails with some DVD for which the movie is not the first
312 * Beginning of ideas to handle chapters and ES selection
313 * configure.in and Makefile.in patches for better SDL support and
314 support for $(bindir) $(datadir) and $(libdir) stuff, courtesy
315 of Arkadiusz Miskiewicz <misiek@pld.ORG.PL>
316 * Ported ggi.so to the new modules API. As for the other modules, only
317 the "q" key works. Moreover, VLC doesn't exit cleanly if you close the
319 * Deactivated non-working widgets in the Gnome interface.
320 * Added CONTRIBUTORS file.
321 * Ported the framebuffer plugin to the new module API. As for most of the
322 other video output modules, keyboard doesn't work. Except ^C to quit.
323 * UDF filesystem support so that we know the location of the first video
324 related file with 100% reliability (great change that should make DVDs
325 with binaries and extra stuff work with vlc).
326 * Correction of a bug in ifo reading that falsified the adress of
328 * Changed the method for selecting title at start. It is _not_ reliable
329 though, but it is better than the preceding one.
330 * Tried to fix the BeOS interface and video output. Any BeOS developers
331 listening ? I can't even test that code, it probably wants additional
333 * Added a workaround in modules.c for broken libc's which happen to truncate
334 filenames in dentry structures when using 64bits offsets. The kind of
335 stuff you only see in RedHats <g>.
336 * Made the SDL error messages a bit more useful.
337 * The Gnome menu is now created when mouse is released, not when it
338 is pressed. It may sound stupid, but it really makes a difference.
341 Fri, 16 Feb 2001 08:09:59 +0100
343 * Fixed package building (both RPMs and .debs).
344 * Fixed `make snapshot' rule.
345 * Added some magic to filename detection. To read a DVD you now just
346 need to run 'vlc dvd:/dev/hdc' for instance. Same for file:// URIs.
347 * Fixed a segfault in the slider when no stream was playing.
348 * Made the slider go from 0 to 100 (instead of 99 :)
349 * The vlc now doesn't exit when finished playing. As a side effect of
350 the playlist code being very recent, it continuously loops.
351 * Fixed a segfault in the input thread creation, as well as a possible
352 deadlock. This happened mostly when opening non-existing files.
353 * Created input_SetStatus to do input_SetRate's job. input_SetRate will
354 be used to set an arbitrary rate, for people who want to read DVDs at
355 1/2.71828 times the actual speed.
356 * Stubs for the ncurses control interface. No working code yet, but the
357 holes just need to be filled.
358 * Improved X11 support. Still not as functional as before.
359 * The output window now states the method name, so that people know whether
360 they are using X11 or SDL.
361 * The Gnome interface is now drag'n'drop aware, you can drop a file
362 on it just like Xine does (or so I guess).
363 * New more recent css authentication code.
364 * Beginning of udf support (not in Makefile)
365 * Removed useless includes in intf_gnome.c
366 * Made the vout_sdl.c functions static
367 * Ported vout_x11.c to the modules API; code isn't very nice yet though
368 * X11 output works again. It's just the output, but it works; I now need
369 to clean the code and add event handling.
370 * Should have fixed the dependency generater for some plugins.
373 Wed, 14 Feb 2001 08:33:46 +0100
375 * Started porting the X11 vout (still disabled)
376 * A few unnoticeable changes in the Gnome intf
377 * Changes in the way stream size in DVD mode is calculated. It is no
378 longer such an ugly kludge and is much more accurate.
379 * Changes in DVDSeek so that the interface slider is in 0 when we are at
380 the beginning of the strem.
381 * Try to detect the beginning of the movie in the middle of the title. It
382 works for most of the DVDs but will begin in the middle of the movie
384 * Calculate only the first title key in css mode because it might take a
385 long time with some title. The search stops now when we have a key once
386 whereas it did stop only when we had it twice before. It should not
388 * Really fixed MC segfault bug.
389 * Adaptation of DVD module to navigation slider. The seek has to be
390 done on a multiple of 2048, and shopuld take care of the offset to the
391 beginning of the stream. It works with most of my DVDs by fails to
392 detect size of some streams.
393 * Change of the order of call to ifo and css functions in input_dvd.c,
394 because we can't read ifo files before authentification on some DVDs.
395 * Changed location of some css tables.
396 * We read ifo date and decrypt css keys for all titles now. It takes quite a
397 long time to initialize with some DVDs (if you have 42 titles for
398 instance). The key decryption might give a false value if the title is
399 less than 10 Mb ; I'm working on that :)
400 * Quick patch to avoid a segfault when arbitrarily seeking the stream.
401 * Added --intf option to vlc
402 * Started cleaning vout_sdl.c
403 * The dummy plugin works again
404 * Added a slider to the Gnome interface so that we can browse through streams
405 * Removed enhancement because of an incompatibility with slow motion.
406 * We can now seek at position 0 :p ;
407 * Tried to enhance picture dating on timebase discontinuities.
409 * Much cleaning in css code. It should work fine now.
410 * Fixed my old stupid bug that disabled sound after having played the
412 * Added `Prev' and `Next' buttons to the interface, with the beginning of
413 a playlist window (still empty).
414 * Added `Slow' and `Fast' buttons to the interface and popup menu.
415 * Removed tests against i_rate and i_new_rate calculation from the
416 plugins and hid this complexity into input_ext-intf.c
417 * The pure Gnome part of the Gnome interface has been rewritten from
418 scratch, and the .glade file included as well. You can edit it by
419 installing glade-gnome and doing `glade plugins/gnome/intf_gnome.glade',
420 or directly by hand if you grok XML.
421 * Files can now be loaded into vlc using the `Open' buttons. But for the
422 moment you still have to launch vlc with at least one file, because it
423 quits when the end of the playlist is reached.
424 * Idle screen was disabled because it eats a lot of CPU and is mostly
425 useless for the moment. And it gets activated when pause lasts for too
427 * Plugins have completely disappeared, we now only use the new module API.
428 * All intf and vout modules are now independant. So far, only the Gnome
429 intf module and the SDL vout module have been ported. configure.in has
430 been modified to reflect the changes (x11 and dummy aren't compiled by
431 default anymore, while SDL and Gnome are).
432 * Right-clicking on the SDL video output window brings the Gnome menu.
433 * Pause, Play, Exit, About work from the menu or from the interface window.
434 * The old SDL keys still work.
435 * Fixed a bug in #define that prevented from using ioctls
436 * Some functions to prepare ifo commands utilisation to move in the
438 * Change in configure to avoid compiling css functions on BSD.
439 * Added comments to src/interface/intf_plst.c and include/intf_plst.h
440 so that people understand how the playlist works.
441 * Updated the TODO list (34 items to do, 41 done !)
442 * Portability : changed off64_t to off_t and activated appropriate
444 * Changed fseek() to fseeko() for 64-bit offsets ;
445 * Reset frame predictors on a stream discontinuity.
446 * Implemented basic stream navigation function, and bound Jump forward
447 and jump Backward in the SDL intf. Enjoy !
448 * Pause function implemented ('p' key).
449 * Fixed a compile probleme on machine without a dvd player :ppppp
450 * Fixed two bugs in ifo and css that caused memory corruption and
451 segfault when using sdl in dvd mode.
452 * Moved the playlist handling from input/input.c to interface/interface.c
453 * Fixed a few warnings at compile-time.
454 * Fixed sound channel selection in playlist mode.
455 * Added a color message in the plugin bank because on peut bien déconner
456 cinq minutes, quand-même.
457 * We now spawn a new input thread for each file.
458 * Added a missing pf_close() because it's always cool to close files
460 * Solved bug with cssdescrambling. The vlc might segfault with dvd
461 plugins. I will fix that soon.
462 * Minor modification in pluginification.
463 * Playlist works again (still the old wrong way like Meuuh doesn't
464 like, but this is going to change within a few hours)
465 * Input_ps, input_ts and input_dvd are now plugins, located in
466 plugins/mpeg/ and plugins/dvd/
467 * Fast/slow keys are now A/Z instead of A/S since S was already
468 linked to the scale/noscale toggle.
469 * `--dvd' doesn't work anymore, for the moment try to use :
470 vlc --input dvd /dev/dvd
471 * Module bank is now less verbose ; use `--warn 1' to turn back
473 * New method using netlist to read packets on DVD device by sectors of
475 * Some modifications in netlist to make it work with DVD.
476 * Fixed à bug in mpeg_system.c
477 * We can now choose the speed of forward (between 32/1 and 1/8)
478 * Functional fast forward and slow motion API ;
479 * Dirty hack in the SDL intf to bind "a" (fAst forward), "s" (Slow motion)
481 * Centralized clock management, preparing for stream navigation ;
482 * Fixed a bug in the management of the first video PTS.
483 * Fixed a bug in period calculation for progressive sequences.
484 * Fixed a FIXME in SDL: p_vout->p_sys is no more used in intf_sdl.c
485 * Used instead p_vout->i_changes like in x11
486 * Disabled SDL parachute to let the vlc dump a core instead of staying stuck
487 * Patched 2 debian bugs
488 (see http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=vlc)
489 * Improved the snapshot generation
490 * Mouse pointer hidden/shown with middle button in SDL output
491 * Removed obsolete video_yuv_mmx.S
492 * Updated the TODO list and wrote a small todo.pl parser to make it
493 easier to see which items remain to be done
494 * `make snapshot' now creates vlc-*.tar.gz and vlc-*-nocss.tar.gz
497 Wed, 31 Jan 2001 04:30:37 +0100
499 * Version 0.2.50 for the Linux Expo
500 * --overlay and --fulscreen options (only work with --vout sdl)
501 * The vlc exits after the end of the stream, which prevents from having
502 to kill it and relaunch it during a presentation.
503 * Not a very nice hack, but will probably spare us a few user complaints: if
504 no -a option is specified, the vlc will play the first audio type it finds,
505 so there is no need to specify "-a ac3" for a DVD anymore.
506 * CSS support kludged for current DVD input.
507 It is very slow now but will be more adapted to the forthcoming DVD
509 It should read the first title of many DVDs but has been tested with few.
510 * Beginning of ifo commands to implement DVD navigation.
511 * Fix for field pictures.
512 * Hooks for fast forward and slow motion support.
513 * Fixed backwards moves.
514 * Tuned up optimizations.
515 * Completely removed BIZARRE_OPTIMS.
516 * Check for the needed headers for DVD ioctls
517 * Some cleaning in the dvd authentification code
518 * Various miscellaneous minor optimizations of the video parser.
519 * Beginning of support for encrypted DVDs.
520 * It only tests encryption and authenticates disc.
521 * Really fixed GetChunk now.
522 * 32-bit aligned bitstream (not that fast).
523 * The motion compensation routines are now modules as well ; choose your
524 implementation with `--motion motion', `--motion motionmmx' or
525 `--motion motionmmxext'. Of course, the best implementation is chosen
526 if you don't ask for any. There doesn't seem to be any performance hit
527 due to the move to shared libs, which is a good thing. Please test
528 actively if you have time, though.
529 * Updated --help result, manpage, INSTALL document, and a few files.
530 * Borrowed LiViD's MMX and MMX EXT IDCT. This might break things. Expect
531 a performance increase.
532 * Removed a few useless malloc() and unused variables in the audio SDL stuff
533 * Prepared the work for built-in modules (not yet finished)
534 * Small tweak in the copy handling, reduce CPU usage.
535 * --aout sdl now works
536 * Added SDL sound support. Sounds a bit laggy sometimes but my streams
538 * Modified configure.in and all that stuff. Re-run configure
539 * SDL audio, video and interface are all part of the same .so now.
540 * Removed YUV old files :->
541 * Reverted something that wasn't supposed to go into the cvs :p
542 * Removed -fargument-noalias-global which causes problems with as (???).
543 * Borrowed livid's latest libmmx and MMXEXT MC. Not in the Makefile => to
544 test it, replace vdec_motion_inner_mmx.c by vdec_motion_inner_mmxext.c.
545 * A few changes in the CPU extensions detection code, borrowed from the
546 kernel and from mpeg2dec. I still don't know how to detect if code
547 compiled with -mcpu=pentiumpro will run, since the cpuid arcanes are
548 quite obtuse to me. Perhaps we should also have a way not to load modules
549 if they have been compiled with a different CPU to avoid segfaults.
550 * Add check for MMX EXT extensions, which doesn't work, which is a good
551 thing since there is no MMX EXT IDCT yet :)
552 * Change for the forthcoming fast forward and slow motion support.
553 * Fixed the --aout, --idct and --yuv flags
554 * Updated manpage and --(long)help output to reflect that change
555 * Removed a few unneeded #includes here and there
556 * Cosmetic changes in error messages in input.c
557 * Now use of 64 bits offsets to parse the whole DVD. So we have all the
558 available information
559 * Fixed a bug in parsing of VTS attributes
560 * Fixed a bug in input.c that made input plugin initialize even though
561 no stream is reachable (thanks Sam)
562 * Merged the YUV plugins in the same directory to avoid too much code
564 * YUV transformations now use the new module API ; now only the vout
565 and interface still depend on the old plugin API
566 * Changed TestMMX to TestCPU because we will be able to test for other
567 specific extensions (3DNow, SSE) for the forthcoming IDCT we'll
568 borrow to mpeg2dec (as usual :P)
569 * Don't show "hiding module" messages anymore except in debug mode
570 * Swapped C IDCT and Classic IDCT scores since the classic one seems
571 to be faster ; anyway you should use the MMX one
572 * Fixed a Makefile bug under BeOS
573 * Tried to fix the cpuid code so that it compiles under BeOS (Polux, can
574 you test it when you have time ?)
575 * Fixed a bug in the frame rate handling ;
576 * Fixed a bug in the DTS/PTS ordering. Our pts are _at last_ accurate.
577 * Finally fixed repeat_first_field and co. (pas encore tout compris...)
578 * Implemented video_parser bitstream callback for PTS/DTS.
579 * Fixed close button support in SDL
580 * Fixed --width and --height support in SDL
581 * Fixed the bug-that-made-the-vlc-segfault-on-exit, which means that
582 more than ever, « le client ne segfaulte pas ».
583 * There was still a problem upon quitting: sometimes the null packet
584 wasn't big enough to reach a decoder breakpoint, so I now create 10
585 of them (since I can't make it bigger) to be sure. Meuuh, what do
587 * Fixed the Makefile to spare a few variables here and there.
588 * Reduced module hide delay, removed loading of the audio output
589 plugins since they are now modules.
590 * Changed a few intf_Msg to intf_DbgMsg, and added "vout:", "intf:",
591 and so on in a few other messages.
592 * Removed unused includes in the idct modules.
593 * Correction of bugs in ifo parsing. Now the structures should be well
594 initialized. It remains some segfaults but it globally works.
595 * DVD mode is enabled with option --dvd. For the moment, it only read
596 the first vts and find the movie if it is at the beginning of the title
598 * Beginning of dvd_input. Parsing of ifo file almost completed.
599 * The IDCT functions are now located in modules : the classic IDCT,
600 our optimized IDCT, and MMX IDCT.
601 * Cosmetic changes for modules (pf_* instead of p_*)
602 * Fixes to the BeOS and dummy modules
603 * Changed default values :
604 INPUT_PTS_DELAY down to 200 ms ;
605 video heap down from 10 to 5 pictures ;
606 decoder fifo size from 1023 to 511 PES ;
607 * Fixed various bugs in 32 bit-versions of input_ext-dec.h ;
608 * Fixed a bug in GetChunk() ;
609 * Renamed GetByte, GetWord, ShowWord to _GetByte, _GetWord, _ShowWord ;
610 * Moved decoder_fifo-specific code from programs.c to dec.c ;
611 * Fixed bugs in program.c that prevented vlc to close all decoders ;
612 * Gave sam a lesson for the use of the bitstream in spu_decoder.c :ppp ;
613 * Made the video parser unlock the reference pictures before quitting
614 (still one left, yaknow why ?)
615 * Destroy fifo mutex and cond variables _after_ they are used for
616 the last time. henri, that'll be one binouze.
617 * Attempt to port the BeOS audio plugin to the new module API. Will
618 probably need a few fixes to work or even compile.
619 * Ported the alsa plugin to the news vlc module API
620 * Fixed 32 bits bitstream bugs.
621 * Moved the MPEG audio decoder to the new bitstream
622 * Cleaning in the SPU decoder.
623 * Moved swab32 from input_ext-dec.h to common.h. We probably won't need
624 it anymore really soon, since ntohl() and htonl() seem to be properly
625 optimized when gcc is passed the right optimization flags.
626 * Fixed GetBits32 and RemoveBits32. I know the #ifdefs are useless since
627 we only support u32 words, but it's a safe reminder. Comments appreciated
628 on this fix since I may have b0rked something -- it runs well here though.
629 * Changed code for handling b_die in bitstream ;
630 * Moved input_ext-dec.h to input.h ;
631 * New input_NullPacket function ;
632 * Fixed init bugs in input and vpar ;
633 * Placed a callback to the decoder in the bitstream structure ;
634 * Fixed a purify bug in input_ps.c ;
635 * Added -mcpu=pentiumpro in the Makefile.
636 * Complete commenting of modules_core.h and small modifications
637 * Separated MODULE_CONFIG_START and ADD_WINDOW (Henri, beware)
638 * Fixed a very, very old bug that caused namespace collision between
639 plugins (Henri, beware: call your aout_getplugin function like this,
640 not alsa_aout_getplugin)
641 * Removed the Debian specific clean rules from the Makefile, since they
642 are already handled by the debian/rules script.
643 * Tidied a few compilation rules (-lfoo should always be at the end)
644 * Added 8bits palette SDL support.
645 * Fixed a warning under FreeBSD (dlerror() is a const char*, not a char*).
646 * Made configure script look for the bswap assembly instruction (using
647 AC_TRY_COMPILE makes sure the compiler will really accept it).
648 * Fixed colors' bug (TODO: write a function in vout that recalculate colors
650 * Cleaning of the fullscreen switch, still sucks but the surface is not
651 reallocated and that's good (thanks to the magic function
652 SDL_WM_ToggleFullScreen provided by sdl library :).
653 * Added a missing mutex_unlock in video_output.c
654 * Moved a mutex_destroy after the thread cancellation to prevent
656 * Added a missing #ifdef in intf_msg.c which prevented compilation
658 * Fixed a bug in the input that prevented to quit properly in certain
659 cases (some ES were not deleted because their index was skipped when
660 the former one was deleted, well Meuuh should know what I mean)
661 * Cleaning of SDL Lock/Unlock Surface.
662 * All plugins now compile with -fPIC.
663 * Made the audio_output API a bit simpler.
664 * Got rid of modules_config.h.
665 * Fixed `make install' rule.
666 * Fixed warnings in the MMX YUV compilation.
667 * Probably fixed a bug in the input : pp_foo structures were free()d at
668 the end, but this was useless since the last call to realloc() is
669 equivalent to free(), and two consecutive calls to free() aren't a
671 * We check that the version number match and that we don't already have
672 a module by that name when loading a new module.
673 * All public module_* functions now properly lock the module bank.
674 * The audio_output now uses the new module API ; EsounD and DSP modules
675 have been ported, which should be enough for Henri to port the ALSA one.
676 * Added vlc_mutex_destroy and vlc_cond_destroy function, for pthreads.
677 Used them before quitting, every lock and cond is destroyed
678 * Checked the return value of malloc and realloc in input_programs
679 * Fixed compilation pb under solaris 2.6
680 * Should compile & run on Solaris with ./configure --disable-dsp
682 * Removed most SYS_SOLARIS #ifdef's in favour of more generic tests
683 * Updated example ./configure line in INSTALL file
684 * Now we only load modules that end with ".so"
685 * null module is compiled by default
686 * Fixed initialization of payload_start and payload_end
687 * --enable-sdl and some others are now --with-sdl[=name] to supply an
688 optional library name ;
689 * Deleted all unnecessary #include <sys/uio.h> ;
690 * /usr/include is now searched when looking for libraries and headers.
691 * src/misc/modules.c is in a workable state now.
692 * Splitted modules.h into modules.h and modules_core.h to enable
693 clean compilation of the Null Module.
694 * Added the Null Module, the module that does nothing but that is going
695 to be of great help for debugging my module code.
696 * Plugins are now called modules, because we will be able to compile
697 them either as a dynamic plugin, or within the program. And, more
698 important, I can commit this without having to break the vlc :)
700 * video_output.c : compute picture size even if b_need_render == 0;
701 * Fixed a deadlock (the vout unlocked a mutex locked by another thread,
702 grrrr, I'll kill someone) ;
703 * Put config.h in front of others in audio_decoder.c.
704 * Better display of the fps.
705 * Removed i_iovec_start and i_iovec_end. Used i_data instead
706 * Fixed THX Cimmarron bug (it was _not_ a synchro bug).
707 * Fixed a bug in the DTS/PTS parsing ;
708 * Fixed a bug in vpar_headers.c synchro handling introduced before ;
709 * Enhanced synchro's handling of dates and frame structure changes.
710 * Fixed a bug in the PSM decoder.
711 * We now read the DTS (but we don't use it for the moment).
712 NB : b_has_pts has disappeared for brevity reasons, use i_pts != 0 instead.
713 * New synchro statistics and warnings.
714 * Avoid calling SafeRead() with a null packet size.
715 * Use of ptrdiff_t whenever necessary (IA-64 port) ;
716 * Changed behaviour of preparsing code, faster startup ;
717 * Fixed DecodePSM(), cannot test ;
718 * Cleaned up ParsePES(), fixed a bug which could reject very small but
720 * Fixed cosmetic bugs in vpar_synchro frame_rate display.
721 * Changed subtitles palette.
722 * SPU decoder now uses Meuuh's GetChunk() code.
723 * Lots of cleaning in the SPU decoder.
724 * Message queue is flushed before we spawn input.
725 * Fixed so that it compiles with VDEC_SMP (no good sync yet though).
726 * Using i_id instead of i_stream_id whenever possible ;
727 * Fixed a bug in -c and -s options.
728 * Fixed a compile pbm in debug mode (f34r d4 1-line fix)
729 * Fixed AC3 and SPU PES reading (ph34r da one-byte patch)
731 * No need to add "\n" at the end of intf_*Msg() messages anymore.
732 * Moved input_DecodePES() to input_dec.c ;
733 * Fixed an segfault in input_programs.c ;
734 * Added -fomit-frame-pointer optimization.
735 * Fixed a *major* memory leak in the pre-parsing code. Hopefully it should
737 * New decoder spawning API input_dec.c ;
738 * Moved p_input->pp_es -> p_input->stream.pp_es and clean up of
739 input_programs.c & co ;
740 * Fixed memory leaks.
741 * Moved video_decoder's headers from include/ to src/video_decoder.
742 * Temporarily removed b&w kludge.
743 * Splitted up p_method_data/p_plugin_data ;
744 * Cleaned up input_ts.c, added it into the Makefile.
745 * Fixed various memory leaks.
746 * Removed all arbitrary limits on the number of elementary streams.
747 * Removed b_die and b_error from all decoders (obsoleted by decoder_fifo_t).
748 All decoders should now exit cleanly (if it's not the case, it should be
749 referenced as a bug).
750 * Fixed a bug which prevented the input to exit normally (non-selected
751 ES in the pp_selected_es array).
752 * Added netlist support.
753 * Added U8_Mono audio output
754 * Fixed "-a [ mpeg | ac3 | lpcm | off ]" option
755 * Only pre-parse the first 32 MB of data.
756 * Added -a, -c and -s options. (-a doesn't work but I will let the people
757 who thought it would be cleaner to put config in environment variables
758 correct what's wrong in my code).
759 * Now we only try to open plugins which are existing files
760 * Big cleanup of the PS input plugin ;
761 * Fixed a bug in AC3 initialization ;
762 * PS streams are now pre-parsed (this can take a while) if possible ;
763 * Move #define from audio_output.h to config.h
764 * Change vlan_server_ip to vishnou's ip (but vlans not working yet)
765 * GetChunk() : reads n bytes from the elementary stream and places them
766 in a big buffer (a gift for Sam).
767 * Quantic start in fullscreen fixed.
768 * Input-II now correctly handles private stream 1 (AC3, DVDSPU).
769 * Split the audio decoder into adec_generic, adec_layer1 and adec_layer2
771 * Added SDLYUV support,
772 * Fixed the ratio/position problem in YUV,
773 * We now display CPU usage statistics for each thread.
774 * Additional fix for Layer 1 mono
776 * Fixed audio syncword detection for mpeg 1 streams (hopefully)
777 * Fixed Layer 2 Mono decoding.
778 * Hardware YUV overlay (SDL) with real colors ;p It may suck for non
780 * Removed vout code found in intf file to support fullscreen switching.
781 Now only vout_SDL updates SDL data and intf only switch flags such as
782 b_reopen_display and b_fullscreen in p_vout->p_sys.
783 * Fixed a var name typo in input_programs.c which prevents vlc from
784 compiling with --enable-debug option. (i_es_pid -> i_es_id :)
785 * Autodetection of Overlay support
786 * Fixed support for broken MPEG-1 files.
787 * Cleaned up program and ES management by using input_programs.c whenever
789 * Cleaned up decoder spawning.
790 * Enhanced handling of stream discontinuities.
791 * Fixed two typos in the Makefile (sam you owe me at least one beer)
792 * Moved b_discontinuity to pgrm_descriptor_t, cleaned up CRDecode
793 (needs some more cleaning for discontinuities)
794 * Added pf_new_pes in plugins
795 * Fix in the SCR parser for high values.
796 * Fixed a bug with DVD's SCR (too close from the PTS).
797 * Generation d'un makefile presque correct pour les vieilles versions de make
798 Nettoyage: gestion des dependances pour les plugins, suppressions de pas
799 mal de redondances, options de compilations coherentes, etc...
800 * Code to manage es_descriptors and program_descriptors, from benny's
802 * VLAN support modified.
803 * We now correctly parse MPEG-1 SCR and there is no need to kludge to read
804 the stream at the right pace.
805 * Fixed a bug in the synchro with non-P5/B1 streams.
806 * Support for MPEG-1 .mpg files.
807 * Fixed a bug in the synchro with non-P5/B1 streams.
811 Wed, 31 Jan 2001 04:30:37 +0100
813 * Version 0.2.0 pour la Linux Expo
814 * Backport of the sdl plugin (minor correction in video_output as I made
816 * Ajout des options --fullscreen et --overlay
817 * Added hardware YUV overlay support (SDL). Huge performance
819 * Fixed MPEG audio decoding for streams without b_data_alignment flags.
820 * Fixed a bug in the SPU decoder which caused a segfault.
821 * Support for 8bit soundcards.
822 * YUV support for SDL.
823 * We now open /dev/dsp in non-blocking mode.
824 * Frame dropping enhancements for very slow machines.
825 * Fixed a buffer overflow under BeOS.
826 * Miscellaneous framebuffer fixes.
827 * Miscellaneous SDL fixes.
828 * MMX Y4Gray16 colorspace transformation.
829 * Optimized grayscale mode.
830 * Fixed volume control.
832 * Minor changes in the Debian files.
834 * Fixed MPEG1 video decoding. We don't read MPEG 1 PS files for the
836 * Fixed a 100% cpu usage bug, in the dummy aout.
837 * Added a 'f' shortcut to switch between Windowed and Fullscreen
839 * Added --broadcast option for network input.
840 * Screen is now emptied when framebuffer output exits.
841 * Totally new frame dropping algorithm.
842 * Fixed a bug in video_ouput.c which trashed more late pictures than
844 * Fixed the DEBUG mode in the Makefile.
845 * Fixed a bug in mwait() which made us wait too long.
846 * The video_decoder can now be split into several threads to take
847 advantage of the SMP machines.
848 * Added --enable-debug, --enable-stats, and --disable-optims in the
850 * Added alsa audio support (plugin)
851 * vlc is now compiled without the STATS mode by default.
852 * Fixed a bug which made frames go backwards with some displays (the
853 video_decoder thread is now niced).
854 * Added intf_WarnMsg(), and made use of it in the most needed places.
857 Mon, 28 Aug 2000 02:34:18 +0200
859 * fixed the support for field pictures, which involved a few dozens
860 bugs in the video parser and video decoder.
861 * put names of authors under a lot of source files, for historical
863 * fixed another input_file exit bug for the beos version.
864 * fixed the aliases install.
865 * renamed an inconsistent variable in src/input/input_file.c.
866 * added support for I+ synchro (all Is and the first P).
867 * fixed a motion compensation bug which generated some distortion
869 * fixed a motion compensation bug for skipped macroblocks.
870 * fixed a synchro bug for field images.
871 * cleaned Octplane's crappy indentation.
872 * fixed the --server option which didn't work if a ~/.vlcrc existed.
875 Tue, 22 Aug 2000 01:31:58 +0200
877 * fixed the sound issue under beos.
878 * fixed a bug that was making the crash randomly under beos.
879 * fixed a bug that was exhausting system ressources under beos.
880 * improved the cond_var for beos.
881 * added support for the SDL vout : the --display fullscreen allows
882 fullscreen when possible. Disabled by default.
883 * added sdlvlc (which probably should start in fullscreen, no ?)
885 * updated debian directory to build vlc-sdl.
886 * removed CCFLAGS flags which were improperly used.
887 * added hints for powerpc build.
888 * fixed the input_file exit bug.
889 * fixed a Makefile bug which removed the CVS directory.
890 * removed the frame statistics output.
891 * removed a verbose message in intf_sdl.c.
892 * added a few sanity checks in the audio mpeg and ac3 decoders.
893 * temporarily got rid of vlc.channels.
894 * added notice in debian/control about unencrypted DVDs.
895 * fixed PowerPC .deb build.
898 Wed, 16 Aug 2000 01:07:14 +0200
900 * removed all "*vlc" aliases except "gvlc" and "fbvlc". The other sucked.
901 * new --synchro flag which lets you force which images are decoded.
902 * removed an unused variable in the MMX YUVs.
903 * fixed 32bpp MMX YUV, made the comments clearer, removed an emms.
904 * now scaling is on by default, so that people won't tell that the vlc
905 cannot do scaling :-)
906 * fixed a few long lines.
908 * fixed the fscked up Bresenham algorithm in all YUV functions.
909 * fixed a dumb bug in the Makefile that prevented inclusion of the
910 -march=pentium directive. thanks Meuuh, blame sam.
911 * fixed a warning in main.c.
912 * separate Debian packages.
913 * added request for ALSA support in the TODO list.
914 * changed "pentiumpro" to "ppro" in the ./configure, it was misleading.
917 Tue, 8 Aug 2000 11:24:01 +0200
919 * plugin detection now works
920 * "gvlc", "fbvlc", "ggivlc" aliases now work
921 * fixed functions that weren't properly inlined
922 * removed bloat from the MMX YUV plugin
923 * vlc.init becomes ~/.vlcrc
924 * removed float operations in the video decoder, and all emms asm functions
925 * borrowed linuxvideo's MMX motion compensation
926 * fixed an undefined symbol in the MMX YUV plugin
929 Thu, 20 Jul 2000 15:14:06 +0200
931 * new bitstream syntax and slight performance increase
933 * removed the sample code from the reference decoder
936 Wed, 12 Jul 2000 01:24:40 +0200
939 * .deb is now more lintian-friendly
940 * fixed vlc.spec to install nicely
941 * PLUGIN_PATH and DATA_PATH now in include/*.h
942 * removed a few useless warning messages
943 * removed remaining header stuff related to the old non-free decoder
944 * fixed the MGA build (doesn't work yet, though)
946 * updated the INSTALL document
947 * plugin auto-detection
948 * fixed a few misspellings in the code
949 * removed the default --enable-ppro option because it didn't work on K6-2
950 * the framebuffer client now leaves the console in a working state
951 * the dithered 8 bpp YUV transformation works again (blame bbp !)
952 * the YUV transformations are now plugins as well
953 * alternative symlinks like gvlc, fbvlc are now created at compile time
954 * borrowed libmpeg2's GPLed MMX YUV transformations (16 and 32 bits)
955 * fixed an endianness problem which occured on iMacs
956 * fixed the build for the Mandrake distribution
959 Sun, 18 Jun 2000 18:54:48 +0200
961 * fixed Makefile.in for debug version
962 * caught Delete Window event in Gnome and X11 modes
964 * GGI output now works
965 * fixed a segfault on exit for the Gnome plugin
966 * fixed compile problems for BeOS
967 * sound support almost works under BeOS
968 * fixed a warning in ac3_exponent.c
969 * automatic support for .rpm and .deb building
972 Sat, 17 Jun 2000 03:35:02 +0200
974 * fixed a bug preventing to quit when run with no arguments
975 * new VLAN changing code
976 * created the ChangeLog file :)
979 Thu, 15 Jun 2000 20:48:54 +0200
981 * first public release