Mercurial > mplayer.hg
changeset 549:c97496b240c1
new options: -dumpaudio and -dumpvideo
author | arpi_esp |
---|---|
date | Fri, 20 Apr 2001 18:28:13 +0000 |
parents | c5c2d4e41a4a |
children | 58b24a998cb5 |
files | cfg-mplayer.h mplayer.c |
diffstat | 2 files changed, 25 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/cfg-mplayer.h Fri Apr 20 17:27:38 2001 +0000 +++ b/cfg-mplayer.h Fri Apr 20 18:28:13 2001 +0000 @@ -62,6 +62,11 @@ {"noni", &force_ni, CONF_TYPE_FLAG, 0, 1, 0}, {"aid", &audio_id, CONF_TYPE_INT, CONF_RANGE, 0, 256}, {"vid", &video_id, CONF_TYPE_INT, CONF_RANGE, 0, 256}, + + {"dumpfile", &stream_dump_name, CONF_TYPE_STRING, 0, 0, 0}, + {"dumpaudio", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 1}, + {"dumpvideo", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 2}, + // {"auds", &avi_header.audio_codec, CONF_TYPE_STRING, 0, 0, 0}, // {"vids", &avi_header.video_codec, CONF_TYPE_STRING, 0, 0, 0}, {"mc", &default_max_pts_correction, CONF_TYPE_FLOAT, CONF_RANGE, 0, 10},
--- a/mplayer.c Fri Apr 20 17:27:38 2001 +0000 +++ b/mplayer.c Fri Apr 20 18:28:13 2001 +0000 @@ -497,6 +497,8 @@ float sub_delay=0; float sub_fps=0; int sub_auto = 1; +char stream_dump_name=NULL; +int stream_dump_type=0; //int user_bpp=0; #include "mixer.h" @@ -929,6 +931,24 @@ fflush(stdout); +if(stream_dump_type){ + FILE *f; + int len; + demux_stream_t *ds=(stream_dump_type==1)?d_audio:d_video; + demux_stream_t *ds2=(stream_dump_type!=1)?d_audio:d_video; + ds_free_packs(ds2); ds2->id=-2; // ignore this stream! + f=fopen(stream_dump_name?stream_dump_name:"stream.dump","wb"); + if(!f){ printf("Can't open dump file!!!\n");exit(1); } + while(!ds->eof){ + char* start; + int in_size=ds_get_packet(ds,&start); + if(in_size>0) fwrite(start,in_size,1,f); + } + fclose(f); + printf("core dumped :)\n"); + exit(1); +} + //================== Init AUDIO (codec) ========================== if(has_audio){ // Go through the codec.conf and find the best codec...