2013-02-09 251 views
1

我在大學的博愛中,在這個兄弟會中我們有樓梯。每時每刻都有人跌倒在那些樓梯上。我們通常從酒吧後面的電腦播放音樂(通常來自互聯網或iTunes)。我有一個USB按鈕,並且想要編寫一個程序,暫時靜音背景音樂,並在有人跌倒樓梯後按下按鈕播放來自歌曲「Wiiiipe-ouuut」的剪輯。我怎麼能用這個聲音來做到這一點...任何人有任何想法?Java聲音。暫時靜音背景音樂並播放聲音

+0

[可以使用Java Sound來控制系統音量嗎?](http://stackoverflow.com/questions/14301618/can-java-sound-be-used-to-control-the-system-音量) – 2013-02-09 03:03:59

+0

+1爲喜劇問題描述 – mikera 2013-02-09 03:15:30

+0

只需使用瀏覽器打開該頁面:http://www.sadtrombone.com/ – 2013-02-09 03:46:39

回答

1

製作一個Java應用程序非常容易,該應用程序只提供播放給定聲音提示的按鈕,甚至不同提示的一組按鈕。

你大概會離開應用程序運行,等待正確的時間按下按鈕,以獲得接近即時的響應。我會使用Swing庫來使按鈕和javax.sound.sampled.Clip在內存中保存聲音,並根據命令播放聲音。但是,有些音頻對象可能更容易實現,因爲除了全音量播放提示之外,您無需執行任何操作。另外,JavaFX開始被用於gui按鈕。

我不知道如何關閉從Java的iTunes或瀏覽器卷。這並不是說它無法完成。如果別人可以說如何,絕對選擇他們的答案!我只是還沒有嘗試過。

但是,如果練習幾次,手動調整iTunes或瀏覽器的音量並不那麼困難。將音量調高或調低的好處是不會像停止和重新啓動音樂應用程序那樣具有破壞性。因此,請關閉應用程序中的音量(不是主計算機音量!),將鼠標移至Java按鈕應用程序並單擊它,等待聲音結束並將音樂應用程序的音量恢復。不理想,但它會做產生所需聲音的工作。

另一個想法,也許不是控制音樂應用程序,有一種方法可以在播放應用程序之前通過Java路由應用程序的輸出。在這種情況下,可以編寫一個按鈕來處理整個序列。我將把TargetDataLine作爲用於處理聲音流輸入的主要工具,但不知道如何識別適當的混音器線或端口。這可能需要根據您的設置和操作系統以及聲卡或音響系統進行定製。

有趣的主意!另一種語言也可能適用於此,例如,帶有HTML5的單獨小型瀏覽器窗口和用於啓動音效的按鈕。