2017-03-28 18 views
0

私はこのプロジェクトをEclipseで学校プロジェクトのために作った。ボタンが押されたときにビデオを実行するとします。 IDEでは、エラーは発生しますが問題は発生しませんが、問題は発生しません(今は何かが起こっていると思います) Jarファイルをエクスポートして実行しようとすると、同じコンピュータで、ビデオは再生されません。私に何ができる?私はプロジェクトが動作する必要があるとして、私を助けて、ビデオがVLCJで再生されない

[0000000017a2b420] core vout display error: Failed to set on top 

をしてください:ここでは

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(); 

が表示されたエラーコードです。

+0

'/ resources/sky.mp4'はJarファイルまたはディスクに含まれていますか?それがJarファイルにある場合、ディスク上のファイルではなくZipファイルのエントリであるため、再生できません。ファイルを抽出するか、クラス#getResourceを使用してURLを取得する必要があります'VLCj'が再生できるリファレンス – MadProgrammer

+0

Jarを抽出してそこにファイルを置いてプログラムが再生できるようにするフォルダを作れますか? –

+0

理論上、はい。あなたはファイルを書き込む権限を持たないかもしれないという事実を認めなければなりません。ユーザのホームディレクトリのようなアクセスを提供する場所を選択してください。 – MadProgrammer

答えて

0

さて、私はちょっと仕事をしなければなりません。 StringではなくURLを使用することができないため、Stringはクラス#getResourceを実行させません。私は最終的に、理論上はpcからpcに変更してはならないパブリックフォルダから実行することにしました。

だから私のコードは、になってしまう:

String file = new File("C:/Users/Public/Videos/sky.mp4").getAbsolutePath(); 
     emp.prepareMedia(file); 
     emp.play(); 

我々はプログラムをインストールするよう、指導なく通過するのが理想的ではない、それは仕事をしていませんしながら。

+0

macs MadProgrammer

+0

@MadProgrammerスクールにはWindowsしかないので、問題はありません。 –