• FFprobe命令详解


    FFprobe基本信息描述

    fu@localhost ~ % ffprobe Downloads/panda.mp4                                                                                                                                  
    ....                                                                                                                                            
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Downloads/panda.mp4':                                                                                                                         
      Metadata:                                                                                                                                                                            
        major_brand     : isom                                                                                                                                                             
        minor_version   : 512                                                                                                                                                              
        compatible_brands: isomiso2avc1mp41                                                                                                                                                
        title           : PontusSystem                                                                                                                                                     
        encoder         : Lavf58.35.100                                                                                                                                                    
      Duration: 00:02:18.55, start: 0.000000, bitrate: 914 kb/s                                                                                                                            
        Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 960x540 [SAR 1:1 DAR 16:9], 781 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)                               
        Metadata:                                                                                                                                                                          
          handler_name    : VideoHandler                                                                                                                                                   
        Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)                                                                                  
        Metadata:                                                                                                                                                                          
          handler_name    : SoundHandler 
    

    Metadata:                                                                                                                                                                            
        major_brand     : isom                                                                                                                                                             
        minor_version   : 512                                                                                                                                                              
        compatible_brands: isomiso2avc1mp41                                                                                                                                                
        title           : PontusSystem                                                                                                                                                     
        encoder         : Lavf58.35.100
    
    • 这行信息表明了该文件的Metadata信息
    • 比如encoder是 Lavf58.35.100 ,
      • Lavf 代表的是FFmpeg输出的文件
      • 58.35.100 代表了FFmpeg的版本代号

    Duration: 2:18.55, start: 0.000000, bitrate: 914 kb/s
    
    • 该文件的时长是 2:18.55
    • 开始播放时间是 0
    • 整个文件的比特率是 914 kb/s
    • (视频比特率是指每秒传送的比特(bit)数。
    • 单位为bps(Bit Per Second),比特率越高,每秒传送数据就越多,画质就越清晰)

    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 960x540 [SAR 1:1 DAR 16:9], 781 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    
    • 第一个 stream 是视频流
    • 编码方式是 h264 的格式(封装格式是avc1)
    • 每一帧的数据表示是 YUV420P 的格式
    • 分辨率是 960x540
    • 这路流的比特率是 781 kb/s
    • 帧率是每秒钟 24帧(25 fps)
    • fps 表示平均帧率,总帧数除以总时长(以s为单位)。
    • tbr 表示帧率,该参数倾向于一个基准,往往tbr跟fps相同。
    • tbn 表示视频流 timebase(时间基准),
    • 比如ts流的timebase 为90000,flv格式视频流timebase为1000
    • tbc 表示视频流codec timebase ,
    • 对于264码流该参数通过解析sps间接获取(通过sps获取帧率)。

    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
    
    • 第二个 stream 是音频流
    • 编码方式是 AAC(封装格式是mp4a)
    • 采用的 Profile 是 LC规格
    • 采用率是 44100 Hz
    • 声道数是立体声
    • 数据表示格式是浮点型
    • 这路音频流的比特率是 127 kb/s

    ffprobe基本命令

    查看多媒体数据包的信息:

    ffprobe -show_packets input.flv
    ffprobe -show_packets -show_data  input.flv
    

    查看多媒体的封装格式:

    ffprobe -show_format input.flv
    

    查看视频文件中的帧信息:

    ffprobe -show_frames input.flv
    

    查看对媒体文件中的流信息:

    ffprobe -show_streams input.flv
    

    查看输出格式:

    ffprobe -show_frames -of json input.flv
    
    • 支持格式:xml、ini、json、csv、flat

    只查看音频(a)、视频(v)、字幕(s)的信息:

    ffprobe -show_frames -select_streams v -of json input.mp4
    ffprobe -show_frames -select_streams a -of json input.mp4
    

    封装格式 show_format

    [FORMAT]
    filename=teninis-re.mp4
    nb_streams=3
    nb_programs=0
    format_name=mov,mp4,m4a,3gp,3g2,mj2
    format_long_name=QuickTime / MOV
    start_time=0.000000
    duration=1420.388000
    size=445326937
    bit_rate=2508198
    probe_score=100
    TAG:major_brand=isom
    TAG:minor_version=512
    TAG:compatible_brands=isomiso2avc1mp41
    TAG:encoder=Lavf58.35.101
    [/FORMAT]
    

    流 show_streams

    [STREAM]
    index=0
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=High
    codec_type=video
    codec_time_base=1/50
    codec_tag_string=avc1
    codec_tag=0x31637661
    width=1920
    height=1080
    coded_width=1920
    coded_height=1088
    has_b_frames=2
    sample_aspect_ratio=1:1
    display_aspect_ratio=16:9
    pix_fmt=yuv420p
    level=40
    color_range=unknown
    color_space=unknown
    color_transfer=unknown
    color_primaries=unknown
    chroma_location=left
    field_order=unknown
    timecode=N/A
    refs=1
    is_avc=true
    nal_length_size=4
    id=N/A
    r_frame_rate=25/1
    avg_frame_rate=25/1
    time_base=1/12800
    start_pts=0
    start_time=0.000000
    duration_ts=18164224
    duration=1419.080000
    bit_rate=2375073
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=35477
    nb_read_frames=N/A
    nb_read_packets=N/A
    extradata=
    00000000: 0164 0028 ffe1 001b 6764 0028 acd9 4078  .d.(....gd.(..@x
    00000010: 0227 e5c0 4400 0003 0004 0000 0300 c83c  .'..D..........<
    00000020: 60c6 5801 0006 68eb e3cb 22c0 fdf8 f800  `.X...h...".....
    
    DISPOSITION:default=1
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    TAG:language=und
    TAG:handler_name=VideoHandler
    [/STREAM]
    [STREAM]
    index=1
    codec_name=aac
    codec_long_name=AAC (Advanced Audio Coding)
    profile=LC
    codec_type=audio
    codec_time_base=1/44100
    codec_tag_string=mp4a
    codec_tag=0x6134706d
    sample_fmt=fltp
    sample_rate=44100
    channels=2
    channel_layout=stereo
    bits_per_sample=0
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/44100
    start_pts=0
    start_time=0.000000
    duration_ts=62636465
    duration=1420.328005
    bit_rate=128876
    max_bit_rate=128876
    bits_per_raw_sample=N/A
    nb_frames=61170
    nb_read_frames=N/A
    nb_read_packets=N/A
    extradata=
    00000000: 1210 56e5 00                             ..V..
    
    DISPOSITION:default=1
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    TAG:language=und
    TAG:handler_name=Sound Media Handler
    [/STREAM]
    [STREAM]
    index=2
    codec_name=bin_data
    codec_long_name=binary data
    profile=unknown
    codec_type=data
    codec_tag_string=text
    codec_tag=0x74786574
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/1000
    start_pts=0
    start_time=0.000000
    duration_ts=1420388
    duration=1420.388000
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=1
    nb_read_frames=N/A
    nb_read_packets=N/A
    extradata=
    00000000: 0000 0001 0000 0000 0000 0000 0000 0000  ................
    00000010: 0000 0000 0000 0001 0000 0000 0000 0000  ................
    00000020: 000d 6674 6162 0001 0001 00              ..ftab.....
    
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    TAG:language=eng
    TAG:handler_name=SubtitleHandler
    [/STREAM]
    

    数据包 show_packets

    [PACKET]
    codec_type=video
    stream_index=0
    pts=0
    pts_time=0.000000
    dts=-1024
    dts_time=-0.080000
    duration=512
    duration_time=0.040000
    convergence_duration=N/A
    convergence_duration_time=N/A
    size=6658
    pos=62
    flags=K_
    data=
    00000000: 0000 02af 0605 ffff abdc 45e9 bde6 d948  ..........E....H
    00000010: b796 2cd8 20d9 23ee ef78 3236 3420 2d20  ..,. .#..x264 - 
    00000020: 636f 7265 2031 3538 2072 3239 3838 2037  core 158 r2988 7
    00000030: 3831 3730 3034 202d 2048 2e32 3634 2f4d  817004 - H.264/M
    00000040: 5045 472d 3420 4156 4320 636f 6465 6320  PEG-4 AVC codec 
    00000050: 2d20 436f 7079 6c65 6674 2032 3030 332d  - Copyleft 2003-
    ......
    000001c0: 248b 604e c0c0 c8ee b1a7 dd43 f480 e682  $.`N.......C....
    000001d0: 3d7f 7c63 c790 0000 0300 0003 0000 0300  =.|c............
    000001e0: 000e 289d abf7 7000 0065 0ee4 8b0f dd68  ..(...p..e.....h
    000001f0: cb00 60c1                                ..`.
    
    [/PACKET]
    

    帧 show_frames

    [FRAME]
    media_type=video
    stream_index=0
    key_frame=1
    pkt_pts=0
    pkt_pts_time=0.000000
    pkt_dts=0
    pkt_dts_time=0.000000
    best_effort_timestamp=0
    best_effort_timestamp_time=0.000000
    pkt_duration=512
    pkt_duration_time=0.040000
    pkt_pos=62
    pkt_size=6658
    width=1920
    height=1080
    pix_fmt=yuv420p
    sample_aspect_ratio=1:1
    pict_type=I
    coded_picture_number=0
    display_picture_number=0
    interlaced_frame=0
    top_field_first=0
    repeat_pict=0
    color_range=unknown
    color_space=unknown
    color_primaries=unknown
    color_transfer=unknown
    chroma_location=left
    [/FRAME]
    
  • 相关阅读:
    Valid Parentheses [LeetCode 20]
    线性回归的Spark实现 [Linear Regression / Machine Learning / Spark]
    逻辑回归的分布式实现 [Logistic Regression / Machine Learning / Spark ]
    Python爬虫之豆瓣-新书速递-图书解析
    安装软件包
    打包与压缩
    linux与linux间,互相拷贝文件
    网络管理
    重定向和管道
    索引
  • 原文地址:https://www.cnblogs.com/liangjingfu/p/12858018.html
Copyright © 2020-2023  润新知