2016-08-17 11 views
-1

Javaで再生されていないが、それは作業と オーディオファイルには、私は、MediaPlayerのを使用してオーディオファイルを再生しようとしている

Exception in thread "main" java.lang.IllegalArgumentException: uri.getScheme() == null! uri == 'audio.mp3' 

は、誰もがこの問題を解決するために私を助けることができる

表示されていないのですか?ここで

は私のコードです:

package playaudio; 

import javafx.scene.media.Media; 
import javafx.scene.media.MediaPlayer; 

public class PlayAudio { 

    public static void main(String[] args) { 

     String fileName = "audio.mp3"; 
     Media playFile = new Media(fileName); 
     MediaPlayer mediaPlayer = new MediaPlayer(playFile); 
     mediaPlayer.play(); 
    } 

} 

は編集:私はURIにファイル名を変換しようとすると、それは次の例外を示しています。

Exception in thread "Thread-0" java.lang.IllegalStateException: Toolkit not initialized 

コード:

package playaudio; 

import javafx.scene.media.Media; 
import javafx.scene.media.MediaPlayer; 

public class PlayAudio { 

    public static void main(String[] args) { 

     String fileName = "audio.mp3"; 
     Media playFile = new Media(Paths.get(fileName).toUri().toString()); 
     MediaPlayer mediaPlayer = new MediaPlayer(playFile); 
     mediaPlayer.play(); 
    } 

} 
+2

JavaFXを使用してオーディオを再生すると、["java.lang.IllegalArgumentException:uri.getScheme()== null!"エラーが発生する可能性があります](http://stackoverflow.com/questions/26028044/java-lang-illegalargumentexception- uri-getscheme-null-error-using-jav) –

+0

これは私の問題を解決しません。私はそれを試みたが、例外を示している。 :/ –

答えて

0

Mediaのコンストラクタは、実際にあなたがURIにファイル名を変換する必要がありますことを意味し、URIを必要とし、これを試してみてください。

Media media = new Media(Paths.get(fileName).toUri().toString());

+0

私はそれを試みましたが、まだ示しています - スレッド "スレッド0"での例外java.lang.IllegalStateException:ツールキットが初期化されていません –

+1

[この記事をチェックしてください](http://stackoverflow.com/questions/26896798/javafx - メディア - プレーヤー - 非動作) –

1

これを試すことができます。

InputStream in = new FileInputStream("audio.wav"); 
    AudioStream as = new AudioStream(in);  
    AudioPlayer.player.start(as); 

ただし、これは.wavファイルでのみ機能します。

関連する問題