Java jmf播放什么类型的.avi视频?

Java jmf播放什么类型的.avi视频?,java,video-streaming,media-player,jmf,avi,Java,Video Streaming,Media Player,Jmf,Avi,在使用jmf时遇到异常后,打开。我现在可以播放我的视频,但只能播放.mov文件 但是我正在使用图像和.wav音频文件创建视频文件 我可以以任何格式创建它,.avi,.mov,.mp4,但重要的是我应该能够在我的播放器中播放它,这是我使用JMF构建的 目前,我得到了这个错误 Unable to handle format: FMP4, 1366x768, FrameRate=30.0, Length=3147264 0 extra bytes java.lang.NullPointerExcept

在使用jmf时遇到异常后,打开。我现在可以播放我的视频,但只能播放.mov文件

但是我正在使用图像和
.wav
音频文件创建视频文件

我可以以任何格式创建它,
.avi
.mov
.mp4
,但重要的是我应该能够在我的播放器中播放它,这是我使用JMF构建的

目前,我得到了这个错误

Unable to handle format: FMP4, 1366x768, FrameRate=30.0, Length=3147264 0 extra bytes
java.lang.NullPointerException
        at java.awt.Container.addImpl(Unknown Source)
        at java.awt.Container.add(Unknown Source)
        at javax.swing.JFrame.addImpl(Unknown Source)
        at java.awt.Container.add(Unknown Source)
        at mediaPlayer.<init>(mediaPlayer.java:31)
        at mediaPlayer.main(mediaPlayer.java:38)
无法处理格式:FMP4,1366x768,帧速率=30.0,长度=3147264 0额外字节
java.lang.NullPointerException
位于java.awt.Container.addImpl(未知源)
位于java.awt.Container.add(未知源)
位于javax.swing.JFrame.addImpl(未知源)
位于java.awt.Container.add(未知源)
在mediaPlayer。(mediaPlayer.java:31)
在mediaPlayer.main(mediaPlayer.java:38)
这里的例外并不是问题所在,因为播放器在
lunarphases.mov
上运行良好

问题是

如何对视频进行编码,以便我的jmf媒体播放器能够播放视频并处理格式

谢谢你的帮助,我真的很感谢你在这个问题上为我所做的一切努力。:)

avi是一个容器,它可以容纳以各种不同方式编码的视频。查看此列表,查看JMF可以解码和不能解码的格式

根据,;

应该有用。

avi是一个容器,它可以容纳以各种不同方式编码的视频。查看此列表,查看JMF可以解码和不能解码的格式

根据,;


应该行。

我有一个非常类似的项目,我用
jmf
播放视频文件。我刚刚使用了
.mov
文件。所以我可以向你推荐莫夫。您可以稍后再次将其转换为.avi

以下是在jmf中播放.avi视频的方法,据我猜测,这适用于所有类型的.avi视频。你关心的是有一个好质量的视频,它会给你一个好质量的视频

这是诀窍

你首先对视频进行编码,不管你想用什么方式。你可以按照你想要的方式设置比特率、帧率

尝试使用jmf运行视频,由于jmf的格式不同,它可能无法运行。然后根据以下公式对其进行编码

同样的代码现在可以在
jmf
video player中运行视频,没有任何问题

罗巴多布在上述回答中也指出了同样的问题

ffmpeg -i input.avi -vcodec mjpeg -acodec pcm_s16be -ac 2 -y output.mov 
是的,它给了我一个糟糕的视频质量,所以用不同的比特率对它进行编码

ffmpeg -i input.avi -vcodec mjpeg -acodec pcm_s16be -ac 2 -y -b:v 5000k output.mov 
这将为您提供更高质量的
.mov
视频


希望这有帮助:)。

我有一个非常类似的项目,我使用
jmf
播放视频文件。我刚刚使用了
.mov
文件。所以我可以向你推荐莫夫。您可以稍后再次将其转换为.avi

以下是在jmf中播放.avi视频的方法,据我猜测,这适用于所有类型的.avi视频。你关心的是有一个好质量的视频,它会给你一个好质量的视频

这是诀窍

你首先对视频进行编码,不管你想用什么方式。你可以按照你想要的方式设置比特率、帧率

尝试使用jmf运行视频,由于jmf的格式不同,它可能无法运行。然后根据以下公式对其进行编码

同样的代码现在可以在
jmf
video player中运行视频,没有任何问题

罗巴多布在上述回答中也指出了同样的问题

ffmpeg -i input.avi -vcodec mjpeg -acodec pcm_s16be -ac 2 -y output.mov 
是的,它给了我一个糟糕的视频质量,所以用不同的比特率对它进行编码

ffmpeg -i input.avi -vcodec mjpeg -acodec pcm_s16be -ac 2 -y -b:v 5000k output.mov 
这将为您提供更高质量的
.mov
视频



希望这能帮上忙:)。

我真的不知道如何帮上忙。。对不起(@AndrewThompson您是如何对视频JpegImagesToMovie(JMF的示例源)进行编码的。请注意,我没有为它们添加声音。我真的不知道如何在这方面提供帮助。抱歉:(@AndrewThompson您是如何对视频JpegImagesToMovie(JMF的示例源)进行编码的)。请注意,我没有向它们添加声音。如何将视频编码为这些格式之一是Robadob的问题。在谷歌搜索了一下后,在上面进行了更新。您可以尝试使用Jffmpeg包装器,我认为它扩展了JMF以支持ffmpeg支持的解码器。即使在我仅添加帧速率或保持大小1366*768时,这也不起作用。如何对视频进行编码将视频转换为这些格式之一是Robadob的问题。在谷歌搜索了一下之后,上面进行了更新。您可以尝试使用Jffmpeg包装器,我认为它扩展了JMF以支持ffmpeg支持的解码器。即使在我只添加帧速率或保持大小1366*768时,这也不起作用。看起来有时这也会失败。用什么方式?JMF不播放视频吗?不,实际上是质量问题。让我再试一次。我现在不接受你的答案(你看到安德鲁对这个问题的评论了吗?所需的格式可以通过JpegImagesToMovie创建。似乎有办法,但让我看看是否有效。如果可能的话,我会在明天告诉你。看起来有时这也会失败。以什么方式?jmf不是在播放视频吗?不,实际上是质量方面的。让我再试一次。我不接受你的ans现在回答::(你看到安德鲁对这个问题的评论了吗。所需的格式可以由JPEG ImagestoMovie创建。似乎有办法,但让我看看是否有效。如果可能的话,我会在明天告诉你。