ffmpeg之常用的命令行参数

FFmpeg是一套可以用来转换数字音频、视频的开源代码工程,能够编译出SDK(库)和命令行工具。用户可以使用SDK开发程序实现音视频的操作,也可以使用命令行工具ffmpeg实现音视频的操作。

一、常用参数

  1. -i inputfile

    指定输入文件

  2. -ss position

    指定开始处理的时间点,例如 -ss 00:01:29 表示从1分29秒开始

  3. -t duration

    指定处理的持续时间,例如 -t 60 表示处理60秒

  4. -vf filters

    设置视频过滤器,用于对视频进行处理,例如 -vf "scale=1280:720" 表示将视频缩放为640x480

  5. -af filters

    设置音频过滤器,用于对音频进行处理,例如 -af "volume=3" 表示将音量增大两倍

  6. -c:v codec

    指定视频编解码器

  7. -c:a codec

    指定音频编解码器。

  8. -b:v bitrate

    指定视频的比特率

  9. -b:a bitrate

    指定音频的比特率

  10. -r framerate

    指定视频的帧率

  11. -s resolution

    指定视频的分辨率

  12. -f format

    指定输出的文件格式

  13. -map

    选择指定的流进行处理,例如 -map 0:0 表示选择第一个输入文件的第一个流进行处理

  14. -y

    覆盖已存在的输出文件

二、常用命令

  1. 转码视频: mp4转avi
bash 复制代码
 ffmpeg -i input.mp4 output.avi
  1. 转码音频:mp3转wav
bash 复制代码
ffmpeg -i input.mp3 output.wav
  1. 改变视频尺寸
bash 复制代码
 ffmpeg -i input.mp4 -vf scale=640:480 output.mp4
  1. 改变视频帧率
bash 复制代码
ffmpeg -i input.mp4 -r 30 output.mp4
  1. 按时间裁剪视频
bash 复制代码
 ffmpeg -i input.mp4 -ss 00:00:10 -to 00:00:30 -c:v copy -c:a copy output.mp4
  1. mp4中提取音频
bash 复制代码
ffmpeg -i input.mp4 -vn -acodec copy output.aac
  1. 改变音量
bash 复制代码
 ffmpeg -i input.mp4 -af volume=2 output.mp4
  1. 合并视频
bash 复制代码
ffmpeg -i "concat:input1.mp4|input2.mp4" -c copy output.mp4
  1. 添加字幕
bash 复制代码
 ffmpeg -i input.mp4 -vf "subtitles=test.srt" output.mp4
  1. 转换GIF图像
bash 复制代码
 ffmpeg -ss 00:00:05 -t 3 -i input.mp4 -vf "fps=10,scale=320:-1:flags=lanczos" output.gif
  1. 静音
bash 复制代码
ffmpeg -i video_input.mp4 -an -video_output.mp4
  1. 录屏
bash 复制代码
 ffmpeg -i /dev/video0 output.mkv
  1. 查看版本
bash 复制代码
ffmpeg -version
  1. 提取某一帧
bash 复制代码
ffmpeg -i input.mp4 -ss 00:00:30 -frames:v 1 output-30.png
  1. 查看支持的格式
bash 复制代码
ffmpeg -formats
  1. 查看支持的像素格式
bash 复制代码
ffmpeg -pix_fmts
  1. 查看支持的采样格式
bash 复制代码
ffmpeg -sample_fmts
  1. 查看支持的过滤器
bash 复制代码
 ffmpeg -filters
相关推荐
不太会编程的IT男2 小时前
在 Jetson Orin 开发套件上使用 Hardware Encoder / Decoder 构建 FFmpeg
ffmpeg·视频编解码·h.264
m0_687399843 小时前
写一个Ununtu C++ 程序,调用ffmpeg API, 来判断一个数字电影的视频文件mxf 是不是Jpeg2000?
开发语言·c++·ffmpeg
aqi005 小时前
FFmpeg开发笔记(七十一)使用国产的QPlayer2实现双播放器观看视频
android·ffmpeg·音视频·流媒体
Java患者·9 小时前
【小白】linux安装ffmpeg | java转码 【超详细】
ffmpeg
suifen_9 小时前
RK平台ffmpeg支持硬件编解码
ffmpeg
feiyangqingyun10 小时前
全网唯一/Qt结合ffmpeg实现手机端采集摄像头推流到rtsp或rtmp/可切换前置后置摄像头/指定分辨率帧率
qt·智能手机·ffmpeg
melonbo19 小时前
使用FFmpeg将H.264码流封装为MP4
ffmpeg·音视频·h.264
aqi0020 小时前
FFmpeg开发笔记(七十七)Android的开源音视频剪辑框架RxFFmpeg
android·ffmpeg·音视频·流媒体
慢行的骑兵1 天前
Android音视频探索之旅 | CMake基础语法 && 创建支持Ffmpeg的Android项目
ffmpeg·音视频
Jons伯恩特1 天前
音频动态压缩算法曲线实现
音频·动态压缩·juce·压缩器·c++实现·曲线绘制