ffmpeglinux命令大全
-
FFmpeg 是一个开源的多媒体处理工具,具有强大的功能和广泛应用。在 Linux 系统下,使用FFmpeg可以实现音频、视频的转换、剪切、合并等操作。下面是一些常用的FFmpeg命令:
1. 查看FFmpeg版本信息:ffmpeg -version
2. 转换视频格式:ffmpeg -i input.mp4 output.avi
3. 转换音频格式:ffmpeg -i input.mp3 output.wav
4. 转换视频为GIF动图:ffmpeg -i input.mp4 output.gif
5. 调整视频分辨率:ffmpeg -i input.mp4 -s 1280×720 output.mp4
6. 调整视频帧率:ffmpeg -i input.mp4 -r 30 output.mp4
7. 裁剪视频:ffmpeg -i input.mp4 -ss 00:00:10 -t 00:00:30 output.mp4
8. 合并视频:ffmpeg -i input1.mp4 -i input2.mp4 -i input3.mp4 -filter_complex “[0:v:0][1:v:0][2:v:0]concat=n=3:v=1[outv]” -map “[outv]” output.mp4
9. 提取视频的音频轨道:ffmpeg -i input.mp4 -vn output.mp3
10. 提取视频的视频轨道:ffmpeg -i input.mp4 -an output.mp4
11. 添加字幕:ffmpeg -i input.mp4 -vf “subtitles=subtitle.srt” output.mp4
12. 调整音频音量:ffmpeg -i input.mp3 -af “volume=2” output.mp3
13. 提取视频的关键帧:ffmpeg -i input.mp4 -vf “select=’eq(pict_type,PICT_TYPE_I)'” -vsync 0 keyframes_%02d.jpg
14. 增加视频的水印:ffmpeg -i input.mp4 -i logo.png -filter_complex “overlay=x=10:y=10” output.mp4
15. 转换视频分辨率并加速播放:ffmpeg -i input.mp4 -vf “setpts=0.5*PTS,scale=1280:720” output.mp4
这里列举了一些常用的FFmpeg命令,供参考使用。如果需要更多高级的功能和参数,可以查阅相关文档或者使用ffmpeg –help命令来获取详细的帮助信息。
2年前 -
FFmpeg是一款开源的多媒体处理工具,它可以进行音频和视频转码、剪辑、合并等各种操作。在Linux系统中,FFmpeg是非常常用的工具之一,可以通过命令行的方式使用它进行各种操作。
下面是一些常用的FFmpeg命令,按照功能可以分为音频处理命令、视频处理命令和转码命令。
一、音频处理命令:
1. 提取音频:
“`
ffmpeg -i input.mp4 -vn -acodec copy output.aac
“`
该命令会从input.mp4文件中提取音频,保存为output.aac文件。2. 转换音频格式:
“`
ffmpeg -i input.mp3 output.wav
“`
该命令将input.mp3文件转换为output.wav文件。3. 调整音频音量:
“`
ffmpeg -i input.mp3 -af “volume=2” output.mp3
“`
该命令将input.mp3文件的音量增加一倍,并保存为output.mp3文件。4. 合并音频:
“`
ffmpeg -i input1.mp3 -i input2.mp3 -filter_complex amix=inputs=2:duration=first:dropout_transition=2 output.mp3
“`
该命令将input1.mp3和input2.mp3两个音频文件合并为一个output.mp3文件。5. 剪辑音频:
“`
ffmpeg -i input.mp3 -ss 00:00:10 -t 00:00:30 output.mp3
“`
该命令将从input.mp3文件中剪辑出从第10秒开始的30秒长度的音频,保存为output.mp3文件。二、视频处理命令:
1. 提取视频:
“`
ffmpeg -i input.mp4 -an -vcodec copy output.mp4
“`
该命令会从input.mp4文件中提取视频,保存为output.mp4文件。2. 转换视频格式:
“`
ffmpeg -i input.mp4 output.avi
“`
该命令将input.mp4文件转换为output.avi文件。3. 调整视频大小:
“`
ffmpeg -i input.mp4 -vf scale=640:480 output.mp4
“`
该命令将input.mp4文件的尺寸调整为640×480,并保存为output.mp4文件。4. 合并视频:
“`
ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex concat=n=2:v=1:a=1 output.mp4
“`
该命令将input1.mp4和input2.mp4两个视频文件合并为一个output.mp4文件。5. 剪辑视频:
“`
ffmpeg -i input.mp4 -ss 00:00:10 -t 00:00:30 output.mp4
“`
该命令将从input.mp4文件中剪辑出从第10秒开始的30秒长度的视频,保存为output.mp4文件。三、转码命令:
1. 转码为H.264格式:
“`
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -c:a aac -b:a 128k output.mp4
“`
该命令将input.mp4文件转码为H.264编码的output.mp4文件。2. 转码为VP9格式:
“`
ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -c:a libopus -b:a 128k output.webm
“`
该命令将input.mp4文件转码为VP9编码的output.webm文件。3. 转码为MP3格式:
“`
ffmpeg -i input.mp4 -vn -c:a libmp3lame -q:a 2 output.mp3
“`
该命令将input.mp4文件提取音频并转码为MP3格式的output.mp3文件。4. 转码为AAC格式:
“`
ffmpeg -i input.mp4 -c:v copy -c:a aac -strict experimental output.mp4
“`
该命令将input.mp4文件转码为AAC格式的output.mp4文件。5. 转码为FLAC格式:
“`
ffmpeg -i input.mp4 -vn -c:a flac output.flac
“`
该命令将input.mp4文件提取音频并转码为FLAC格式的output.flac文件。以上仅是一些常用的FFmpeg命令示例,通过这些命令可以完成许多音频和视频处理的任务。对于更多的命令和参数,你可以查阅FFmpeg的官方文档或在命令行中输入`ffmpeg -h`来获取帮助信息。
2年前 -
标题:FFmpeg Linux 命令大全
引言:
FFmpeg 是一个开源的跨平台音视频处理工具,可以用于音视频的编解码、转码、剪辑等操作。在 Linux 系统上,FFmpeg 提供了丰富的命令行选项和参数,使用户可以轻松完成各种音视频处理任务。本文将介绍一些常用的 FFmpeg 命令及其操作流程,帮助用户更好地利用 FFmpeg 在 Linux 系统上进行音视频处理。目录:
1. 安装 FFmpeg
2. 基本操作
2.1 播放音视频文件
2.2 截取音视频片段
2.3 视频转码
2.4 音频转码
2.5 信息查看
3. 高级操作
3.1 添加字幕
3.2 水印添加
3.3 视频合并
3.4 视频拼接
3.5 视频剪辑
3.6 音频混音
4. 常见问题及解决方案
4.1 不支持的格式
4.2 多线程处理
4.3 输出参数设置1. 安装 FFmpeg
要使用 FFmpeg 在 Linux 系统上进行音视频处理,首先需要安装 FFmpeg。
在 Ubuntu 系统上,可以使用以下命令进行安装:“`
sudo apt-get update
sudo apt-get install ffmpeg
“`
在 CentOS 系统上,可以使用以下命令进行安装:“`
sudo yum install epel-release
sudo yum install ffmpeg
“`
安装完成后,可以使用 `ffmpeg -version` 命令来验证安装是否成功。2. 基本操作
2.1 播放音视频文件
要播放音视频文件,可以使用以下命令:“`
ffmpeg -i input.mp4
“`
其中,`input.mp4` 是需要播放的音视频文件。该命令会输出音视频的相关信息,并自动打开一个播放器来进行播放。2.2 截取音视频片段
要截取音视频片段,可以使用以下命令:“`
ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:30 -c:v copy -c:a copy output.mp4
“`
其中,`input.mp4` 是原始音视频文件,`-ss 00:01:00` 表示从 1 分钟开始截取,`-to 00:02:30` 表示截取到 2 分钟 30 秒的位置。`-c:v copy` 和 `-c:a copy` 分别表示视频和音频部分不进行重新编码,直接复制到输出文件中。2.3 视频转码
要将视频文件进行转码,可以使用以下命令:“`
ffmpeg -i input.mp4 -c:v libx264 -preset slow -crf 23 -c:a aac -b:a 192k output.mp4
“`
其中,`libx264` 是视频编码器,`slow` 是 CPU 使用的速度,`-crf 23` 是视频质量设置,`aac` 是音频编码器,`-b:a 192k` 是音频比特率设置。2.4 音频转码
要将音频文件进行转码,可以使用以下命令:“`
ffmpeg -i input.mp3 -b:a 128k output.mp3
“`
其中,`input.mp3` 是原始音频文件,`-b:a 128k` 是音频比特率设置。2.5 信息查看
要查看音视频文件的详细信息,可以使用以下命令:“`
ffprobe -i input.mp4
“`
其中,`input.mp4` 是需要查看的音视频文件。该命令会输出音视频的详细信息,包括码率、分辨率、编码器等。3. 高级操作
3.1 添加字幕
要在视频中添加字幕,可以使用以下命令:“`
ffmpeg -i input.mp4 -vf “subtitles=input.srt” output.mp4
“`
其中,`input.mp4` 是原始视频文件,`input.srt` 是字幕文件,`output.mp4` 是输出视频文件。该命令会将字幕文件添加到视频中。3.2 水印添加
要在视频中添加水印,可以使用以下命令:“`
ffmpeg -i input.mp4 -i watermark.png -filter_complex “overlay=W-w-10:H-h-10” output.mp4
“`
其中,`input.mp4` 是原始视频文件,`watermark.png` 是水印图片,`output.mp4` 是输出视频文件。`overlay` 表示水印叠加位置,`W-w-10` 表示水印距离视频右边缘 10 像素,`H-h-10` 表示水印距离视频下边缘 10 像素。3.3 视频合并
要将多个视频文件合并为一个文件,可以使用以下命令:“`
ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex “[0:v][0:a][1:v][1:a]concat=n=2:v=1:a=1” output.mp4
“`
其中,`input1.mp4` 和 `input2.mp4` 是需要合并的视频文件,`output.mp4` 是输出视频文件。3.4 视频拼接
要将多个视频文件拼接为一个文件,可以使用以下命令:“`
ffmpeg -f concat -i input.txt -c copy output.mp4
“`
其中,`input.txt` 是一个文本文件,内容为需要拼接的视频文件列表,格式如下:
“`
file ‘input1.mp4’
file ‘input2.mp4’
“`
`-c copy` 表示直接复制视频流,不进行转码。3.5 视频剪辑
要对视频进行剪辑,可以使用以下命令:“`
ffmpeg -i input.mp4 -vf “crop=w:h:x:y” output.mp4
“`
其中,`input.mp4` 是原始视频文件,`output.mp4` 是输出视频文件。`crop` 表示剪辑的区域,`w` 和 `h` 分别表示剪辑的宽度和高度,`x` 和 `y` 分别表示剪辑的起始坐标。3.6 音频混音
要将多个音频文件混音为一个文件,可以使用以下命令:“`
ffmpeg -i input1.mp3 -i input2.mp3 -filter_complex amix=inputs=2:duration=shortest output.mp3
“`
其中,`input1.mp3` 和 `input2.mp3` 是需要混音的音频文件,`output.mp3` 是输出音频文件。4. 常见问题及解决方案
4.1 不支持的格式
如果遇到不支持的音视频格式,可以尝试使用 FFmpeg 的编译版或者使用其他工具进行格式转换。4.2 多线程处理
可以使用 FFmpeg 的 `-threads` 参数来指定多线程处理,例如:“`
ffmpeg -i input.mp4 -threads 4 output.mp4
“`
其中,`-threads 4` 表示使用 4 个线程进行处理。4.3 输出参数设置
可以使用 FFmpeg 的 `-b:v`、`-b:a` 参数来设置输出视频和音频的比特率,例如:“`
ffmpeg -i input.mp4 -b:v 1M -b:a 128k output.mp4
“`
其中,`-b:v 1M` 和 `-b:a 128k` 分别表示视频和音频的比特率设置。结论:
本文介绍了一些常用的 FFmpeg Linux 命令及其操作流程,包括安装、基本操作、高级操作和常见问题解决方案。通过了解这些命令和技巧,用户可以更好地利用 FFmpeg 在 Linux 系统上进行音视频处理。2年前