我长期以来一直尝试使用 Java Media Framework 在 JFrame 中播放视频。我选择了 JMF,因为它似乎具有我最喜欢的结构。我一直在尝试播放 AVI 视频,但出现以下错误:
Unable to handle format: H264, 854x480, FrameRate=29.9, Length=1229760 26 extra bytes Unable to handle format: unknown, 48000.0 Hz, 0-bit, Stereo, Unsigned, 16000.0 frame rate, FrameSize=8192 bits
我不明白这一点,根据list of supported formats 、JMF 支持 AVI 文件。有人可以告诉我问题出在哪里吗?
谢谢。
最佳答案
您对媒体类型的理解有缺陷。大多数媒体都是“容器格式”,这意味着内容可以使用多种不同的压缩格式进行编码。您链接到的列表以粗体显示文件类型(例如 AVI 或 MOV),然后在其下方显示该文件支持的编码容器格式。
如果您在列表中搜索,您将看到支持 H.261 和 H.263 作为 MOV,但没有 H.264 的列表(适用于任何文件类型)。
JMF 在当时是一个很棒的 API,但它缺乏对更新(压缩程度更高)编解码器的支持,这使得它在现代世界中无法普遍使用。
(您确实意识到它十多年前就被废弃了,对吧?)
关于java - 使用 JMF 播放 AVI 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24844066/