如何最好地重新编码视频以实现较低性能的播放?

如何最好地重新编码视频以实现较低性能的播放?

我有各种 MKV 视频文件,包括一些带有 FLAC 音频的高清 (1080p)。这些可以在具有中档显卡(使用 mpv/ffmpeg)的几年前 PC 上正常播放,但当我尝试在 Kindle Fire HD8(使用适用于 Android 的 VLC)上播放它们时,它会导致卡住。

我怎样才能重新编码它们以便较低功率的机器可以播放它们?我认为这会导致质量下降,但我怀疑我无论如何都会在较小的屏幕上注意到。我已经ffmpeg安装并希望只使用它,但如果更容易,我可以安装其他一些工具。想必这里需要进行多种权衡;如果对这些选项有一些了解那就太好了。 (我还可以发布有关相关文件的精确编码的更多详细信息,如果这有用的话;目前我不知道什么是相关的。)

答案1

我不确定 Kindle,但我已经使用类似的东西来转换视频以在我的小 Nano 屏幕上播放。它可能适用于您的 Kindle。

PARAMS="-b 40k -s 640x480 -aspect 640:480"
ffmpeg -i infile.mkv -vcodec copy $PARAMS -acodec copy outfile.mkv

调整 Kindle 的尺寸参数和宽高比。另外,40k 的比特率参数可能太低。尝试 50k 或 64k。

如果你想从 FLAC 转换为 MP3,你可以使用类似的东西

APARAMS="libmp3lame -ac 2 -ar 4800 -ab 192k"
ffmpeg -i infile.mkv -vcodec copy $PARAMS -acodec $APARAMS outfile.mkv

如果您想从 MKV 更改为 WMV 或其他格式,请尝试此操作

ffmpeg -i infile.mkv -vcodec wmv2 $PARAMS -acodec copy outfile.wmv
我怀疑VLC会播放MKV。我只是想我会提到如何改变它,以防你想看看它有什么效果。

答案2

我最终做了类似的事情:

ffmpeg -i input-file.mkv -vcodec h264 -s:v 1280x800 -acodec copy output-file.mkv

值得注意的是: using-vcodec copy不起作用,因为它完全绕过了解码/编码,因此不允许应用过滤器。将视频缩小到这种程度最终会显着缩小文件并解决性能问题。我还尝试进一步限制比特率-b,但这导致了明显的质量影响,同时对播放性能没有任何影响。

相关内容