Javaサウンドライブラリと以下のコードを使用して、raspbery piでjavafxを使用してwavファイルを再生しようとしていますが、次のようなエラーが発生します
javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 44100.0 Hz, 16 bit, stereo, 4 bytes/frame, big-endian not supported.
グーグルで調べた後、私はそれを見つけました
ビッグ エンディアン オーディオ形式はラズベリー パイ サウンドカード ドライバーでサポートされていないため、getAudioFormat() 関数を変更してリトル エンディアン形式を要求する必要があります。
boolean bigEndian = false;
これまでのところ、次のものが必要だと考えました
private AudioFormat getAudioFormat() {
float sampleRate = 8000.0F;
int sampleInbits = 16;
int channels = 1;
boolean signed = true;
boolean bigEndian = false;
return new AudioFormat(sampleRate, sampleInbits, channels, signed, bigEndian);
}
getAudioFormat()
しかし、次のコードからどこで呼び出すのですか。
URL url = this.getClass().getClassLoader().getResource("Audio/athan1.wav");
Clip clip = AudioSystem.getClip();
AudioInputStream ais = AudioSystem.getAudioInputStream( url );