diff -Naur MPlayer-20030716/cfg-mplayer.h MPlayer-20030716-new/cfg-mplayer.h --- MPlayer-20030716/cfg-mplayer.h 2003-07-01 21:23:08.000000000 +0200 +++ MPlayer-20030716-new/cfg-mplayer.h 2003-07-17 22:10:23.000000000 +0200 @@ -368,6 +368,7 @@ // dump some stream out instead of playing the file // this really should be in mencoder instead of mplayer... -> TODO + {"dumpraw", &raw_dump, CONF_TYPE_FLAG, 0, 0, 1, NULL}, {"dumpfile", &stream_dump_name, CONF_TYPE_STRING, 0, 0, 0, NULL}, {"dumpaudio", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 1, NULL}, {"dumpvideo", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 2, NULL}, diff -Naur MPlayer-20030716/DOCS/en/mplayer.1 MPlayer-20030716-new/DOCS/en/mplayer.1 --- MPlayer-20030716/DOCS/en/mplayer.1 2003-07-08 01:02:25.000000000 +0200 +++ MPlayer-20030716-new/DOCS/en/mplayer.1 2003-07-17 22:10:08.000000000 +0200 @@ -703,6 +703,12 @@ .TP .B \-dumpvideo (MPLAYER only) Dump raw compressed video stream to ./\:stream.dump (not very usable). +When the source file is AVI/MOV/ASF MPlayer adds a 4 bytes header for every packet +to the dump, use \-dumpraw to avoid this. +.TP +.B \-dumpraw (MPLAYER only) +Dumps raw, headerless compressed stream to ./\:stream.dump (not very usable). +Useful for MPEG1/2 video streams in AVI. .TP .B \-dvd\-device Override default DVD device name /dev/\:dvd. diff -Naur MPlayer-20030716/mplayer.c MPlayer-20030716-new/mplayer.c --- MPlayer-20030716/mplayer.c 2003-07-13 17:38:33.000000000 +0200 +++ MPlayer-20030716-new/mplayer.c 2003-07-17 22:05:54.000000000 +0200 @@ -252,6 +252,7 @@ #endif // dump: +static int raw_dump=0; static char *stream_dump_name="stream.dump"; int stream_dump_type=0; @@ -1461,7 +1462,7 @@ unsigned char* start; int in_size=ds_get_packet(ds,&start); if( (demuxer->file_format==DEMUXER_TYPE_AVI || demuxer->file_format==DEMUXER_TYPE_ASF || demuxer->file_format==DEMUXER_TYPE_MOV) - && stream_dump_type==2) fwrite(&in_size,1,4,f); + && stream_dump_type==2 && (raw_dump == 0)) fwrite(&in_size,1,4,f); if(in_size>0) fwrite(start,in_size,1,f); } fclose(f);