音视频开发: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

相关推荐
西瓜er3 小时前
JAVA:Spring Boot 集成 FFmpeg 实现多媒体处理
java·spring boot·ffmpeg
小美哥13149 小时前
格式工厂转换视频很慢、Pr视频剪辑导出很慢的优化设置(就用显卡的默认设置即可)
音视频·格式工厂
宠友信息12 小时前
仿小红书短视频APP源码:Java微服务版支持小程序编译的技术解析
java·微服务·音视频
QMCY_jason12 小时前
ubuntu 24.04 FFmpeg编译 带Nvidia 加速记录
linux·ubuntu·ffmpeg
bylander15 小时前
【论文阅读】通义实验室,VACE: All-in-One Video Creation and Editing
论文阅读·人工智能·计算机视觉·音视频
Black蜡笔小新16 小时前
破解工地防盗难题:如何利用EasyCVR实现视频监控统一管理?
运维·音视频
eqwaak016 小时前
动态图表导出与视频生成:精通Matplotlib Animation与FFmpeg
开发语言·python·ffmpeg·音视频·matplotlib
执尺量北斗17 小时前
LinkMate 智能会议室系统:基于 Qt / QML / WebRTC / FFmpeg / Whisper / OpenGL 的实时音视频会议平台
qt·ffmpeg·webrtc
Enabler_Rx21 小时前
AI辅助制作宣传视频
音视频
PhoenixAI821 小时前
保姆级教程-剪映多视频融合及识别文字转换方法
音视频