You can use ffprobe (which comes with ffmpeg ) to collect information about media files. For information on the general contents of a multimedia file, use
ffprobe -show_streams -show_format DV06xx.avi
and for information about each individual frame in the video file, use
ffprobe -show_frames DV06xx.avi
However, ffprobe doesnβt get as much information as my favorite tool, Mediainfo , for example, ffprobe 'does not display the time code of the first frame of the video (although it would otherwise refer to the manual page) or the recording date.
If you run mediainfo on the command line, you can even request XML output:
mediainfo --OUTPUT=XML DV06xx.avi
In my example, the output is:
<?xml version="1.0" encoding="UTF-8"?> <Mediainfo version="0.7.63"> <File> <track type="General"> <Complete_name>DV06xx.avi</Complete_name> <Format>AVI</Format> <Format_Info>Audio Video Interleave</Format_Info> <Commercial_name>DVCPRO</Commercial_name> <Format_profile>OpenDML</Format_profile> <File_size>13.3 GiB</File_size> <Duration>1h 2mn</Duration> <Overall_bit_rate_mode>Constant</Overall_bit_rate_mode> <Overall_bit_rate>30.5 Mbps</Overall_bit_rate> <Recorded_date>2004-03-28 15:42:35.000</Recorded_date> </track> <track type="Video"> <ID>0</ID> <Format>DV</Format> <Commercial_name>DVCPRO</Commercial_name> <Codec_ID>dvsd</Codec_ID> <Codec_ID_Hint>Sony</Codec_ID_Hint> <Duration>1h 2mn</Duration> <Bit_rate_mode>Constant</Bit_rate_mode> <Bit_rate>24.4 Mbps</Bit_rate> <Encoded_bit_rate>28.8 Mbps</Encoded_bit_rate> <Width>720 pixels</Width> <Height>576 pixels</Height> <Display_aspect_ratio>4:3</Display_aspect_ratio> <Frame_rate_mode>Constant</Frame_rate_mode> <Frame_rate>25.000 fps</Frame_rate> <Standard>PAL</Standard> <Color_space>YUV</Color_space> <Chroma_subsampling>4:2:0</Chroma_subsampling> <Bit_depth>8 bits</Bit_depth> <Scan_type>Interlaced</Scan_type> <Scan_order>Bottom Field First</Scan_order> <Compression_mode>Lossy</Compression_mode> <Bits__Pixel_Frame_>2.357</Bits__Pixel_Frame_> <Time_code_of_first_frame>00:00:01:10</Time_code_of_first_frame> <Time_code_source>Subcode time code</Time_code_source> <Stream_size>12.6 GiB (94%)</Stream_size> <Encoding_settings>ae mode=full automatic / wb mode=automatic / white balance= / fcm=manual focus</Encoding_settings> </track> <track type="Audio"> <ID>1</ID> <Format>PCM</Format> <Format_settings__Endianness>Little</Format_settings__Endianness> <Format_settings__Sign>Signed</Format_settings__Sign> <Codec_ID>1</Codec_ID> <Duration>1h 2mn</Duration> <Bit_rate_mode>Constant</Bit_rate_mode> <Bit_rate>1 536 Kbps</Bit_rate> <Channel_s_>2 channels</Channel_s_> <Sampling_rate>48.0 KHz</Sampling_rate> <Bit_depth>16 bits</Bit_depth> <Stream_size>688 MiB (5%)</Stream_size> <Alignment>Aligned on interleaves</Alignment> <Interleave__duration>40 ms (1.00 video frame)</Interleave__duration> <Interleave__preload_duration>40 ms</Interleave__preload_duration> </track> </File> </Mediainfo>
Adding the optional -f option will give you even more detailed information.
Daniel K. Mar 03 '15 at 20:56 2015-03-03 20:56
source share