音视频开发:FFmpeg库的使用

文章目录

一、FFmpeg的介绍

FFmpeg 是使用广泛的多媒体框架,是一个强大的音视频处理开源库,可用于音视频文件的解码(decode)、编码(encode)、转码(transcode)、多路复用(multiplex)等处理任务。

它支持几乎所有的音视频格式,支持各种操作系统环境。

它既可以使用 API 对音视频进行处理,也可以使用 FFmpeg 命令编辑音视频文件。

很多常用的视频工具、平台、播放器,都依赖于FFmpeg,比如:VLC player、POT player、Google Chrome、You Tube、OBS、Blender、Vimeo等

二、FFmpeg的安装

1.官网网址:ffmpeg.org

2.点击download

3.选择Windows版本 (以Windows举例)

4.点击下载 完整版FFmpeg

5.将文件解压

将解压后的文件夹,改名为ffmpeg

6.将ffmpeg文件夹复制到C盘Program Files路径下

7.添加环境变量

(1)点击地址栏,将路径复制

bash 复制代码
C:\Program Files\ffmpeg\bin

(2)在Windows搜索框中,搜索"环境变量",打开"编辑系统环境变量"

(3)点击"环境变量"

(4)在"系统变量"中找到"Path",双击

(5)点击新建,把刚才(1)的路径复制进去,然后一路点确定,就可以了

(6)然后打开cmd,输入ffmpeg。出现版本号,则说明安装成功了

三、FFmpeg的使用

刚才的安装的ffmpeg文件夹的bin目录下,有三个可执行程序。作用分别如下:

ffmpeg.exe:FFmpeg的核心工具,支持 格式转换、剪辑、提取音乐、截取视频等所有操作

ffplay.exe:是一个基于FFmpeg库的简单媒体播放器,可以用它来直接播放各种格式的音视频文件

ffprobe.exe:用来查看音频和视频文件的编码格式、比特率、分辨率、时长等详细信息

1.ffplay:播放音视频

2.如图,要播放一个mp4文件。可以在其地址栏输入cmd

输入命令ffplay命令就可以播放了。双击会全屏,按Esc退出播放。

bash 复制代码
ffplay 通风装置.mp4

2.ffprobe:查看视频信息

查看视频的信息

bash 复制代码
ffprobe 通风装置.mp4

可以看到:

(1)视频流:h.264编码格式,视频的分辨率是1080x1920,比特率是8034kb/s,帧率是 每秒30帧 (30 fps)

(2)音频流:aac编码格式, 音频采样率是44100Hz,声道配置是立体声左右两声道(stereo)

3.ffmpeg:处理视频

(1)格式转换

比如,我要将这个mp4视频文件转换为mkv格式的视频文件。cmd中输入以下命令:

bash 复制代码
ffmpeg -i 通风装置.mp4 通风装置.mkv


如此,格式转换就成功了。文件夹中会多出一个mkv文件,不会覆盖原视频文件。

然后使用ffplay来播放刚才生成的mkv视频文件

bash 复制代码
ffplay 通风装置.mkv

(2)帮助

输入下面命令可获取帮助,查看其他的命令。或者上网 (百度/谷歌/AI) 搜需要使用的命令。

bash 复制代码
ffmpeg -h

四、参考资料

1.【ffmpeg】2024普通人不会代码轻松学会ffmpeg,从下载到操作,一看就会!

2.100秒了解FFmpeg

相关推荐
YWamy3 分钟前
智能硬件音视频SDK选型:RTC关键指标全指南
音视频
wsoz15 分钟前
音视频分布传输协议(AVDTP)
音视频·嵌入式·蓝牙br/edr·avdtp
starvapour12 小时前
Ubuntu系统下基于终端的音频相关命令
linux·ubuntu·音视频
Memory_荒年14 小时前
FFmpeg:音视频界的“万能瑞士军刀”
ffmpeg
高山流水&上善1 天前
基于BERT情感分析与多维度可视化的B站热门视频评论分析系统
人工智能·bert·音视频
QJtDK1R5a1 天前
V4L2 vs GStreamer vs FFmpeg:Linux多媒体处理的三个层级
linux·运维·ffmpeg
阿酷tony1 天前
如何做视频课程的报名观看?实现报名后,才能观看视频?
音视频
福大大架构师每日一题1 天前
ollama v0.20.0 更新:Gemma 4 全家桶发布,音频、视觉、MoE、BPE 支持全面升级
音视频·ollama
Flamingˢ2 天前
ZYNQ + OV5640 + HDMI 视频系统调试记录:一次 RGB888 与 RGB565 引发的黑屏问题
arm开发·嵌入式硬件·fpga开发·vim·音视频
Flamingˢ2 天前
YNQ + OV5640 视频系统开发(二):OV5640_Data IP 核源码解析
arm开发·嵌入式硬件·网络协议·tcp/ip·fpga开发·vim·音视频