FFmpeg常用命令讲解及实战二(2)

简介: FFmpeg常用命令讲解及实战二

FFmpeg常用命令讲解及实战二(1)https://developer.aliyun.com/article/1472399


二、ffprobe 常用参数

ffprobe 常用参数比较多, 可以用过 ffprobe --help 来查看详细的信息.

ffprobe -show_packets "input_file":查看的多媒体包信息使用 PACKET 标签所包括起来, 其中包含的信息主要如下:

  • codec_type:多媒体类型,例如视频包,音频包等;
  • stream_index:多媒体的 stream 索引;
  • pts:多媒体的显示时间值;//presentation timestamp
  • pts_time:根据不同格式计算过后的多媒体的显示时间;
  • dts:多媒体解码时间值; //decoding timestamp
  • duration:多媒体包占用的时间值;
  • duration_time:根据不同格式计算过后的多媒体包占用的时间值;
  • size:多媒体包的大小;
  • pos:多媒体包所在的文件偏移位置;
  • flags:多媒体包标记,关键包与非关键包的标记;

1、show_format

除了 packets 与 data 外,ffprobe 还可以分析多媒体的封装格式,通过 show_format 参数可以查看多媒体的封装格式,封装格式使用 FORMAT 标签括起来显示:

ffprobe -show_format "input_file"
• 1

通过读取 format 信息,可以看到这个视频文件有两个流通道,起始时间是 0.000000,长度为 105.282000,文件大小为 21045377 字节,码率为 1599162 字节每秒。

2、show_frames

通过 ffprobe 的 show_frames 的参数可以查看视频文件中的帧信息, 输出的帧信息使用 FRAME 标签括起来

通过 -show_frames 参数查看到如图的信息, 能够看到每一帧的信息, 下面介绍一下重要的信息:

3、show_streams

通过 -show_streams 参数可以查看到多媒体文件中的流信息,流的信息使用 STREAMS 标签括起来:

如图所示,可以看到流的信息:

4、print_format

ffprobe 使用前面的参数可以获得到对应的 key-value,但是阅读起来因习惯不同,所以有的人认为方便,有的人认为不方便,这样就需要用到 ffprobe 的 print_format 参数来进行相应的格式输出,下面举几种输出的例子:

ffprobe -show_frames "input_file" -print_format json

最后一项可选:xml,json,ini,csv,flat

5、select_streams

如果只查看音频流或视频流,使用 select_streams 参数即可,例如只查看视频流的 frames 信息

ffprobe -show_frames -select_streams v -of xml "input_file"

三、ffplay 的常用命令

通常使用 ffplay 作为播放器,其实 ffplay 不但可以做播放器,同样可以作为很多图像化音视频数据的分析根据,通过 ffplay 可以看到视频图像的运动估计方向,音频数据的波形等。

1、ffplay 常用参数

ffplay 不仅仅是播放器,同时也是测试 ffmpeg 的 codec 引擎,format 引擎,以及 filter 引擎的工具,并且也可以做可视化的媒体参数分析,可以通过 ffplay --help 进行查看:

常见参数可以手动进行尝试:

  • 如果希望从视频的第 30 秒开始播放,播放 10 秒钟的文件,则可以使用如下命令:
  • ffplay -ss 30 -t 10 input.mp4
  • 如果希望视频播放时播放器的窗口显示标题为自定义标题,则使用如下命令:
  • ffplay -window_title "Hello World, This is a sample" output.mp4
  • 使用 ffplay 打开网络直播流,可以使用命令:
  • ffplay -window_title "播放测试" rtmp://up.v.test.com/live/stream

2、ffplay 高级参数

通过使用 ffplay --help 参数看到帮助信息比较多,其中包含了高级参数介绍,下面详细介绍一下

3、ffplay 的数据可视化分析应用

使用 ffplay 除了可以播放视频流媒体文件之外,还可以作为可视化的视频流媒体分析工具,例如当播放音频文件时,不确定文件的声音是否正常,噪声数据等分析,可以直接使用 ffplay 播放音频文件,播放的时候将会把解码后的音频数据以音频波形显示出来:

ffplay -showmode 1 1.mp3

从图中可以看到,音频的播放时的波形可以通过振幅显示出来,可以用来看到音频的播放情况

目录
相关文章
|
6月前
|
编解码 vr&ar 数据安全/隐私保护
ffmpeg 命令的简单使用
ffmpeg 命令的简单使用
79 0
|
3月前
|
机器学习/深度学习 编解码 API
【机器学习】FFmpeg+Whisper:二阶段法视频理解(video-to-text)大模型实战
【机器学习】FFmpeg+Whisper:二阶段法视频理解(video-to-text)大模型实战
52 0
|
5月前
|
存储 编解码 Linux
rodert教你学FFmpeg实战这一篇就够了 - 音视频处理入门篇
rodert教你学FFmpeg实战这一篇就够了 - 音视频处理入门篇
62 1
|
5月前
|
Linux 开发工具
Linux下视频截取命令 使用【ffmpeg】使用
Linux下视频截取命令 使用【ffmpeg】使用
49 1
|
6月前
|
编解码 安全 计算机视觉
FFMPEG常用命令 音视频合并
FFMPEG常用命令 音视频合并
136 2
|
6月前
|
Web App开发 编解码 vr&ar
使用FFmpeg从音视频处理到流媒体技术的探索和实战应用
使用FFmpeg从音视频处理到流媒体技术的探索和实战应用
287 2
|
6月前
|
编解码 vr&ar 计算机视觉
FFMPEG常用命令
FFMPEG常用命令
27 0
|
6月前
利用ffmpeg命令从摄像机抓拍一张图片
利用ffmpeg命令从摄像机抓拍一张图片
211 1
|
6月前
|
存储 数据处理 API
ffmpeg过滤器filter理论与实战
ffmpeg过滤器filter理论与实战
106 0
|
25天前
|
Linux 开发工具 Android开发
FFmpeg开发笔记(六十)使用国产的ijkplayer播放器观看网络视频
ijkplayer是由Bilibili基于FFmpeg3.4研发并开源的播放器,适用于Android和iOS,支持本地视频及网络流媒体播放。本文详细介绍如何在新版Android Studio中导入并使用ijkplayer库,包括Gradle版本及配置更新、导入编译好的so文件以及添加直播链接播放代码等步骤,帮助开发者顺利进行App调试与开发。更多FFmpeg开发知识可参考《FFmpeg开发实战:从零基础到短视频上线》。
100 2
FFmpeg开发笔记(六十)使用国产的ijkplayer播放器观看网络视频

热门文章

最新文章