FFmpeg 音视频开发工具

目录

[FFmpeg 下载与安装](#FFmpeg 下载与安装)

[ffmpeg 使用快速入门](#ffmpeg 使用快速入门)

[ffplay 使用快速入门](#ffplay 使用快速入门)


FFmpeg 全套下载与安装

1、FFmpeg 是处理音频、视频、字幕和相关元数据等多媒体内容的库和工具的集合。一个完整的跨平台解决方案,用于录制、转换和流式传输音频和视频。

官网:https://www.ffmpeg.org/

源码:https://github.com/FFmpeg/FFmpeg

在线文档:http://ffmpeg.org/documentation.html

2、进入官网下载页面:https://www.ffmpeg.org/download.html,选择 Get packages & executable files (可执行文件)-> 以 Windox 系统为例,选择 Windows Builds from gyan.dev-> 然后可以看到一些不同的下载方式,不同的下载地址,视个人网速而定,本人选择 git master builds 下面mirror @ github 下面的镜像地址,-> 然后在 githunb 中下载 ffmpeg-2023-07-19-git-efa6cec759-full_build.zip(推荐下载 -full 全量版本,这样包含的库更多)。

3、下载解压后在 bin 目录下即可看到目标 .exe 程序文件:ffmpeg.exe、ffplay.exe、ffprobe.exe。

ffmpeg:是一个用于操作、转换和流式传输多媒体内容的命令行工具箱。

ffplay:是一款极简主义的多媒体播放器。

ffprobe:是一个用于检查多媒体内容的简单分析工具。

其他小工具:如 aviocat、ismindex 和 qt-faststart。

4、设置环境变量 :搜索 -> 高级系统设置->高级->环境变量->系统变量-> 选择"Path" -> 点击"编辑->新建 -> 把FFmpeg解压后的bin文件夹路径复制粘贴进去,然后点击确定关闭即可。

5、测试是否安装成功,按 win + R 打开运行,输入cmd打开命令运行窗口,输入命令 ffmpeg --version 查看版本信息。

6、安装成功后就可以直接使用命令运行窗口执行ffmpeg命令进行各种媒体格式的转换了。

bash 复制代码
C:\Users\A> ffmpeg -version
ffmpeg version 2023-07-19-git-efa6cec759-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil      58. 14.100 / 58. 14.100
libavcodec     60. 22.100 / 60. 22.100
libavformat    60. 10.100 / 60. 10.100
libavdevice    60.  2.101 / 60.  2.101
libavfilter     9.  8.102 /  9.  8.102
libswscale      7.  3.100 /  7.  3.100
libswresample   4. 11.100 /  4. 11.100
libpostproc    57.  2.100 / 57.  2.100

ffmpeg 使用快速入门

1、ffmpeg 是一个用于操作、转换和流式传输多媒体内容的命令行工具箱。

2、官网在线文档:http://ffmpeg.org/ffmpeg.html

3、下载的安装包解压后 doc 目录下有离线文档,如:file:///D:/software/ffmpeg-2023-07-19-git-efa6cec759-full_build/doc/ffmpeg.html。

演示 描述
ffmpeg -i input.mp4 output.avi 将 input.mp4 转为 input.avi 格式
ffmpeg -i input.avi -b:v 64k -bufsize 64k output.mp4 将输出文件的视频比特率设置为64 kbit/s
ffmpeg -i input.avi -r 24 output.mp4 强制输出文件的帧速率为24 fps
ffmpeg -r 1 -i input.m2v -r 24 output.mp4 强制输入文件的帧速率(仅对原始格式有效)为1 fps,强制输出文件的帧率为24 fps

ffplay 使用快速入门

1、ffplay 是一款极简主义的多媒体播放器,功能相当的强大,基于命令行和快捷键操作,没有图形化界面。

2、官网在线文档:https://ffmpeg.org/ffplay.html

3、下载的安装包解压后 doc 目录下有离线文档,file:///D:/software/ffmpeg-2023-07-19-git-efa6cec759-full_build/doc/ffplay.html

按键 作用
q, ESC 退出
f 全屏
p, 空格 暂停
w 显示音频波形
s 逐帧显示
左方向键/右方向键 向后10s/向前10s
上方向键/下方向键 向后1min/向前1min
page down/page up 向后10min/向前10min
鼠标点击屏幕 跳转到指定位置(根据鼠标位置相对屏幕的宽度计算)
[常用快捷键]
名称 有参数 作用
x Y 强制屏幕宽度
y Y 强制屏幕高度
s Y 强制屏幕大小
fs N 全屏
an N 关闭音频
vn N 关闭视频
ast Y 设置想播放的音频流(需要指定流ID)
vst Y 设置想播放的视频流(需要指定流ID)
sst Y 设置想播放的字幕流(需要指定流ID)
ss Y 从指定位置开始播放,单位是秒
t Y 播放指定时长的视频
nodisp N 无显示屏幕
f Y 强制封装格式
pix_fmt Y 指定像素格式
stats N 显示统计信息
idct Y IDCT算法
ec Y 错误隐藏方法
sync Y 视音频同步方式(type=audio/video/ext)
autoexit N 播放完成自动退出
exitonkeydown N 按下按键退出
exitonmousedown N 按下鼠标退出
loop Y 指定循环次数
framedrop N CPU不够的时候丢帧
window_title Y 显示窗口的标题
rdftspeed Y Rdft速度
showmode Y 显示方式(0 = video, 1 = waves, 2 = RDFT)
codec Y 强制解码器
[常用命令参数]
相关推荐
易我数据恢复大师几秒前
怎么提取音频保存到本地?电脑音频提取方法
音视频·软件·音频提取
野蛮的大西瓜3 分钟前
开源呼叫中心中,如何将ASR与IVR菜单结合,实现动态的IVR交互
人工智能·机器人·自动化·音视频·信息与通信
嘟嘟实验室2 小时前
微信小程序xr-frame透明视频实现
微信小程序·ffmpeg·音视频·xr
红米饭配南瓜汤4 小时前
WebRTC服务质量(09)- Pacer机制(01) 流程概述
网络·音视频·webrtc
是十一月末7 小时前
Python进阶之opencv图片和视频基本读取关闭
python·opencv·音视频·cv2
泰勒朗斯7 小时前
如何编译Opencv +ffmpeg linux 明明安装了ffmpeg但是opencv就是找不到
linux·opencv·ffmpeg
gomogomono9 小时前
HDR视频技术之十一:HEVCH.265 的 HDR 编码方案
音视频·h.265·hdr·yuv
Eric.Lee202111 小时前
moviepy将图片序列制作成视频并加载字幕 - python 实现
开发语言·python·音视频·moviepy·字幕视频合成·图像制作为视频
却道天凉_好个秋11 小时前
音视频学习(二十四):hls协议
音视频·hls
-Mr_X-13 小时前
windows下srs流媒体服务器使用ffmpeg推流
ffmpeg