我在Eclipse上为学校项目做了这个应用程序。它只是假设在按下按钮时运行视频。在IDE中一切正常,虽然发生了错误但不会造成任何麻烦(请留下它,想想,所以如果它导致我现在想要的东西。) 现在,当我导出Jar文件并尝试运行它时,在同一台计算机上,视频无法播放。我能做什么?
JFrame vid = new JFrame();
vid.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
vid.setBounds(100, 100, 450, 300);
vid.setVisible(true);
Canvas c = new Canvas();
c.setBackground(Color.BLACK);
JPanel p = new JPanel();
p.setLayout(new BorderLayout());
p.add(c);
vid.add(p);
NativeLibrary.addSearchPath(RuntimeUtil.getLibVlcLibraryName(),"C:/Program Files/VideoLAN/VLC");
Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);
MediaPlayerFactory mpf = new MediaPlayerFactory();
EmbeddedMediaPlayer emp = mpf.newEmbeddedMediaPlayer(new Win32FullScreenStrategy(vid));
emp.setVideoSurface(mpf.newVideoSurface(c));
emp.toggleFullScreen();
emp.setEnableMouseInputHandling(false);
emp.setEnableKeyInputHandling(false);
String file="/resources/sky.mp4";
emp.prepareMedia(file);
emp.play();
以下是出现的错误代码:
[0000000017a2b420] core vout display error: Failed to set on top
请帮助我,因为我需要项目工作。
答案 0 :(得分:0)
好的,我得开始工作了一下。 因为我不能使用URL而不是String,并且String不允许我使用Class#getResource,所以我最终决定从一个公共文件夹运行它,理论上它不应该从pc更改为pc。
所以我的代码最终成为:
String file = new File("C:/Users/Public/Videos/sky.mp4").getAbsolutePath();
emp.prepareMedia(file);
emp.play();
虽然在没有指导的情况下通过并不理想,因为我们将安装该程序,但它可以完成任务。