首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Java Applet 聲音播放完全指南:AudioClip 與 AU 格式實作

     編輯:Java 程式設計入門

Java Applet 透過 java.applet.AudioClip 介面提供聲音播放功能。本文詳細說明聲音檔案格式限制、核心 API 使用、循環播放與單次播放的實作差異,並提供完整可執行範例。

聲音格式與轉換工具

Java 僅支援 AU 格式**(Sun/NeXT 音訊格式),而 Windows 常用 WAV 格式。開發前需準備 WAV 轉 AU 工具(如 GoldWave、Cool Edit 等)。

AudioClip 核心方法

方法功能
play()播放一次聲音片段
loop()循環播放,直到呼叫 stop()
stop()停止播放

完整實作範例:SoundDemo.java

import java.awt.*;
import java.applet.*;

public class SoundDemo extends Applet {
    public void paint(Graphics g) {
        // 取得聲音檔並建立 AudioClip 物件
        AudioClip audioClip = getAudioClip(getCodeBase(), "Sample.AU");
        g.drawString("Sound Demo!", 5, 15);
        audioClip.loop(); // 循環播放
    }
}

HTML 嵌入標籤

<HTML>
<TITLE>SoundDemo Applet</TITLE>
<APPLET CODE="SoundDemo.class" WIDTH=300 HEIGHT=200></APPLET>
</HTML>

進階應用技巧

  • 事件觸發播放:在 mouseDown、actionPerformed 等事件處理器中呼叫 play(),實現互動音效。
  • 多聲音管理:建立 HashMap<String, AudioClip> 快取多個音效,避免重複載入。
  • 背景音樂控制:搭配 start()/stop() 生命週期方法,實現 Applet 啟動/停止時的背景音樂自動控制。

常見問題排查

  1. 無聲音:確認檔案為有效 AU 格式、路徑正確、瀏覽器支援 Java Sound。
  2. 重複播放:避免在 paint 中重複建立 AudioClip,應在 init 中一次性載入並快取。
  3. 格式轉換:採樣率建議 8kHz/16kHz、單聲道、8-bit 或 16-bit,相容性最佳。

掌握 AudioClip 操作,即可為 Java Applet 增添豐富的聽覺互動體驗。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved