2013-11-25 98 views
-1

我不斷收到我的代碼行34上的LineUnavailableException:https://www.refheap.com/21223爲什麼我得到這個LineUnavailableException?

錯誤讀爲javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 44100.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.

我創建了Sound類的多個實例(在我的refheap粘貼中實現)。看來,第一個實例沒有問題。但是當我開始使用相同的音頻文件製作Sound對象的新實例時,我開始出現這個錯誤。

任何想法如何解決它?

EIDT:我認爲this questionByteArrayInputStream想法可能是我需要做的,但我還不確定。

編輯:我想我找到了一個解決方案,在this forum thread如何同時播放相同的聲音,但改變我的代碼後,我仍然遇到同樣的問題。這是我更新的代碼,但現在錯誤發生在第88行:https://www.refheap.com/21224

+0

這似乎是說它不知道如何處理特定格式的PCM,雖然格式看起來相當標準。 –

+0

是的,它說,但它起初工作,然後當我做了太多的聲音對象,我開始有這個問題。 – trusktr

回答

-1

我找到了問題的解決方案:the Beads audio library for Java。簡直太神奇了。

+0

當然你正在做廣告 – gpasch

+0

@gpasch我不是那個庫的作者,但它通過提供一個與本地Java相比直觀且易於使用的API來使得一切變得更加容易。 – trusktr

0

當您嘗試在同一時間打開多個數據行時發生異常。第二行阻止第一條數據線的打開。