对于从x(MOV,AVI等)到x类型(MP4,MP2等)的视频转换,哪种方法是最佳和最快的

时间:2017-04-18 08:28:47

标签: python ffmpeg

目前,我正在使用ffmpeg库将视频从x类型(MOV,AVI等)转换为专用类型,即MP4。但是视频转换需要很长时间。可以说MOV视频大小为1.8GB,转换大约需要1小时30分钟。还有其他方法可以在保持相同质量的情况下缩短转换时间吗?

视频转换的我的FFMPEG语法如下:

  • ffmpeg -y -i input.mov -vcodec h264 -acodec aac -strict -2 out.mp4

如何实现快速视频转换?

  • 输出格式改为MPEG2或其他格式怎么样?
  • 除了h264还有其他快速编解码器吗?
  • 什么是最好的压缩技术?

任何指针都会非常明显。

2 个答案:

答案 0 :(得分:3)

压缩比和压缩速度之间总是存在折衷。

要缩短转化时间,请尝试ffmpeglibx264提供的不同预设。例如,-preset ultrafast设置通过牺牲压缩来提供最快的速度,因此与不使用任何预设(默认为-preset medium)相比,您将获得更大的文件大小。

目前已标准化的视频的最佳压缩技术是H.265,即HEVC。你可以结帐https://trac.ffmpeg.org/wiki/Encode/H.265 了解更多信息。请注意,H.265通过更复杂的技术获得更好的压缩,因此与H.264相比,使用它通常会导致压缩速度变慢。根据相同的论点,切换到更简单的压缩方法(如MPEG2)通常会以较低的压缩比为代价加快处理速度。

答案 1 :(得分:3)

针对这个非常广泛的问题的一些不同提示:

  • 确保您的控制台输出不包含You can either use if ($this->input->is_ajax_request()) { echo json_encode($data_set); }else{ //Procced with your load view } 。如果它确实显示了这一点,那么您的编码速度可能会大大降低,并且您需要重新编译using CPU capabilities: none!x264

  • 确保您的ffmpeg不使用ffmpeg--disable-asm--disable-inline-asm配置选项。

  • 使用最近的--disable-yasm。您正在使用ffmpeg,这让我觉得您使用的是旧版本。有关Linux,macOS和Windows的构建的链接,请参阅FFmpeg Download页面。

  • Stream copy音频(-strict -2),如果可能,而不是重新编码。

  • Use a faster x264 encoding preset正如其他人已经提到的那样。

  • Hardware acceleration可能是您的选择,但这些都不如x264有效。