以编程方式转码 MPEG-2 视频
我需要能够以编程方式将 mpeg-2 文件转码为 .mp4、.mp3、.wmv、.rm(可选)和 .flv(可选),并希望也能生成缩略图。 我找到了 Java Media Framework,但坦率地说,它看起来相当糟糕。 这将运行一个 Linux 服务器,所以我可以使用 Commons Exec 来处理 ffmpeg - ffmpeg 能完成我需要做的一切吗? FFmpeg 看起来相当令人畏惧,这就是为什么我很难找到这些信息,但它绝对是一个万事通。 有什么建议么?
I need to be able to programmatically transcode mpeg-2 files to .mp4, .mp3, .wmv, .rm (optional), and .flv (optional), and hopefully generate a thumbnail as well. I found the Java Media Framework, but it frankly looks pretty crappy. This will be running a Linux server, so I could shell out to ffmpeg using Commons Exec - does ffmpeg do everything I need to do? FFmpeg seems pretty daunting, which is why I'm having trouble finding this information, but it definitely seems to be a jack-of-all-trades. Any suggestions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
FFmpeg 是最好和最简单的。 输出/转换视频:
您的屏幕截图:
15 fps 是 flv 的标准,音频采样率应为 flv 的 44100。 使用选项:
-r
指定 1 fps 的帧速率(一帧用作屏幕截图),-ss
寻找您想要的位置hh:mm :ss:fff
,-t
是持续时间(一秒匹配您的 fps),-an
告诉 ffmpeg 忽略音频,-s
是屏幕截图的大小。%d
是必需的,因为它将是根据您使用的屏幕截图数量递增的数字。 有了上面的内容,%d
将始终是数字 1(一帧,一张屏幕截图)。 祝你好运。Ffmpeg is the best and easiest. To output/convert video:
And your screenshot:
15 fps is standard for flv and audio sample rate should be 44100 for flv. Options to use:
-r
specifies a frame rate of 1 fps (one frame used as the screenshot),-ss
seeks to the position you wanthh:mm:ss:fff
,-t
is the duration (one second to match your one fps),-an
tells ffmpeg to ignore audio, and-s
is the size of the screenshot. The%d
is necessary as it will be the digit incremented on how many screenshots you use. With the above,%d
will always be the number 1 (one frame, one screenshot). Good luck.encoding.com 提供的一项有趣的网络服务将为您进行文件转码。
An interesting web service from encoding.com will transcode files for you.
您还可以直接从 Java 使用 Xuggler,它提供了比 JMF 更好的编解码器和编码支持。
You can also use Xuggler directly from Java, which provides much better codec and encoding support than JMF.
Linux 上流行的转码应用程序有 ffmpeg、transcode 和 mencoder。 transcode 和 mencoder 都使用 ffmpeg,这三个都可以处理您需要的任务,包括 FLV 转码和视频缩略图。 ffmpeg 可能是这三个中最受欢迎的,因此您可能会找到更好的在线支持。 另外值得一提的是ffmpeg支持多线程转码。
我建议使用 ffmpeg。
The popular transcoding applications for Linux are ffmpeg, transcode and mencoder. Both transcode and mencoder use ffmpeg and all three can handle the tasks that you require, including FLV transcoding and video thumbnailing. ffmpeg is probably the most popular of the three, so you might find better online support. Also worth mentioning is that ffmpeg supports multithreaded transcoding.
I would recommend using ffmpeg.