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