2

我需要能够以编程方式将 mpeg-2 文件转码为 .mp4、.mp3、.wmv、.rm(可选)和 .flv(可选),并希望还能生成缩略图。我找到了 Java Media Framework,但坦率地说,它看起来很糟糕。这将运行一个 Linux 服务器,所以我可以使用 Commons Exec 来使用 ffmpeg - ffmpeg 是否完成了我需要做的所有事情?FFmpeg 看起来相当令人生畏,这就是为什么我很难找到这些信息,但它绝对似乎是万事通。有什么建议么?

4

4 回答 4

5

ffmpeg 是最好和最简单的。输出/转换视频:

ffmpeg -i {input}.ext -r {target_frame_rate} -ar {target_audio_rate} -b {target_bitrate} -s {width}x{height} {target}.ext

还有你的截图:

ffmpeg -i {input}.ext -r 1 -ss 00:00:04:005 -t 00:00:01 -an -s {width}x{height} {target_name}%d.jpg

flv 的标准是 15 fps,flv 的音频采样率应该是 44100。使用选项:-r指定 1 fps 的帧速率(一帧用作屏幕截图),-ss寻找您想要的位置hh:mm:ss:fff-t是持续时间(一秒以匹配您的 1 fps),-an告诉 ffmpeg 忽略音频,并且-s是大小的截图。这%d是必要的,因为它将是您使用的屏幕截图数量递增的数字。有了上面,%d将永远是数字 1(一帧,一张截图)。祝你好运。

于 2009-01-01T00:47:50.870 回答
2

encoding.com的一个有趣的网络服务将为您转码文件。

于 2009-01-01T00:45:32.513 回答
2

您也可以直接从 Java 中使用Xuggler,它提供了比 JMF 更好的编解码器和编码支持。

于 2009-12-11T22:42:48.850 回答
0

Linux 上流行的转码应用程序是 ffmpeg、transcodemencoder。transcode 和 mencoder 都使用 ffmpeg,这三个都可以处理您需要的任务,包括 FLV 转码和视频缩略图。ffmpeg 可能是这三个中最受欢迎的,因此您可能会找到更好的在线支持。另外值得一提的是ffmpeg支持多线程转码。

我建议使用 ffmpeg。

于 2009-01-01T00:35:35.063 回答