J'ai fait cette application sur Eclipse pour un projet d'école. C'est juste supposé lancer une vidéo quand un bouton est pressé. Dans l'IDE, tout fonctionne bien, même si une erreur survient, mais ne cause aucun problème (je le laisse, je pense, donc si ça me donne quelque chose maintenant) Maintenant, quand j'exporte le fichier JAR et que j'essaie de l'exécuter , dans le même ordinateur, la vidéo ne joue pas. Que puis-je faire?La vidéo ne joue pas dans VLCJ
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();
Voici le code d'erreur apparaît:
[0000000017a2b420] core vout display error: Failed to set on top
S'il vous plaît, aidez-moi, comme je l'ai besoin du projet de travailler.
Est-ce que '/ resources/sky.mp4' est contenu dans le fichier Jar ou sur le disque? Si c'est dans le fichier Jar, il ne sera pas jouable, car c'est une entrée dans un fichier Zip, pas un fichier sur le disque, vous devrez soit l'extraire, soit utiliser 'Class # getResource' pour obtenir une' URL 'référence que 'VLCj' pourrait être en mesure de jouer – MadProgrammer
Puis-je créer un dossier pour extraire le Jar et y mettre le fichier afin que le programme le joue? –
En théorie, oui. Vous devez tenir compte du fait que vous n'avez pas les permissions pour écrire le fichier et choisir un emplacement susceptible de vous fournir un accès (comme le répertoire personnel de l'utilisateur) – MadProgrammer