No subject

bogus at does.not.exist.com bogus at does.not.exist.com
Tue Aug 25 22:50:44 CEST 2009


> $ ./ffprobe -h
[...]
> Simple multimedia streams analyzer
> usage: ffprobe [OPTIONS] [INPUT_FILE]
>
> Main options:
> -L                  show license
> -h                  show help
> -?                  show help
> -help               show help
> --help              show help
> -version            show version

> -formats            show available formats
> -codecs             show available codecs
> -bsfs               show available bit stream filters
> -protocols          show available protocols
> -filters            show available filters
> -pix_fmts           show available pixel formats

These will just confuse the users.

> -loglevel loglevel  set libav* logging level

> -default            generic catch all option

This too.

>
> FFprobeContext AVOptions:
> -format            <flags> .D... set the flags which control how to display values

format looks too close to formats, which means the file format. This
is confusing.

>    unit                    .D... show unit
>    prefix                  .D... show binary or decimal SI prefixes
>    binary_prefix           .D... force binary SI prefixes
>    byte_binary_prefix         .D... force binary SI prefixes with byte measure units
>    sexagesimal             .D... use sexagesimal time format
>    pretty                  .D... prettify format, the equivalent of unit+prefix+byte_binary_prefix+sexagesimal
> -show              <flags> .D... set the flags which control what to display
>    streams                 .D... show streams
>    format                  .D... show streams

Some other things:
- Output of ./ffprobe input.avi gives no useful information.
- What can ffprobe do that mediainfo can't do and vice-versa (except
xml output, we don't want that =)? If it's very inferior it should be
worked on much more before it's released.
- How do I force a file format or a codec? (like it's possible with
ffmpeg/ffplay)

And feeding to ffprobe the output of libavcodec/output-example:

> $ ./ffprobe -format pretty -show format+streams ../input.avi
> FFprobe version SVN-r21735, Copyright (c) 2007-2010 Fabrice Bellard, et al.

FFprobe is fabrice bellard's work? Underlying libraries are, but not
this program.

>   built on Feb  9 2010 22:28:23 with gcc 4.4.1
>   configuration: --cc='ccache gcc' --enable-gpl --enable-runtime-cpudetect
>   libavutil     50. 9. 0 / 50. 9. 0
>   libavcodec    52.53. 0 / 52.53. 0
>   libavformat   52.51. 0 / 52.51. 0
>   libavdevice   52. 2. 0 / 52. 2. 0
>   libswscale     0.10. 0 /  0.10. 0
> Input #0, avi, from '../input.avi':
>   Metadata:
>     ISFT            : Lavf52.50.0
>   Duration: 00:00:05.01, start: 0.000000, bitrate: 748 kb/s
>     Stream #0.0: Video: mpeg4, yuv420p, 352x288 [PAR 1:1 DAR 11:9], 25 tbr, 25 tbn, 25 tbc
>     Stream #0.1: Audio: mp2, 44100 Hz, 2 channels, s16, 64 kb/s

There should be an option to not print out the banner and the dump
info. Or at least document the possibility of redirecting stderr to
/dev/null.

> [STREAM]
> index=0
> codec_name=mpeg4
> codec_long_name=MPEG-4 part 2
> codec_type=video
> codec_time_base=1/25
> codec_tag_string=FMP4
> codec_tag=0x34504d46
> width=352
> height=288
> has_b_frames=0
> sample_aspect_ratio=1:1
> display_aspect_ratio=1:1
> pix_fmt=yuv420p
> r_frame_rate=25/1
> avg_frame_rate=0/0
> time_base=1/25
> start_time=0:00:00.000000
> duration=0:00:05.000000
> [/STREAM]
> [STREAM]
> index=1
> codec_name=mp2
> codec_long_name=MP2 (MPEG audio layer 2)
> codec_type=audio
> codec_time_base=0/1

> codec_tag_string=P___

This doesn't make sense for most audio codecs.

> codec_tag=0x0050
> sample_rate=44.100 KHz
> channels=2
> bits_per_sample=0
> r_frame_rate=0/0
> avg_frame_rate=0/0

There's a bunch of 0 values here and there. Is this information useful?

> time_base=32/1225
> start_time=0:00:00.000000
> duration=0:00:05.015510
> [/STREAM]
> [FORMAT]
> filename=../input.avi
> nb_streams=2
> format_name=avi
> format_long_name=AVI format
> start_time=0:00:00.000000
> duration=0:00:05.015510
> size=458.463 Kibyte
> bit_rate=748.822 Kbit/s

> ISFT=Lavf52.50.0

metadata is just being printed out along with the other information?

> [/FORMAT]



More information about the ffmpeg-devel mailing list