# HG changeset patch # User ranma # Date 1035388136 0 # Node ID dacc35bc92c7e01fbb82e1568576ce62a9e1176b # Parent 45d64e3fa09a1f97d59279a46446d043d1724cd5 add -identify switch diff -r 45d64e3fa09a -r dacc35bc92c7 DOCS/German/mplayer.1 --- a/DOCS/German/mplayer.1 Wed Oct 23 15:32:40 2002 +0000 +++ b/DOCS/German/mplayer.1 Wed Oct 23 15:48:56 2002 +0000 @@ -937,6 +937,11 @@ .B \-hardframedrop (siehe auch \-framedrop Option) Intensiveres Framedropping (unterbricht die Dekodierung). Führt zu Bildverzerrungen! .TP +.B \-identify +Zeigt die Dateiparameter in einem leicht weiter zu verarbeitendem Format an. +Das Script TOOLS/midentify unterdrückt andere Ausgaben von MPlayer und führt ein +Shellescaping der Dateinamen durch. +.TP .B \-include Gibt eine Konfigurationsdatei an, welche nach der normalen ausgewertet werden soll. .TP diff -r 45d64e3fa09a -r dacc35bc92c7 DOCS/mplayer.1 --- a/DOCS/mplayer.1 Wed Oct 23 15:32:40 2002 +0000 +++ b/DOCS/mplayer.1 Wed Oct 23 15:48:56 2002 +0000 @@ -217,6 +217,11 @@ More intense frame dropping (breaks decoding). Leads to image distortion! .TP +.B \-identify +Show file parameters in easy parsable format. The wrapper script +TOOLS/midentify suppresses the other mplayer output and (hopefully) +shellescapes the filenames. +.TP .B \-input This option can be used to configure certain parts of the input system. Paths are relative to ~/\:.mplayer/. diff -r 45d64e3fa09a -r dacc35bc92c7 cfg-mplayer.h --- a/cfg-mplayer.h Wed Oct 23 15:32:40 2002 +0000 +++ b/cfg-mplayer.h Wed Oct 23 15:48:56 2002 +0000 @@ -378,6 +378,7 @@ #include "cfg-common.h" #undef MAIN_CONF + {"identify", &identify, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL}, {"quiet", &quiet, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL}, {"noquiet", &quiet, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL}, {"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE|CONF_GLOBAL, 0, 100, NULL}, diff -r 45d64e3fa09a -r dacc35bc92c7 mplayer.c --- a/mplayer.c Wed Oct 23 15:32:40 2002 +0000 +++ b/mplayer.c Wed Oct 23 15:48:56 2002 +0000 @@ -67,6 +67,7 @@ int slave_mode=0; int verbose=0; +int identify=0; static int quiet=0; #define ABS(x) (((x)>=0)?(x):(-(x))) @@ -1148,6 +1149,35 @@ mp_msg(MSGT_CPLAYER,MSGL_INFO,"==========================================================================\n"); } +if(identify) { + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_FILENAME=%s\n", filename); + if (sh_video) { + /* Assume FOURCC if all bytes >= 0x20 (' ') */ + if (sh_video->format >= 0x20202020) + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_VIDEO_FORMAT=%.4s\n", &sh_video->format); + else + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_VIDEO_FORMAT=%d\n", sh_video->format); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_VIDEO_BITRATE=%d\n", sh_video->i_bps*8); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_VIDEO_WIDTH=%d\n", sh_video->disp_w); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_VIDEO_HEIGHT=%d\n", sh_video->disp_h); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_VIDEO_FPS=%5.3f\n", sh_video->fps); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_VIDEO_ASPECT=%1.2f\n", sh_video->aspect); + } + if (sh_audio) { + if (sh_audio->codec) + mp_msg(MSGT_GLOBAL,MSGL_INFO, "ID_AUDIO_CODEC=%s\n", sh_audio->codec->name); + /* Assume FOURCC if all bytes >= 0x20 (' ') */ + if (sh_audio->format >= 0x20202020) + mp_msg(MSGT_GLOBAL,MSGL_INFO, "ID_AUDIO_FORMAT=%.4s\n", &sh_audio->format); + else + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_AUDIO_FORMAT=%d\n", sh_audio->format); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_AUDIO_BITRATE=%d\n", sh_audio->i_bps*8); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_AUDIO_RATE=%d\n", sh_audio->samplerate); + mp_msg(MSGT_GLOBAL,MSGL_INFO,"ID_AUDIO_NCH=%d\n", sh_audio->channels); + } + goto goto_next_file; +} + if(!sh_video) goto main; // audio-only //================== Init VIDEO (codec & libvo) ==========================