速通FFmpeg入门

举报
Echo_Wish 发表于 2024/09/08 21:30:24 2024/09/08
【摘要】 速通FFmpeg入门

初识:

ffmpeg是一款非常好用处理音视频的工具包。那什么是ffmpeg呢?FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,可以结合开发一些处理视频音频的功能。

安装:

  1. 在官网上下载安装压缩包,解压到本地,添加环境变量

  2. 在cmd终端中输入 ffmpeg -version ,查看是否能正确输出版本号。

使用:

基本指令:

一.查看FFmpeg支持的编码器

ffmpeg configure -encoders

二.查看FFmpeg支持的解码器

ffmpeg configure -decoders

三.查看FFmpeg支持的通信协议

ffmpeg configure -protocols

四.查看FFmpeg所支持的音视频编码格式、文件封装格式与流媒体传输协议

ffmpeg configure --help

FFplay:

介绍:

ffplay是以FFmpeg框架为基础,外加渲染音视频的库libSDL构建的媒体文件播放器。

播放音频文件的命令:

ffplay shy.mp3

这时候就会弹出来一个窗口,一边播放MP3文件,一边将播放音频的图画到该窗口上。针对该窗口的操作如下:

  1. 点击该窗口的任意一个位置,ffplay会按照点击的位置计算出时间的进度,然后seek到计算出来的时间点继续播放。
  2. 按下键盘的左键默认快退10s,右键默认快进10s,上键默认快进1min,下键默认快退1min。
  3. 按ESC就退出播放进程,按W会绘制音频的波形图。

播放视频文件的命令:

ffplay pm.mp4

这时候,就会在新弹出的窗口上播放该视频了。

  1. 如果想要同时播放多个文件,只需在多个命令行下同时执行ffplay就可以了。
  2. 如果按s键就可以进入frame-step模式,即按s键一次就会播放下一帧图像。

相关指令:

  1. 循环播放

    ffplay pm.mp4 -loop 10
    

    上述命令代表播放视频结束之后会从头再次播放,共循环播放10次。

  2. 播放 pm.mp4 ,播放完成后自动退出

    ffplay -autoexit pm.mp4
    
  3. 以 320 x 240 的大小播放 test.mp4

    ffplay -x 320 -y 240 pm.mp4
    
  4. 将窗口标题设置为 “myplayer”,循环播放 2 次

    ffplay -window_title myplayer -loop 2 pm.mp4
    
  5. 播放 双通道 32K 的 PCM 音频数据

    ffplay -f s16le -ar 32000 -ac 2 test.pcm
    

播放示例:

ffplay -loop 1 -window_title ffplaytest -autoexit D:\MyFolder\MyData\video\天才的发明,电力变压器的 内部结构,以及它是如何工作的?.mp4

音画同步

ffplay也是一个视频播放器,所以不得不提出来的一个问题是:音画同步。ffplay的音画同步的实现方式其实有三种,分别是:以音频为主时间轴作为同步源,以视频为主时间轴作为同步源,以外部时钟为主时间轴作为同步源。

ffplay pm.mp4 -sync audio

上面这个命令显式的指定了使用以音频为基准进行音视频同步的方式播放视频文件,当然这也是ffplay的默认播放设置。

ffplay pm.mp4 -sync video

上面这个命令显式的指定了使用以视频为基准进行音视频同步的方式播放视频文件。

ffplay pm.mp4 -sync ext

上面这个命令显式的指定了使用外部时钟为基准进行音视频同步的方式播放视频文件。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。