ffmpeg基础整理

FFmpeg 是一个开源的跨平台 多媒体处理工具 ,可以用于 录制、转换、编辑、流式传输 音视频文件。它支持几乎所有常见的音视频格式,功能极其强大,是开发者、视频创作者常用的命令行工具。


一、FFmpeg 核心功能

  1. 格式转换:将视频/音频从一种格式转换为另一种格式(如 MP4 → AVI、MP3 → WAV)。
  2. 剪辑/合并:截取视频片段、合并多个文件。
  3. 调整参数:修改分辨率、码率、帧率、音量等。
  4. 提取内容:从视频中提取音频,或从音频中提取片段。
  5. 流媒体处理:支持直播推流、拉流等网络传输操作。

二、基础安装

  • Windows:官网下载编译好的二进制文件,解压后即可使用。
  • macOS:通过 Homebrew 安装:brew install ffmpeg
  • Linux:使用包管理器安装:
bash 复制代码
sudo apt-get install ffmpeg # Debian/Ubuntu 
sudo yum install ffmpeg # CentOS

三、基础使用命令

1. 通用命令结构
bash 复制代码
ffmpeg -i [输入文件] [参数] [输出文件]

2. 常见场景示例

(1) 格式转换(MP4 → AVI)

bash 复制代码
ffmpeg -i input.mp4 output.avi

(2) 提取音频(从视频中提取 MP3)

bash 复制代码
ffmpeg -i input.mp4 -vn -q:a 0 output.mp3
 # -vn: 禁用视频流
 # -q:a 0: 音频质量最佳(0-9,0为最高)

(3) 调整视频分辨率(缩放为 640x480)

bash 复制代码
ffmpeg -i input.mp4 -vf "scale=640:480" output.mp4

(4) 截取视频片段(从第10秒开始截取15秒)

bash 复制代码
ffmpeg -i input.mp4 -ss 00:00:10 -t 15 output.mp4
 # -ss: 开始时间
 # -t: 持续时间

(5) 合并多个视频文件

  1. 创建 list.txt 文件,写入待合并的文件路径:
bash 复制代码
file 'input1.mp4' file 'input2.mp4'
  1. 执行合并命令:
bash 复制代码
ffmpeg -f concat -i list.txt -c copy output.mp4

3. 常用参数说明

|---------|----------------------------|
| 参数 | 作用 |
| -c:v | 指定视频编码器(如 -c:v libx264) |
| -c:a | 指定音频编码器(如 -c:a aac) |
| -b:v | 设置视频码率(如 -b:v 1M表示 1Mbps) |
| -r | 设置帧率(如 -r 30表示 30fps) |
| -preset | 编码速度与质量的平衡(如 -preset fast) |


四、进阶知识

  1. 流媒体推流:
bash 复制代码
ffmpeg -i input.mp4 -f flv rtmp://live.twitch.tv/app/your-stream-key
  1. 硬件加速(需显卡支持):
bash 复制代码
ffmpeg -hwaccel cuda -i input.mp4 output.mp4 # NVIDIA GPU
  1. 批量处理脚本:结合 Shell/Python 脚本自动处理多个文件。

相关推荐
锁我喉是吧1 小时前
Windows mediamtx +ffmpeg电脑推视频流
ffmpeg··rtsp·mediamtx
Industio_触觉智能1 小时前
RK3576轻松搭建RTMP视频推流,基于FFmpeg+Nginx协同
nginx·ffmpeg·实时音视频·rtmp·瑞芯微·视频推流·rk3576
你好音视频1 小时前
RTSP推流流程深度解析:从协议原理到FFmpeg实现
ffmpeg·音视频
问道飞鱼14 小时前
【工具介绍】Ffmpeg工具介绍与简单使用
ffmpeg·视频工具
l***775218 小时前
从MySQL5.7平滑升级到MySQL8.0的最佳实践分享
ffmpeg
ZouZou老师1 天前
FFmpeg性能优化经典案例
性能优化·ffmpeg
aqi001 天前
FFmpeg开发笔记(九十)采用FFmpeg套壳的音视频转码百宝箱FFBox
ffmpeg·音视频·直播·流媒体
齐齐大魔王1 天前
FFmpeg
ffmpeg
你好音视频1 天前
FFmpeg RTSP拉流流程深度解析
ffmpeg
IFTICing2 天前
【环境配置】ffmpeg下载、安装、配置(Windows环境)
windows·ffmpeg