Gar*_*ett 32 video codecs ffmpeg video-conversion
我知道这里有很多关于视频编码器的问题,但我的问题更多是关于工作流程/效率。
对于我的日常工作,我需要经常从许多随机格式(通常是大型AVI、M4V和其他格式)转换视频,然后将它们转换并压缩成高效的文件,我们可以在 Internet 上使用这些文件进行上传。我必须生成的格式是:
我需要为几个用例创建通用模板(转换为与源相同、1080p或720p)并且能够快速处理这些并排队。
关于如何最好地在 Ubuntu 中进行这个过程的任何想法?
llo*_*gan 60
如果您更喜欢命令行,则可以使用ffmpeg(或handbrake-cli)。
假设您使用的是最新版本的ffmpeg:
ffmpeg -i input -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k \
-movflags +faststart -vf scale=-2:720,format=yuv420p output.mp4
Run Code Online (Sandbox Code Playgroud)
-crf: 质量。范围是对数 0(无损)到 51(最差质量)。默认值为 23。主观理智范围为 ~18-28 左右。使用仍为您提供可接受质量的最高值。如果您要重新编码不切实际的大型输入以上传到 YouTube 或类似内容,请尝试使用 17 或 18 的值,因为这些视频服务无论如何都会重新编码。
-preset: 编码速度。较慢的预设提供更好的压缩(每个文件大小的质量),但速度较慢。使用您有耐心的最慢速度:超快、超快、非常快、更快、快、中(默认)、慢、慢、非常慢。
-movflags +faststart:在渐进式下载观看的情况下,允许视频在完全下载之前播放。如果您正在托管视频,则很有用,否则如果上传到 YouTube 等视频服务,则是多余的。
-vf scale=-2:720,format=yuv420p:一个FilterGraph动态使用规模和格式的视频滤镜。高度缩放到 720 像素,并自动选择将保留纵横比的宽度,然后确保像素格式与愚蠢的播放器兼容。
-b:a 128k:音频比特率。如果您ffmpeg已过时,则需要添加-strict experimental以使用-c:a aac.
由于您的 MOV 和 MP4 文件可能包含相同的视频和音频格式,您可以对 MP4 进行编码并通过重新混合(使用流复制模式)而不是重新编码来制作 MOV :
ffmpeg -i input.mp4 -codec copy output.mov
Run Code Online (Sandbox Code Playgroud)
FFmpeg 仅支持 WMV 7 和 8。我不知道版本 9 的开源编码器。
$ ffmpeg -encoders | grep -i windows
[...]
V..... = Video
A..... = Audio
------
V..... wmv1 Windows Media Video 7
V..... wmv2 Windows Media Video 8
A..... wmav1 Windows Media Audio 1
A..... wmav2 Windows Media Audio 2
Run Code Online (Sandbox Code Playgroud)
由于我不熟悉这些编码器,我只能举一个未经测试的例子:
ffmpeg -i input -c:v wmv2 -b:v 1024k -c:a wmav2 -b:a 192k output.wmv
Run Code Online (Sandbox Code Playgroud)
您可以下载ffmpeg的Linux 版本或按照一步一步的ffmpeg 编译指南来自定义您的版本。
要对目录中的所有视频进行编码:
$ mkdir encoded
$ for f in *.avi; do ffmpeg -i "$f" -c:v libx264 -crf 23 -preset medium \
-c:a aac -b:a 128k -movflags +faststart -vf scale=-2:720,format=yuv420p \
"encoded/${f%.avi}.mp4"; done
Run Code Online (Sandbox Code Playgroud)
试试手刹。
HandBrake 是一种将视频从几乎任何格式转换为一系列现代、广泛支持的编解码器的工具。要安装,只需按键盘上的Ctrl+ Alt+T打开终端。当它打开时,运行以下命令:
sudo add-apt-repository ppa:stebbins/handbrake-releases
sudo apt-get update
sudo apt-get install handbrake
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
122974 次 |
| 最近记录: |