summaryrefslogtreecommitdiffstats
path: root/DOCS
diff options
context:
space:
mode:
authorarpi_esp <arpi_esp@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-02-24 20:28:24 +0000
committerarpi_esp <arpi_esp@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-02-24 20:28:24 +0000
commitd34041569e71fc9bd772354e94dc9d16061072a5 (patch)
tree8f481cae1c70f32d1756fbe5f39000577b73042d /DOCS
parente95a95ece09bac96bdfd37322f96c6f57ef79ebc (diff)
downloadmpv-d34041569e71fc9bd772354e94dc9d16061072a5.tar.bz2
mpv-d34041569e71fc9bd772354e94dc9d16061072a5.tar.xz
Initial revision
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'DOCS')
-rw-r--r--DOCS/AUTHORS78
-rw-r--r--DOCS/ChangeLog479
-rw-r--r--DOCS/ChangeLog.mpeg232
-rw-r--r--DOCS/INSTALL29
-rw-r--r--DOCS/LIRC54
-rw-r--r--DOCS/MPlayer-FAQ120
-rw-r--r--DOCS/MTRR38
-rw-r--r--DOCS/OpenDivX30
-rw-r--r--DOCS/README271
-rw-r--r--DOCS/SOUNDCARDS21
-rw-r--r--DOCS/SPEED40
-rw-r--r--DOCS/TODO30
-rw-r--r--DOCS/inttypes.h13
-rw-r--r--DOCS/mplayer.1190
14 files changed, 1625 insertions, 0 deletions
diff --git a/DOCS/AUTHORS b/DOCS/AUTHORS
new file mode 100644
index 0000000000..d1ae5a9737
--- /dev/null
+++ b/DOCS/AUTHORS
@@ -0,0 +1,78 @@
+ AUTHORS:
+ ~~~~~~~~
+
+====================== The MPlayer project: ===========================
+
+Arpád Gereöffy (A'rpi/ESP-team): <arpi@thot.banki.hu>
+- player code (mpeg stream demultiplexer and avi/asf parser, A-V sync, seek...)
+- mp3lib, based on mpg123 sources [MP3 audio decoder]
+- getch2 [keyboard handler]
+- some changes in libmpeg2 code (progressive frames, bitrate & fps support)
+- libvo improvements: adding OpenGL support, bugfix in mga driver...
+- YUY2 support into mga_vid driver (for DivX/MPEG4)
+- YUY2, RGB/BGR 15/16/24/32 support into libvo drivers (for AVI codecs)
+- scripts in the TVout directory (allows using TVout on Matrox G400 DH on fb)
+- hacking DivX/Mpeg4 VfW codecs to get YUV output
+- opendivx decoder speed optimizations (see opendivx/ChangeLog)
+
+Zoltán Ponekker (Pontscho/Fresh!): <pontscho@makacs.poliod.hu>
+- configure script and Makefiles for easy compile
+- GUI system (coming soon!)
+- 3DNow! support into mp3lib
+- various X11 driver changes (keyboard handling, fullscreen, bpp detect, etc)
+- libvo: adding xmga driver (similar to Xv but works under X3.3.x)
+
+Gábor Lénárt (LGB): <lgb@supervisor.hu>
+- testing and some improvements in mpeg player's user interface (options)
+- ./configure script improvements
+
+Gabucino: <gabucino@k2.jozsef.kando.hu>
+- web design, docs improvements/updating
+- testing, (Open)DivX encoding, picture quality comparsions
+
+Dariusz Pietrzak: <dariush@ajax.umcs.lublin.pl>
+- mailing lists hosting (see README for details)
+
+Main testers:
+ Gabucino
+ Balazs Tibor (Tibcu)
+ Sasi Peter (SaPe)
+ Christoph H. Lampert
+
+========================== The Codecs: ===================================
+
+Aaron Holtzman: <aholtzma@engr.uvic.ca>
+- ac3dec (and libac3) author [AC3 audio decoder]
+- mga_vid driver [Matrox G200/G400 YUV Back-end Scaler]
+- mpeg2dec [Fast MPEG1/MPEG2 video decoder, currently used in player]
+
+Michel Lespinasse: <walken@zoy.org>
+- did large libmpeg2 changes for better speed and mpeg conformance
+
+Eugene Kuznetsov: <divx@euro.ru>
+- avifile author [AVI player library for linux, using Win32 VfW/ACM codecs]
+- technical help about AVI and ASF formats, and how to get YUV using VfW...
+
+Project Mayo: [http://www.projectmayo.com]
+- the OpenDivX codec authors
+
+Michael Hipp:
+- mpg123 author [free mpeg audio player, isn't used directly but in mp3lib]
+
+Mark Podlipec:
+- xanim author [i'm using its aLaw audio decoder]
+
+Jutta Degener and Carsten Bormann:
+- xa_gsm.c authors [MS-GSM audio codec]
+
+Their code is not used in current player version, but I've got some ideas or
+other technical help from:
+
+John F. McGowan http://www.jmcgowan.com/
+- AVI FAQ author/collector. [site with many useful docs on codecs and avi fmt]
+
+Dirk Farin: <farin@ti.uni-mannheim.de>
+- dvdview author [MPEG1/MPEG2 video decoder, used in v0.5-v0.8]
+
+Adam Williams: <broadcast@earthling.net>
+- libmpeg3 (and xmovie) author [MPEG1/MPEG2 video decoder, used in v0.1-v0.4]
diff --git a/DOCS/ChangeLog b/DOCS/ChangeLog
new file mode 100644
index 0000000000..3daeaea322
--- /dev/null
+++ b/DOCS/ChangeLog
@@ -0,0 +1,479 @@
+ChangeLog:
+~~~~~~~~~~
+
+v0.12-pre1: [ not yet released ]
+ - ffmpeg included into source tree
+
+===========================================================================
+Note: If you've sent patches not applied in pre22, please send them again!
+/|\ (I've got tons of mails last weeks, and can't re-read all of them)
+/~\ Please include in the Subject: MPLAYER-PATCH
+===========================================================================
+
+*** 0.11 release is coming SOON!!! ***
+
+v0.11-pre25: small fixes again :(
+ - DOCS updated (email address changed from arpi@* -> maillist)
+ - LIRC fix, mplayer_lirc changed back to mplayer [Andreas Ackermann]
+ - stream.c: unsigned int fixes, required for some strange .asf files
+ - asfheader.c: using w=h=b=1 for audio_concealment_none
+ - VCD-related stuff moved from stream.c to vcd_read.c
+
+v0.11-pre24: small fixes again :(
+ - DOCS/LIRC changed: users *must* enable lirc support manually, it is
+ not autodetected yet. (./configure --enable-lirc)
+ - the {prefix} bug fixed by Gabucino
+ - added manpage by Gabucino
+ - manpage -vo fixes by A'rpi
+
+v0.11-pre23: lirc support, text updates, mailinglists
+ - added "-ni" option to force usage of the non-interleaved AVI parser
+ - DOCS/* updated by Gabucino
+ - new homepage by Gabucino
+ - mplayer users & announce mailing lists by Dariusz Pietrzak (see README)
+ - LIRC support by Andreas Ackermann (see DOCS/LIRC)
+ enable with ./configure --enable-lirc
+ TODO: ./configure should detect LIRC installed and better Makefile handling
+ - added AVI_NINI parser for broken (no index) non-interleaved files
+
+v0.11-pre22: last fixes, release is coming soon!
+ - non-interleaved avi EOF bug fixed [thanks to DC-1 for help]
+ - "You" strings in Makefile after make dep bug fixed... [thx to DC-1]
+ - SDL disabled by default. You have to ./configure --enable-sdl to enable.
+ - homepage updated by Gabucino
+ - homepage updated by A'rpi
+ - FAQ updated by A'rpi
+
+fork() -> 0.12pre1
+
+v0.11-pre21: mpeg1 pp, stereo fix
+ - "Skip chunk xxxx" messages moved from -v to -v -v -v debug level...
+ [thanks to Christoph H. Lampert]
+ - divx postprocess filter works for mpeg1 files too! (-divxq 1/3/7/31)
+ - mpeg layer-2 audio fixed - it's stereo again!!!
+ - audio select() detection: if detected audio buffer size == 0, then
+ exit with message "recompile mplayer with #undef HAVE_AUDIO_SELECT"...
+ - syncfb driver added to the source tree, under drivers/
+ (it's very similar to mga_vid, but has syncronization to screen and
+ de-interlace features)
+ - draw_slice in syncfb finished for G400 cards (plays mpeg 1/2, opendivx)
+ (de-interlacing has been disabled, because it's buggy now)
+
+v0.11-pre20: NI-AVI support, small fixes & patches...
+ - asf parser: flag 0x40 (explicit packet size) implemented [Marvin]
+ - new option to select DSP device: -dsp (default: /dev/dsp) [Pontscho]
+ - option -o changed to -vo
+ - ./configure: applied patches [LGB,Ian Kumlien,Magnus Pfeffer]
+ - avi chunk_id->ds mapper moved to demux_avi_select_stream()
+ - added non-interleaved .AVI parser
+ - added non-interleaved .AVI detection (if a_pos-v_pos distance > 1MB)
+
+v0.11-pre19: small fixes...
+ - vo_xmga.c: G200 draw_slice fixed
+ xmga + mga: common part (draw_frame & draw_slice) moved to mga_common.c
+ - some independent code (asfinfo.c and GL-test) moved to the new TOOLS subdir
+ - movinfo.c added to TOOLS (small util to dump .mov file structure)
+ - AVI & ASF stream id detection changed: now using IDs from the header
+ (but still can be overriden by -aid or -vid) [Christoph H. Lampert]
+ - native MS-GSM audio codec ported from avifile source (-afm 6)
+ [thanks for the testfile to Christoph H. Lampert]
+ - README updated (input & codec lists)
+ - implemented .asf audio descrambling [Dirk Vornheder & Einon]
+ -> that weird_al_yankovic asf is not so weird now :)
+ - AUTHORS file changed
+
+v0.11-pre18: patch release :)
+ - skip broken .asf fragments (for better seeking)
+ - seeking code cleanup in sources (now it's in a switch(){})
+ - opendivx encoding bitrate option changed from -divxq to -br
+ (for the divx -> divx re-encoding)
+ - TO DO section moved to file TODO
+ - applied ./configure and Makefile changes patch from LGB
+ - libvo function changes by Pontscho: x11 (with -fs), xmga (bugfixed!)
+ - libvo: driver sources renamed from video_out_*.c -> vo_*.c
+ - libvo: added uninit() function to drivers
+ - libvo: fork()'ed X11 eventhandler for x11 and xmga drivers [me & Pontscho]
+ (gl and xv version is coming soon!)
+ - libvo: sdl driver now closes SDL at QUIT...
+ - small english fixes (docs & messages) [Balazs Tibor]
+
+v0.11-pre17: fixes
+ - asf "missing video stream" fixed (stream id & 0x7F) [Christoph H. Lampert]
+ - added GL-test directory, it contains source and compiler script of a
+ very simple open-gl texture updating (glTexSubImage) test program.
+ if it runs well, then mplayer -o gl should work too.
+ it works on G400+Utah-GLX, but segfaults in the G400 driver of X 4.0.2/DRI.
+ try it with different cards/drivers, and please report me the results.
+ - benchmarking in gltest.c: calculate fps and process times
+ - .asf seeking v0.01-pre0.1 :)
+
+v0.11-pre16: ACM fixed
+ - Win32/ACM audio codec fixed (most important for asf with divx audio):
+ There was an output buffer size problem with the Win32/ACM audio codec
+ at low bitrates (usually used for .asf files with divx audio)
+ Input and output buffer sizes are now queryed, problem solved :)
+ - SDL support compiling hint by Michael Durller added to the FAQ
+ - opendivx support in .asf files [Gérard Lantau]
+ - ./configure & Makefiles patch by Aaron Hope applied.
+ (adds --with-win32libdir and fixes --with-x11libdir)
+ - ./configure fixed, now it defaults to /usr/lib/win32 if detection failed
+
+v0.11-pre15: asf sync fixed
+ - asf parser: now supports other than 0x5D segments [Dirk Vornheder]
+ - new asf PTS reading: sync works now, including fps...
+ (-fps no longer required!) [thanks again to Eugene Kuznetsov for docs!]
+
+v0.11-pre14: small fixes, asf sync v0.1 :)
+ - version number incremented :)))
+ - libvo / Xv driver swapped Red-Blue fixed
+ - asf timestamps implemented - now asf A-V should be in sync if you
+ specify the correct fps at commandline (-fps), +-1 fps allowed...
+ [i haven't yet found method to get fps out from asf headers :(((]
+ - some error and consistency checking into demux_asf
+ if you see many warning! messages playing an .asf file, then contact
+ me and upload the file (first 1MB is enough if it represents the problem)
+ Don't forget: there is no public doc about the .asf file format, so
+ everything we know is suspected and can be wrong... without your help
+ we never will have working .asf player...
+ - asf fragment offset checks disabled for grouping...
+
+v0.11-pre13: libvo changes, mpeg bitrate, vcd fix, asf grouping
+ - libvo: draw_slice() interface changed, now it has src stride[3] and
+ destination rect dimension (w,h,x,y)
+ It's able to blit whole frames, not only 16-pixel slices...
+ - libmpeg2 and opendivx codec changed to use new draw_slice()
+ -> opendivx extra 64-pixel width band at right disappeared!
+ - mpeg bitrate fix: if picture->bitrate==0x3FFFF (means "unspecified" ?)
+ then using standard VCD bitrate (75*2324 bytes/sec)
+ -> fixed seeking for those mpegs with "16MBit/s" bitrate...
+ - drivers/sis_vid: video4linux interface disabled
+ - broken VCD playing fixed: stream_reset shouldn't seek to 0x0...
+ [bugreport: Kang Sun]
+ - asf_parser: grouping implemented! [test file provided by Gabucino :))]
+
+v0.11-pre12: ./configure fixes, improved odivx-encoding, streaming fixes
+ - ./configure: using /tmp/main$$.c instead /tmp.main.c, and
+ remove file after tests [SaPe]
+ - ./configure: trying the gcc optimize options and fallback to 'pentium'
+ if fails (useful for people with old gcc and new cpu :))
+ - removed -fomit-frame-pointer from OPTFLAGS at config.mak
+ - version number incremented [Gabucino]
+ - odivx encoder fix: allow long (longer than xxxx.avi) destination filenames
+ (sizeof() changed to strlen()...) [Gabucino]
+ - avi writer - overwrite disabled (exits with error message if destination
+ file already exists...) [Gabucino]
+ - use -divxq to set encoding bitrate (in bits (no kbits!) default: 780000)
+ - no audio decoding if -encode option is used
+ - audio streaming disabled if -nosound specified (setting audio_id to -2)
+ - fast Mpeg-ES detection (doesn't read the whole Mpeg-PS file)
+ - compile-time option to disable using soundcard driver's select()
+ (requires for some people with buggy/pre-alpha/etc sound driver...)
+
+v0.11-pre11: streaming fixes, asf support pre, indeo5 fix
+ - asf/asfinfo.c improved: now it dumps streams to files - need testing!
+ (it's ready to be converted to asf demuxer and intergated into MPlayer)
+ - stream.c / stream_reset() fix: now it really seek back to 0 position!
+ - .asf file format detection added (no .asf reading yet!!!)
+ - .asf demultiplexer added, changes in demuxer.c to handle fragmented packets
+ > it plays .asf video well, but still has problems with divx/wma audio. :(((
+ - indeo 5 playing fixed (removed ICDECOMPRESS_UPDATE from flags)
+ - xmga resizing problems with some window managers, so default order is
+ changed xmga,xma... to mga,xmga,...
+ - found gcc bug: compiling MPlayer with flags
+ OPTFLAGS=-O -g -march=i686 -mcpu=i686 -pipe -fomit-frame-pointer -ffast-math
+ cause image sizes negating -> mga_vid kernel driver Oops... :(((
+ - runaway.bride.sample.avi seeking segfault discovered: AC3 resync fails :(
+ - improved signal handling: module name is now printed. audio_resync added.
+ - RGB opendivx encoding implemented, now AVI->opendivx is possible.
+
+v0.11-pre10: OpenDivX encoding, streaming fixes, avi seek fixes
+ - new libvo driver: odivx (OpenDivX File Writer)
+ - AVI file writting support, new option: -encode filename
+ to encode an mpeg/vob/vcd to opendivx:
+ mplayer file1.mpg -encode file2.avi -o odivx -nosound
+ (sound encoding/copy is not yet supported)
+ - libvo: default driver priority changed to: xmga,mga,syncfb,3dfx,xv,x11,gl
+ - avi writer: index support
+ - small fixes in avi writer to be compliant (adjusted chunk/list lengths)
+ - demuxer.c: stream buffering fixes:
+ - missing {} in mplayer.c occuring audio reads when has_audio=0
+ - reordered packet reader and pack count checks -> no more unwanted EOF
+ - added 4MB buffer memory usage limit to demuxed streams
+ - CPU flags in ./configure changed:
+ k7 -> k6 (current stable gcc doesn't supports k7)
+ 386,486 -> i386,i486 [Balazs Tibor]
+ - demux_avi: index check now accepts (raw.len+1)==idx.len [Balazs Tibor]
+ - FAQ added
+
+ ** Now we are ready with planned features & urgent fixes, **
+ ** it's time to final testing and then the 0.11 release!! **
+
+v0.11-pre9: OpenDivX fixes,speedup
+ - solved OpenDivX width problem (stride=width+(Quality?0:64))
+ now -divxq 0 works, and 0 is the default
+ - libvo call moved out from my_convert_yuv() so it can be measured (cpu %)
+ - IDCT code ported from libmpeg2 -> much faster OpenDivX decoding
+
+v0.11-pre8: SDL fixes, OpenDivX support
+ - added -I/usr/X11R6/include to libvo CFLAGS
+ - (removed later: applied libvo SDL driver fixes by Jeffrey Boser)
+ - OpenDivX support, initial hack, maybe not work for you...
+ (I need testfiles, I have just only one)
+ use -divxq option to adjust quality (1..29 works), 1=default
+
+v0.11-pre7: SDL support
+ - ported SDL driver from mpeg2dec/libvo (currect CVS)
+ (it's slower than internal X11 driver, but supports software scaling!)
+ - fixed SDL driver to support -fs and pass keyboard events
+ - SDL driver changed to support YV12 and YUY2 formats instead of IYUV
+ (now works with DivX files too)
+ - 'q' (Quit) disabled in SDL fullscreen mode (because it's impossible
+ to restore screen before exiting so it gets unusable state now)
+
+v0.11-pre6: audio fix
+ - fixed video_out_xv.c compiling problems [bugreport: Kalle Mellerup]
+ - modified audio playing: always keep buffer (both internal and card's)
+ filled using select() -> -alsa audio delays should be fixed.
+ - updated DOCS/AUTHORS and DOCS/README
+
+v0.11-pre5: xmmp audio support, applied Pontscho's libvo patch
+ - xmmp audio driver support by Arthur Kleer
+ - new video_out driver by Pontscho: xmga (Matrox G200/G400 only!)
+ It does same under X 3.3.x what Xv extension does under X 4.0.x!
+ (you will have a moveable/resizeable window but see an YUV video
+ overlay in it using color keying)
+ - added keyboard event support in X11 windows [Pontscho]
+ (using mplayer_[put|get]_key() in codecctrl.c)
+
+v0.11-pre4: x11 driver fixes, 15/16bpp support
+ - version in version.h fixed :))) [Pontscho]
+ - inttypes.h moved to DOCS/ (copy back to the root if you need it)
+ - depth calculation in vo_init() changed (Pontscho's version couldn't
+ make difference between 15 and 16bpp)
+ - x11 driver now uses vo_init() instead of get_depth()
+ - yuv2mmx: 15bpp not really supported -> removed from list, now
+ conversion is done (well) by the C code -> MPEG play in 15bpp works!
+ - avi playing support added in 15bpp (memcpy)
+ - avi playing support added in 16bpp (C 15->16 converter by me)
+ - avi playing support added in 16bpp (MMX 15->16 converter by Strepto)
+ - libvo/x11: yuv2rgb used MMX code on non-MMX CPUs too!!! fixed...
+ - all x11 modes tested (and mpeg/24bpp byteorder fixed):
+ MPEG: AVI/VfW:
+ 15bpp C convert memcpy
+ 16bpp MMX/C convert MMX/C convert
+ 24bpp C convert memcpy
+ 32bpp MMX/C convert memcpy / C conv.
+ => now all the movie types are viewable using the -o x11 driver!
+
+v0.11-pre3: mpeg fixes, fullscreen support
+ - vertical.mpg serious libvo (x11,gl) segfaults fixed:
+ yuv2rgb_mmx requires one more lines that vertical image size...
+ fixed (allocating memory for width*(height+1)). [bugreport: Gabucino]
+ - Pontscho's fullscreen patch applied!
+ Using option -fs will maximize window size (for all resizeable drivers
+ including mga!) and disable window decorations (x11,Xv,gl only)
+ - simple inttypes.h included for libc5 (and glibc2.0 too?) users
+ - homepage updates (links changed ftp->http)
+
+v0.11-pre2: better user messages, mp3 codec selection, demuxer changes
+ - w32codec.zip restored at the FTP site (somehow it damaged...)
+ - added version.h, and used its content everywhere
+ - 'premature end-of-file' problem fixed: freeing audio buffers and
+ setting d_audio->id=-2 if has_audio==0 [bugreport by Dmitri Pogosyan]
+ - some more messages added if verbose>=1
+ - demuxer.c: error message printed if A or V chunk buffer is full
+ 'mplayer test.avi -aid -2' still not works without option '-nosound'
+ - adding new config.h option to set default MP3 audio codec (mpg123/l3codeca)
+ ./configure selects mp3lib only if you have 3Dnow [idea: Gabucino]
+ - automatic fallback to mp3lib/mpg123 if l3codeca.acm can't be loaded/inited
+
+v0.11-pre1: AVI sync fixes
+ - AVI audio seeking improvements: now using nBlockAlign value to seek
+ inside the chunk, so divx audio works without big delays!!!
+ - AVI PTS calculation modified: counting video PTS when skip_video_frames>0
+ so new audio PTS values will be correct. Solved many sync probs!
+ - A-V sync with AVI files fixed!
+ Now only the Desperado-trailer has 1.0 sec delay after seeking.
+ - fixed AVI sync in -bps mode too! :) (perfect except that Desperado avi)
+
+v0.10: The new year release!
+ - testing
+ - docs changed
+ - it's time to release and remove the old buggy 0.09 version...
+ - release!!!
+
+v0.10-pre8: libvo/x11 changes
+ - libvo: x11/xv driver separated to x11 and xv drivers
+ - libvo: DUMMY_VO_FUNC removed from driver sources
+ - libvo: default driver order changed, because some users with software-only
+ opengl though that this 'slow' player can only play at 1-3fps :)
+
+v0.10-pre7: libmpeg2 interface changes, display size/area changes, AVI fixes
+ - libmpeg2/decode.c modified:
+ - removed unused OMS and mpeg2dec stuff
+ - decode_data rewritten, now works like parse_es.c
+ => doesn't copy any data -> faster and less memory usage
+ - mplayer.c sends code 0x1FF after every frame, so libmpeg2 knows
+ when has to display it
+ - mplayer.c: in_frame flag fixes, didn't work well with mpeg2 streams
+ (because there is a 0x1B2 chunk between 0x100 and 0x101)
+ - 'picture' changed from static to shmem-allocated
+ -> better picture after codec restart (tested with JapAd.mpg)
+ -> keep information of the header changes (after init)
+ - mpeg image size changed, now only the real part of frame is displayed
+ (no more green strip at the bottom)
+ - picture struct: new fields: display_picture_width/height
+ - image buffer allocation (shmem) is done by decode.c instead of libvo
+ - new option: -xy <value> (resize both x/y direction)
+ if value<=8 -> x_scale = y_scale = value
+ else -> x_size=value y_size=aspectratio*x_size
+ - mplayer.c: video output moved out from avi/mpg init sections and
+ now it's common code (added movie_size_x/y variables and out_fmt global)
+ - new keys:
+ ESC => quit
+ + and - => adjust audio delay +- 0.1 second
+ k => kill/restart the mpeg codec process (for testing)
+ - codec control interface changed: wait for syncword after (re)start
+ to avoid receiving old frames => it's stable again!
+ - removed (now unused) allocate/free image buffer code from libvo
+ - mplayer: new internal variable for video format: has_video
+ 0 = none (unused yet)
+ 1 = mpeg 1/2 video
+ 2 = win32/VfW video codec
+ - config.h has defaults for bps-based AVI sync and ALSA timer code options:
+ #undef AVI_SYNC_BPS => now it's disabled by default!!! use -bps to enable
+ #define ALSA_TIMER => now it's enabled by default!!! use -noalsa to dis.
+ - help updated
+ - prints max compressed framesize at exit (both avi & mpeg)
+ - AVI audio seeking fixed: some ACM codecs (divx audio and ms-adpcm)
+ can't seek inside a chunk, they are only able to play whole chunks.
+ Current audio seeking has changed to seek inside the chunk only if the
+ codec supports it (only internal codecs and ACM/mp3 allows it).
+ - AVI: audio delay correction if can't seek inside the chunk
+
+v0.10-pre6: mpeg signal & EOF fixes
+ - ./configure: k6_mtrr (2.4.test11+) added [Pontscho]
+ - `term destroys if mplayer (mpg) called from mc.ext` bug fixed:
+ added sighandler to the 3rd process (mpeg codec) to avoid sig. recursion
+ - better output at exit (handled now by exit_player())
+ - mpeg EOF problem (codec restart) fixed: added EOF detection to parse_es.c
+ - internal flag 'current_module' added to get more info at segfaults
+ (contains module number where the segfault occured)
+ - audio detection changed: using afm=4 (Win32/ACM) for MP3 audio (AVI files)
+ (you MUST have l3codeca.acm at /usr/lib/win32, or you have to use '-afm 1')
+
+v0.10-pre5: flipping fixed
+ - AVI image flipping reworked:
+ - new flag: avi_header.flipped, TRUE if upside-down
+ - image flipping code removed/disabled from libvo modules
+ - duplicate flip_page() calls removed (overload with x11 and mga)
+ - aLaw audio codec (AVI id 0x06) added (uses code from xanim source)
+
+v0.10-pre4: test release, small fixes
+ - video_out driver <-> codec incompatibility message changed
+ - fixed the config.format bug in drivers/mga_vid_test, so it works again!
+ [thanks to David Whysong]
+ - libmpeg2 upgraded
+
+v0.10-pre3: test release, verbose mode, new docs
+ - new option: -v = increment verbose level
+ (debug printf's changed to verbose level-dependent)
+ - default level: 0, only some informal output
+ - init debug: 1, some basic debug infos, avi header, function values
+ - player debug: 2, print avi indexes, chunk inputs, more debug infos
+ - parser debug: 3, prints everything related to input parsers
+ to increment verbose level, use multiple -v options (-v -v -v for level-3)
+ - bitrate calculation for AVI files
+ - README rewritten, added Troubleshooting and Bugreports sections
+ - TVout directory added (only the scripts)
+
+v0.10-pre2: bugfix test release, bps-sync enabled
+ - avi: supporting both 0-based and movi-based index types (autodetect)
+ - avi: tested with VBR audio: plays well with -mc 0 option, seek doesn't
+ work yet [thanks to Alan Chen for testfile]
+ - avi: A-V sync to avg. byte/sec implemented (again) and enabled by default
+ (disable with -nobps if you want)
+ - ./configire: 3rd name ('kni') of the P3 added. Where is the compatibility?
+ - useless '\' removed from libac3/Makefile [Otvos Ferenc]
+
+v0.10-pre1: test release, players merged!!!
+ - avip and mpegp has been merged to a single binary called 'mplayer'
+ - file type detection (AVI/MPEG-PS/MPEG-ES/Other)
+ - no redundant code (common code for common jobs)
+ - big format-dependent codes moved to functions (separated files)
+ - better error messages, removed some debug stuff, code cleanups
+ - old libmpeg2 version removed from source tree
+ - help texts merged (help_avi+help_mpg -> help_mp)
+ - new options: -x <x> -y <y> = scale image (if selected driver supports)
+ if value<=8 then image size will be multiplied by value, otherwise
+ image size will be scaled to <value> pixels.
+ For example:
+ 2x ZOOM: mplayer -x 2 -y 2 test.mpg
+ 800x600: mplayer -x 800 -y 600 test.mpg
+ [default values are still configurable at compile-time, see config.h]
+ - TV project (not finished) codebase added (see tvision.c, or: make tvision)
+
+v0.09: Beta release [same as 0.09-pre3]
+ - version changed in the files
+ - docs updated
+
+v0.09-pre3: bugfix test-release, X11 support testing
+ - fixed the if [ -z $pparam ] bug in ./configure [Christian Birchinger]
+ - many changes in AVI seek code, resulting near-perfect seeking now!
+ current method calc absolute audio position, so with VBR audio it
+ doesn't work yet...
+ - avip: Xv support (YUY2 image format)
+ - avip: X11 support (24 & 32 bpp only, BGR format)
+ I need a very fast 15->16bpp converter for 16bpp support... anyone helps?
+
+v0.09-pre2: bugfix test-release
+ - removed unnecessary code from libmpeg2/header.c
+ Walken told me that standard mpg/vob streams must NOT use framerate
+ and bitrate extension... and the ext. id check is done by the caller.
+ - CRC support to mp3lib's mpeg audio layer-2 decoder
+ thanks for bugreport & testfile to Samson
+
+v0.09-pre1: bugfix test-release
+ - imported new libmpeg2 files (under testing...)
+ - GL renderer flickering bug fixed (MMX missing emms() between yuv2rgb and
+ glTexSubImage(), bug triggered by new Utah-GLX code)
+ [thanks for Christian Birchinger]
+
+v0.08: Index support, avi seeking, DLL loader fix, compilation fixes
+ - Added support for chunk index usage (disable with -noidx option)
+ - Removed code optimization flags from loader/Makefile because
+ it segfaults if compile optimized code (it does some hacks with
+ pointers, maybe the reordered code confuses it)
+ - added new tool called aviparse (read and check avi file structure)
+ - indexed and raw chunk info comparing, bad chunks dropped
+ - termcap usage is optional (for those debian users without termcap)
+ - #if HAVE_* fixed (to #ifdef HAVE_*)
+ - ./configure supports new /proc/cpuinfo (2.4.0-test11)
+ - sse is called 'sse' again
+ - 'flags' field renamed to 'features'
+ - Xv benchmark results added to DOCS/SPEED
+ - avi seeking (and other goodies, pause etc) implemented
+ no PTS resync after seek yet.
+ - default video_out driver changed from 'mga' to the first available driver
+ new driver priority: mga_vid, opengl, x11
+
+v0.07: Easier compile
+ - Added Pontscho's ./configure script (it's modified a lot)
+ - Updated makefiles, and tested a lot :)
+ - Updated DOCS/INSTALL
+
+v0.06: Better codec selection
+ - avi audio&video codec selection moved to new codecs.c file,
+ loader/driver.c and loader/afl.c modified for this
+ - yuv support fixed, codecs.c setup flags to handle yuv properly
+ yuv works fine with divx, mpeg4, cvid, and upside-down iv50
+ - DOCS/INSTALL updated
+ - DOCS/SPEED updated, DivX benchmarks added
+
+v0.05: Merged with MPEGplayer 0.90pre6, first public release of AVI player
+ - code merged with mpegplayer, new Makefile, some small modifications
+ - docs updated and moved to DOCS
+
+v0.04: YUV support, some code cleanup, preview-release
+
+v0.01: first version based on new MPEGplayer's codebase.
diff --git a/DOCS/ChangeLog.mpeg b/DOCS/ChangeLog.mpeg
new file mode 100644
index 0000000000..265a57c16b
--- /dev/null
+++ b/DOCS/ChangeLog.mpeg
@@ -0,0 +1,232 @@
+ChangeLog:
+~~~~~~~~~~
+v0.2: [first public release]
+- parser: add support for VOB files (audio format still has problems...)
+- libmpeg3: improvements in file-type detector, supporting mpegs with RIFF hdr
+- libmpeg3: improvements on mpeg3_read_program() to handle damaged files better
+- libmpeg3: new functions for separated PTS access: mpeg3_audio_pts() and
+ mpeg3_video_pts(), they return timestamp in seconds, format: double
+- play: new audio-video sync method, using timestamps from streams.
+ much better, even on very damaged files!
+- play: measuring of audio buffer size instead constant hard-wired value
+- libmpeg3: more improvements to handle better strange files...
+- play: drop timestamp correction if > 2 seconds (good for concatenated files)
+
+v0.3:
+- much better audio-video sync, using limited timestamp correction
+- TVout directory added, with tools & scripts to setup TVout on Matrox cards
+ (it is able to play mpegs fullscreen on TV without using X)
+
+v0.5:
+- integrating dvdview for video decoding
+ (still using libmpeg3 for system stream parsing and audio decoding)
+ -> not works... some variable randomly changes (uninitialized pointers
+ in dvdview??? c++/c mixing problem?)
+
+v0.6:
+- new player from scratch, using my mp3lib for audio, parser.c for demuxing.
+ integrated dvdview is still buggy...
+
+v0.7: [second edition]
+- dvdview as separated process, using FIFOs for communication.
+- some fixes in dvdview/system/sysdec1.cc, improved re-syncing on reset
+- double-buffering support into dvdview's mga_vid class (and some
+ changes in the mga_vid kernel module too!)
+- EOF problem solved
+- background playing option (using MGA Color-Keying and xsetroot)
+- rebuild README, added Standard Disclaimer section
+
+v0.71:
+- better missing-stream detection (counting only the real packets)
+- check for file and missing streams before fork()
+- fixed ugly byteorder bug when reading header dword
+- new system stream sync method (doesn't requires SYSTEM_HEADER_START_CODE)
+- seeking (byte or second pos), works *only* with streams with immediate
+ SYSTEM_HEADER frames.
+
+v0.8: [seeking works]
+- implementing own video packet reader -> disabling the whole streaming part
+ of dvdview.
+- saving system headers, and re-sent after starting dvdview (seeking/resync)
+ -> allow seeking in single-header mpeg files (contact2.mpg)
+- advanced resync and seek_sec method, using video-packet type-checks
+- fix read() problem, when not enough bytes available in fifo (see man 2 read)
+- removed unused objects (postproc,options,streaming) from dvdview's Makefile
+ (smaller executable, faster compile)
+- sec. and bytepos seek fixed, works well now.
+- simple console gui, using my getch2 (from mailer3 source) for keyboard.
+ allows seek,pause,quit functions (for testing only)
+ it's time to begin develop some nice GUI with skins, plugins etc :)
+- improved runtime seeking, added force_redraw variable, and PTS audio
+ correction after every seek.
+
+v0.81:
+- fps fixed (other than 25fps supported again)
+- EOF handling fixed again
+- nosound support (currently only system streams supported, not video-only)
+ also see -nosound commandline option
+- mga_vid: changed mmap() to allow double buffering in 704x528
+- mga_vid: double buffering is optional from now (dvdview option -db )
+* it successfully plays .VOB files (without sound)
+- PTS/DTS support in mpeg-2 system streams (.vob files)
+- PCM audio (48kHz stereo, unsigned, swapped byteorder) playing implemented
+* it "plays" .VOB files with PCM sound, but it's too sloooooow :(((
+- some optimization of dvdview's bitstream handler (see FillBits & GetBitsFast)
+
+v0.82: [VOB support]
+- updated dvdview from current CVS version (1.2.0-pre) -> about 25% faster!!!
+* it's now fast enough for VOB playback
+- AC3 audio support (using Aaron Holtzman's libac3 from ac3dec package)
+- new, simpler Makefile for libac3
+- re-organized text files (README splitted to ChangeLog and AUTHORS)
+
+v0.83: [ALSA support]
+- some timing code to fix audio syncing with ALSA drivers (test it! I can't)
+ use -alsa cmdline option to enable this experimental code!
+- cmdline option (-abs) for overriding audio buffer size (default: measured)
+ why is it needed? some audio drivers has bad implementaion of select(),
+ so measuring buffer size gives false result.
+ if you hear sound before picture window appears, then you should use this!
+
+v0.84:
+- multiple DVD audio channels/streams support (use -aid option to select chn.)
+- cmdline option for maximum PTS time correction (-mc <value>)
+- PTS sync code moved to frame display loop -> more precise timing
+ now it sync audio after every 5 decoded frames
+- cmdline option for override frame rate (-fps <rate>)
+ some .VOB files has bad frame rate value in headers (why? any ideas?)
+- ac3 audio seeking works (some hack in libac3's parse.c)
+
+v0.85: [first non-experimental release]
+- directory structure changed
+- better documentation, added new INSTALL
+- every Makefile uses OPTFLAGS environment variable, see INSTALL
+- help (run mpg12play without any parameters or with -h/--help)
+- fixed byte seeking (-sb)
+- allow selecting mpeg audio channel, see -aid (streams 0x1C0-1DF)
+- allow selecting video channel, see -vid (0x1E0-1EF)
+- allow audio format override, see -afm
+- new streaming system (with 4k buffering)
+- initial VCD (Video CD) support, use -vcd to select track, and give
+ device name as filename (e.g.: mpg12play -vcd 2 /dev/cdrom)
+ Problems with dual streaming, it's very slow! reads every sectors twice...
+- VCD cache system... -> solved dual (A+V) streaming slowdown
+
+v0.86: [cleanup]
+- last_frame_* thing removed + control fifo read() fixed -> better and
+ linear (no seek-back) resync if dvdview dies
+- better nosound timing (uses -alsa timer), seeking works
+- resync_to_pts eliminated (using new max_pts_correction)
+- cleanups, error checks, small fixes in the whole player.c
+- removed some unused old code
+- exit code moved to exit_player(), removed redundancy, fixed kill order
+
+v0.87:
+- i've found the reason of bad fps value with some vob files...
+ the fps is correct, but the dvdview doesn't decode all the frames
+ (reads repeat_first_field flag but don't rely on it)
+- new demuxer code: read & demux input stream only at once, and uses two
+ memory FIFO-s for packages. also new reader code, everyting named ds_*()
+ The new demuxer can autodetect video and audio stream ids, if not
+ specified with -aid / -vid option, and better implementation of -afm
+- vcd cache is optional (and disabled by default), because unneccesary with
+ new demux/streaming code
+
+v0.90pre:
+- new codec added: mpeg2dec by Aaron Holtzman
+ after doing some fixes (see at bottom), it's able to play mpeg1/mpeg2 video
+- FIFO API changed: after frame_complete command (0x0) the codec must
+ send the fps*10000 and the length*100 value. length is 1.00 for a simple
+ frame, and >=1 for mpeg2 fields (eliminates the fps problem)
+ Now, using mpeg2dec we are able to play .vob files with correct fps timing!
+- better AC3 resync after seek (new func. in libac3: ac3_bitstream_reset())
+ using ac3_decode_frame() instead ds_fill_buffer() when syncing PTS
+
+v0.90pre2:
+- mpeg2dec integrated into player binary