NotePublic/Software/Applications/FFMPEG/ffmpeg_的基本使用.md

83 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ffmpeg 的基本使用
## 主要参数
* -i 设定输入流
* -f 设定输出格式
* -ss 开始时间
视频参数:
* -c:v 是 -vcodec 的缩写,设定视频编解码器,未设定时则使用与输入流相同的编解码器
* -vn 不处理视频
* -b 设定视频流量默认为200Kbit/s
* -r 设定帧速率默认为25
* -s 设定画面的宽与高
* -aspect 设定画面的比例
音频参数:
* -c:a 是 -acodec 的缩写,设定声音编解码器,未设定时则使用与输入流相同的编解码器
* -an 不处理音频
* -ar 设定采样率
* -ac 设定声音的 Channel 数
## 获取媒体文件信息
```sh
ffmpeg -i <file>
```
## 转码
若需采用与源文件视频和音频编码一致的输出文件可使用下列命令,其输出的音频质量和视频质量与源文件一样。
```sh
ffmpeg -y -i <input file> -c:v copy -c:a copy -f mp4 <output file>
```
* copy 指采用相同的制式
若对音频或视频转码,可使用下列命令:
```sh
ffmpeg -y -i <input file> -c:v <video codec> -c:a <audio codec> <output file>
```
编解码器类型可通过命令:
```sh
ffmpeg -encoders
ffmpeg -decoders
```
查看,常用的有
Audio codec:
* aac
* ac3
* flac
Video codec:
## 分离视频音频流
```sh
# 分离视频流
ffmpeg -i <input file> -vcodec copy -an <output file>
# 分离音频流
ffmpeg -i <input file> -acodec copy -vn <output file>
```
## 视频截成图片
```sh
# -ss 指示开始时间,如 00:00:05
# -i 指定输入文件,如 ideo.mp4
# -f 指定文件格式,如 image2
# -r 指定截取频率1为每1秒截取一张10为每100ms截取一张0.5为每2s截取一张
# output 为输出文件,如 out%3d.jpg输出文件将以out001.jpg、out002.jpg等命名
./ffmpeg -i <input media> -ss <start time> -f <format> -r <rate> <output>
```