n0p*_*0pe 8 java linux swing media-player
我一直在寻找一段时间,将一个简单的视频嵌入到我的Java Swing GUI中.我追风吗?理想情况下,我希望有类似的东西:
VideoPlayer video = new VideoPlayer("filename");
frame.getContentPane().add(video);
video.play();
Run Code Online (Sandbox Code Playgroud)
我在寻找不存在的东西吗?我主要针对Linux进行开发,但考虑到Windows,因为我可能会尝试在未来使用我的应用程序.
附加信息:
我不知道为什么你认为你需要很多代码才能使用JMF.
public class mediaPlayer extends JFrame
{
public mediaPlayer()
{
setLayout(new BorderLayout());
//file you want to play
URL mediaURL = //Whatever
//create the media player with the media url
Player mediaPlayer = Manager.createRealizedPlayer(mediaURL);
//get components for video and playback controls
Component video = mediaPlayer.getVisualComponent();
Component controls = mediaPlayer.getControlPanelComponent();
add(video,BorderLayout.CENTER);
add(controls,BorderLayout.SOUTH);
}
}
像6行一样的完整媒体播放器,prob可以做得更少.如果你需要的只是基本的东西,那么id就是JMF.
正如Zemzela所说,Xuggle也是一个很好的解决方案,但需要更多的工作.
还有Java绑定VLC.点击这里
你可以使用xuggle。这是他们的网站http://www.xuggle.com/。我用它来显示 avi(divx) 并且“正常”工作。与 xuggle 相比,JMF 我有点慢。Java 中的问题是您无法准确同步 Windows 上的每一帧,因为 Thread.sleep(30) 不能精确地睡眠 30 毫秒,并且 Windows 操作系统中的最小睡眠时间为 16 毫秒,因此您无法将其调整为大约是 30 毫秒。在 linux 上应该更准确地工作,我认为最小睡眠时间是 1 毫秒。