对音频和视频进行转码以在网络上显示的最佳方法是什么?

我需要以编程方式完成它。我想做一些像 YouTube 或 Google Video 这样的事情,用户可以上传他们想要的任何格式,然后我将其编码为 flv、mp3 和/或 mp4。我可以在我们的服务器上执行此操作,但我宁愿使用 EC2 实例甚至 Web 服务。我们有一个 Windows 2008 服务器。

有帮助吗?

解决方案

我强烈推荐ffmpeg。在Windows上,我发现 这个网站 托管好的二进制文件。

其他提示

取决于你想花多少钱。如果这是一个全新的(而且大多没有资金)想法,那么就走 ffmpeg 路线,但是当您扩展规模并希望提高质量时,请考虑一种可以自动化的更专业的编码工具(Rhozet、Inlet、Digital Rapids 等) 3 个选项)。

ffmpeg 可以做到这一点,它是一个使用 libavcodec 的命令行工具。可以处理大多数视频格式的转换。它的许可证是 LPGL(如果适合您的需求)。您可以通过编程方式将其用作单独的进程,或者如果您感觉很硬核,您可以自己使用 libavcodec 库直接编码。

当你想转码为 Flv(这可能是网络上最好的)时,我使用这一行:

ffmpeg -hq -y -i $directory/$file -r 20 -s 300x200 -deinterlace -ar 22050 $directory/$file.flv 1>/dev/null 2>/dev/null

当然,在 Linux 下它运行得很好:-)。

请注意 ffmpeg 的某些部分受 GPL 保护。我相信 libpostproc 模块是,如果我没记错的话,它用于转码。确保该许可证与您正在做的事情兼容。

我会看一下 Main Concept 的参考 SDK:

http://www.mainconcept.com/site/developer-products-6/pc-based-sdks-20974/reference-sdk-21221/information-21243.html

它是为转码而构建的,并且由于它是经过许可的 SDK,因此不存在任何有关 ffmpeg/libavcodec 的法律问题。

如果您正在寻找 GPL 的东西:

对于音频混杂,尝试 袜子。 很强大!它的作用很多!它包含在大多数 Linux 发行版中。

还有著名的 用于 mp3 [音频] 编码。

对于视频, 门编码器 令人印象深刻!它是的一部分 播放器 包裹。它将处理大多数视频格式的转换。远远超出我的梦想。(有关文档,请参阅 第9章。MEncoder的基本用法第10章。使用 MEncoder 进行编码.)

它可以创造的东西更加有限。但确实支持 mpeg4, mpeg2, DVD-mpeg, 电影, ,以及许多其他人。(虽然我还没有尝试过 电影 我自己,谷歌显示其他人正在使用它。)

我做过类似 jpeg + sound -> mpeg4 movie 的事情:

nice +20 $MENCODER mf://${JPEGFILE}  -mf w=720:h=480:fps=1/${SOUNDLENGTH}:type=jpeg -audiofile ${SOUNDFILE} -ovc lavc -oac lavc -lavcopts vcodec=mpeg4 -ofps 30000/1001 -o ${MENU_MPG}

或者将任意格式的视频转码为 DVD 兼容的 mpeg:

nice +20 $MENCODER -edl ${EDL} -ovc lavc -oac lavc -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=${VBITRATE}:keyint=18:acodec=ac3:abitrate=192:aspect=4/3:trell:mbd=2:dia=4:cmp=3:precmp=3:ildctcmp=3:subcmp=3:mbcmp=3:cbp:mv0:dc=10 -of mpeg -mpegopts format=dvd -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 -ofps 30000/1001 -o ./${INFILE}.reformatted  ${FILEPATH}

-edl/-edlout [编辑决策列表] 用于仅剪出我想要的视频部分。

对于 DVD-mpeg-video,${VBITRATE} 通常为 5000。但如果你稍稍搞砸了,你可以将更多视频压缩到 DVD 上。假设您可以容忍这些伪影。

scale=720:480,harddup -- 我的 DVD 播放机的比例尺错误的小问题,harddup 解决了我的音视频不同步问题 “廉价” 玩家。

(为了在无法处理 4x3 视频的宽屏播放器上播放,我使用了类似的暴行 “方面=16/9”, “-vf 比例=560:480,扩展=720:480,harddup”. 。但一般来说,您不想浪费比特来编码黑条。)

这不是最有效的一组选项 门编码器 到目前为止!运行可能会很耗时。但我心里还有其他目标……

Rhozet 碳编码器 可以处理一个 多种格式 另外,您可以使用插件来更改视频(例如添加水印)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top