如何正确编码 Android 的视频?我已经看到了支持的媒体格式,但我真的不知道从哪里开始使用这些设置制作视频。
我还没有流式传输这些视频。这些仅用于本地播放。
对视频进行编码以最大限度地提高跨 Android 设备的兼容性的正确流程是什么?
如何正确编码 Android 的视频?我已经看到了支持的媒体格式,但我真的不知道从哪里开始使用这些设置制作视频。
我还没有流式传输这些视频。这些仅用于本地播放。
对视频进行编码以最大限度地提高跨 Android 设备的兼容性的正确流程是什么?
这是我用来转换适合 Android 的视频的行。我很幸运能在所有运行 Android >= 4 的设备上播放它。请注意,这与推荐的视频编码中的“高质量”参数相匹配。
avconv -i source.mp4 -vcodec libx264 -profile:v baseline -b 500k -r 30 -vf "setsar=1:1" -acodec libvo_aacenc -ac 2 -ar 44100 -ab 128k converted.mp4
我使用的setsar过滤器将样本纵横比设置为 1:1,如果您还使用任何转置或缩放选项,我发现这很有帮助。
例如,要顺时针旋转视频,请使用以下命令:
avconv ... -vf "transpose=dir=clock, setsar=1:1" ...
要记住的一件事是,某些设备不支持播放分辨率大于屏幕的视频。也就是说,屏幕尺寸为 400x800 的手机可能很难播放 800x600 的视频。
要逆时针旋转并缩放视频,使其宽度为 400:
avconv ... -vf "transpose=dir=cclock, scale=400:trunc(ow/a/2)*2, setsar=1:1" ...
要顺时针旋转并缩放视频,使其高度为 400,请使用以下命令:
avconv ... -vf "transpose=dir=clock, scale=trunc(oh*a/2)*2:400, setsar=1:1" ...
我希望这有帮助!对我来说,这经历了很多试验和错误。
对于它的价值,这是我正在使用的 avconv:
avconv version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
built on Apr 2 2013 17:02:36 with gcc 4.6.3