ffprobe 简介

ffprobe 是一个多媒体流分析工具。它从多媒体流中收集信息,并且以人类和机器可读的形式打印出来。

它可以用来检测多媒体流的容器类型,以及每一个多媒体流的格式和类型。它可以作为一个独立的应用来使用,也可以结合文本过滤器执行更复杂的处理。

英文手册

参数

命令形式:

  1. ffprobe [options] [‘input_file’]
  1. ‘-f format 强制使用的格式
  2. ‘-unit 显示值的单位
  3. ‘-prefix 显示的值使用标准国际单位制词头
  4. ‘-byte_binary_prefix 对字节值强制使用二进制前缀
  5. ‘-sexagesimal 时间值使用六十进位的格式 HH:MM:SS.MICROSECONDS
  6. ‘-pretty 美化显示值的格式。它相当于 "-unit -prefix -byte_binary_prefix -sexagesimal"
  7. ‘-show_data 显示有效载荷数据,以十六进制和ASCII转储。与 ‘-show_packets 结合使用,它将
  8. ‘-show_error 显示探测输入文件时的错误信息
  9. ‘-show_format 显示输入多媒体流的容器格式信息
  10. ‘-show_packets 显示输入多媒体流中每一个包的信息
  11. ‘-show_frames 显示输入多媒体流中的每一帧以及字幕的信息
  12. ‘-show_streams 显示输入多媒体流中每一个流的信息
  13. ‘-show_programs 显示输入多媒体流中程序以及它们的流的信息
  14. ‘-show_chapters 显示格式中存储的章节信息
  15. ‘-count_frames 计算每一个流中的帧数,在相应的段中进行显示
  16. ‘-count_packets 计算每一个流中的包数,在相应的段中进行显示
  17. ‘-show_program_version 显示程序版本及配置相关信息
  18. ‘-show_library_versions 显示库版本相关信息
  19. ‘-show_versions 显示程序和库版本相关信息。相当于同时设置‘-show_program_version
  20. ‘-show_library_versions
  21. ‘-i input_file 指定输入文件

举例:

  1. ffprobe -print_format json -show_format -show_streams -i test.mp4

结果:

  1. ffprobe version 4.1.3 Copyright (c) 2007-2019 the FFmpeg developers
  2. built with gcc 8.3.1 (GCC) 20190414
  3. configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
  4. libavutil 56. 22.100 / 56. 22.100
  5. libavcodec 58. 35.100 / 58. 35.100
  6. libavformat 58. 20.100 / 58. 20.100
  7. libavdevice 58. 5.100 / 58. 5.100
  8. libavfilter 7. 40.101 / 7. 40.101
  9. libswscale 5. 3.100 / 5. 3.100
  10. libswresample 3. 3.100 / 3. 3.100
  11. libpostproc 55. 3.100 / 55. 3.100
  12. {
  13. Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
  14. Metadata:
  15. major_brand : isom
  16. minor_version : 512
  17. compatible_brands: isomiso2avc1mp41
  18. encoder : Lavf58.20.100
  19. Duration: 00:00:05.50, start: 0.000000, bitrate: 523 kb/s
  20. Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x640 [SAR 512:309 DAR 192:103], 450 kb/s, 10 fps, 10 tbr, 10240 tbn, 20 tbc (default)
  21. Metadata:
  22. handler_name : VideoHandler
  23. Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
  24. Metadata:
  25. handler_name : SoundHandler
  26. "streams": [
  27. {
  28. "index": 0,
  29. "codec_name": "h264",
  30. "codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
  31. "profile": "High",
  32. "codec_type": "video",
  33. "codec_time_base": "1/20",
  34. "codec_tag_string": "avc1",
  35. "codec_tag": "0x31637661",
  36. "width": 720,
  37. "height": 640,
  38. "coded_width": 720,
  39. "coded_height": 640,
  40. "has_b_frames": 2,
  41. "sample_aspect_ratio": "512:309",
  42. "display_aspect_ratio": "192:103",
  43. "pix_fmt": "yuv420p",
  44. "level": 31,
  45. "chroma_location": "left",
  46. "refs": 1,
  47. "is_avc": "true",
  48. "nal_length_size": "4",
  49. "r_frame_rate": "10/1",
  50. "avg_frame_rate": "10/1",
  51. "time_base": "1/10240",
  52. "start_pts": 0,
  53. "start_time": "0.000000",
  54. "duration_ts": 56320,
  55. "duration": "5.500000",
  56. "bit_rate": "450280",
  57. "bits_per_raw_sample": "8",
  58. "nb_frames": "55",
  59. "disposition": {
  60. "default": 1,
  61. "dub": 0,
  62. "original": 0,
  63. "comment": 0,
  64. "lyrics": 0,
  65. "karaoke": 0,
  66. "forced": 0,
  67. "hearing_impaired": 0,
  68. "visual_impaired": 0,
  69. "clean_effects": 0,
  70. "attached_pic": 0,
  71. "timed_thumbnails": 0
  72. },
  73. "tags": {
  74. "language": "und",
  75. "handler_name": "VideoHandler"
  76. }
  77. },
  78. {
  79. "index": 1,
  80. "codec_name": "aac",
  81. "codec_long_name": "AAC (Advanced Audio Coding)",
  82. "profile": "LC",
  83. "codec_type": "audio",
  84. "codec_time_base": "1/44100",
  85. "codec_tag_string": "mp4a",
  86. "codec_tag": "0x6134706d",
  87. "sample_fmt": "fltp",
  88. "sample_rate": "44100",
  89. "channels": 1,
  90. "channel_layout": "mono",
  91. "bits_per_sample": 0,
  92. "r_frame_rate": "0/0",
  93. "avg_frame_rate": "0/0",
  94. "time_base": "1/44100",
  95. "start_pts": 0,
  96. "start_time": "0.000000",
  97. "duration_ts": 232672,
  98. "duration": "5.276009",
  99. "bit_rate": "69929",
  100. "max_bit_rate": "69929",
  101. "nb_frames": "229",
  102. "disposition": {
  103. "default": 1,
  104. "dub": 0,
  105. "original": 0,
  106. "comment": 0,
  107. "lyrics": 0,
  108. "karaoke": 0,
  109. "forced": 0,
  110. "hearing_impaired": 0,
  111. "visual_impaired": 0,
  112. "clean_effects": 0,
  113. "attached_pic": 0,
  114. "timed_thumbnails": 0
  115. },
  116. "tags": {
  117. "language": "und",
  118. "handler_name": "SoundHandler"
  119. }
  120. }
  121. ],
  122. "format": {
  123. "filename": "test.mp4",
  124. "nb_streams": 2,
  125. "nb_programs": 0,
  126. "format_name": "mov,mp4,m4a,3gp,3g2,mj2",
  127. "format_long_name": "QuickTime / MOV",
  128. "start_time": "0.000000",
  129. "duration": "5.500000",
  130. "size": "359688",
  131. "bit_rate": "523182",
  132. "probe_score": 100,
  133. "tags": {
  134. "major_brand": "isom",
  135. "minor_version": "512",
  136. "compatible_brands": "isomiso2avc1mp41",
  137. "encoder": "Lavf58.20.100"
  138. }
  139. }
  140. }

FFMPEG 命令行工具-ffprobe的更多相关文章

  1. FFmpeg命令行工具学习(一):查看媒体文件头信息工具ffprobe

    一.简述 ffprobe是ffmpeg命令行工具中相对简单的,此命令是用来查看媒体文件格式的工具. 二.命令格式 在命令行中输入如下格式的命令: ffprobe [文件名] 三.使用ffprobe查看 ...

  2. FFmpeg命令行工具和批处理脚本进行简单的音视频文件编辑

    FFmpeg_Tutorial FFmpeg工具和sdk库的使用demo 一.使用FFmpeg命令行工具和批处理脚本进行简单的音视频文件编辑 1.基本介绍 对于每一个从事音视频技术开发的工程师,想必没 ...

  3. FFmpeg命令行工具学习(三):媒体文件转换工具ffmpeg

    一.简述 ffmpeg是一个非常强大的工具,它可以转换任何格式的媒体文件,并且还可以用自己的AudioFilter以及VideoFilter进行处理和编辑.有了它,我们就可以对媒体文件做很多我们想做的 ...

  4. FFmpeg命令行工具学习(二):播放媒体文件的工具ffplay

    一.简述 ffplay是以FFmpeg框架为基础,外加渲染音视频的库libSDL构建的媒体文件播放器. 在使用ffplay之前必须要安装到系统中,MAC的安装教程为:http://www.cnblog ...

  5. FFmpeg命令行工具学习(四):FFmpeg 采集设备

    在使用 FFmpeg 作为编码器时,可以使用FFmpeg采集本地的音视频采集设备的数据,然后进行编码.封装.传输等操作. 例如,我们可以采集摄像头的图像作为视频,采集麦克风的数据作为音频,然后对采集的 ...

  6. FFMPEG 命令行工具- ffmpeg

    ffmpeg 简介 ffmpeg 用于转码的应用程序,命令格式: ffmpeg [options] [[infile options] -i infile]... {[outfile options] ...

  7. FFmpeg命令行工具学习(五):FFmpeg 调整音视频播放速度

    FFmpeg对音频.视频播放速度的调整的原理不一样.下面简单的说一下各自的原理及实现方式: 一.调整视频速率 调整视频速率的原理为:修改视频的pts,dts 实现: ffmpeg -i input.m ...

  8. FFMPEG 命令行工具- ffplay

    ffplay 简介 ffplay是ffmpeg工程中提供的播放器,功能相当的强大,凡是ffmpeg支持的视音频格式它基本上都支持.甚至连VLC不支持的一些流媒体都可以播放,但是它的缺点是其不是图形化界 ...

  9. x264源代码简单分析:x264命令行工具(x264.exe)

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

随机推荐

  1. 洛谷p1458顺序的分数题解

    抱歉,您们的蒟蒻yxj不知道怎么插入链接qwq就只好粘个文本的了qwq:https://www.luogu.org/problemnew/show/P1458 没错,是个黄题,因为你们的小蒟蒻只会这样 ...

  2. 洛谷p1776宝物筛选

    宝物筛选 多重背包问题 物品数目已知 可以枚举每个物品 当做01背包来做 不过会超时 此时需要二进制拆分来优化 分解成新的物品 再跑一遍01背包即可 //二进制拆分+01背包 //设f[j]表示前i件 ...

  3. 蒟蒻所见之DP

    本文有错是正常的,因为这只是一部成长史,并非教学博文. 会常年更下去. 2019.10.24 DP,核心只是"表格法"而已. DP题真正所考察的,是: 1.对问题的描述.简化以及归 ...

  4. c04--数组

    0.展示PTA总分 1.本章学习内容总结 1.1学习内容总结 数组查找: 1.遍历法查找:从头遍历数组找对应数据. 2.二分法查找:适用于按顺序排列的整形数组. 插入数据: 先找到该数据,对数组进行移 ...

  5. FCB CCB FileObject

    CCB  ContextControlBlock  是存Private信息的,这个FO的特殊信息 FCB  FileControlBlock          是存全局信息的 FO    FileOb ...

  6. 【Shiro学习之一】Shiro入门

    一.Shiro Apache Shiro是一个Java安全框架. 1.官网:http://shiro.apache.org/ 2.三个核心组件 Subject:即“当前操作用户”,可以指人.第三方进程 ...

  7. 注意:MagickReadImageBlob() 引发的问题

    今天发现: 如果之前的 mw 已加载了具体的图片数据后,再对这个 mw 进行: MagickReadImageBlob(mw, data, dataLen) 程序运行发生了崩溃. 最后找到原因: Ma ...

  8. Excel 如何统计非空非零单元格的个数

    使用 Excel 统计非空非零单元格的个数: ——使用函数 :=COUNTIFS($B$2:$B$194440,"<>",$B$2:$B$194440,"&l ...

  9. 公司某台电脑连接服务器共享文件失败(Windows找不到"\\192.168.1.3)

    电脑键入“\\192.168.1.3”后报错“Windows找不到"\\192.168.1.3".请检查拼写并重试.” 我做了两步: 1.检查网络发现是否开启: 控制面板---&g ...

  10. 二分法构造AVL树

    public class ConvertSortedArrayToBinarySearchTree { public static TreeNode sortedArrayToBST(int[] nu ...