日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

java語音播放事例

系統 1960 0
AudioSystem類充當取樣音頻系統資源的入口點。此類允許查詢和安裝在系統上的

混頻器。AudioSystem包括許多在不同格式間轉換音頻數據的方法,以及在音頻文

件和流文件之間進行轉換的方法。它還提供不用顯式處理混頻器即可直接從

AudioSystem獲得Line的方法

AudioFormat 是在聲音流中指定特定數據安排的類。通過檢查以音頻格式存儲的信息,可以發現在二進制聲音數據中解釋位的方式。

Line.Info類
Line.Info對象包含關于行的信息。只有Line.Info本身提供的信息是該行的Java類。Line.Info子類添加該行的其他種類的信息。這些附加信息取決于通過Line.Info子類所描述的行種類實現的Line子接口。

DataLine.Info類
除了繼承自超類Line.Info的類信息以外,DataLine.Info還提供特定于數據行的其他信息。這些信息包括:受數據行支持的音頻格式 其內部緩沖區的最大和最小

接口SourceDataLine
源數據行是可以寫入數據的數據行。它充當其混頻器的源。應用程序將音頻字節寫入源數據行,這樣可處理字節緩沖并將它們傳給混頻器。混頻器可以將這些樣本與取自其他源的樣本混合起來,然后將該混合物傳遞到輸出端口之類的目標(它可表示聲卡上的音頻輸出設備)


程序事例:

import java.io.File;

import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.SourceDataLine;

public class Playtest {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
AudioInputStream ais = AudioSystem.getAudioInputStream(new File(
"c://abc.wav"));// 獲得音頻輸入流
AudioFormat baseFormat = ais.getFormat();// 指定聲音流中特定數據安排
System.out.println("baseFormat="+baseFormat);
DataLine.Info info = new DataLine.Info(SourceDataLine.class,
baseFormat);
System.out.println("info="+info);
SourceDataLine line = (SourceDataLine) AudioSystem.getLine(info);
// 從混頻器獲得源數據行
System.out.println("line="+line);
line.open(baseFormat);// 打開具有指定格式的行,這樣可使行獲得所有所需的系統資源并變得可操作。
line.start();// 允許數據行執行數據 I/O
int BUFFER_SIZE = 4000 * 4;
int intBytes = 0;
byte[] audioData = new byte[BUFFER_SIZE];
while (intBytes != -1) {
intBytes = ais.read(audioData, 0, BUFFER_SIZE);// 從音頻流讀取指定的最大數量的數據字節,并將其放入給定的字節數組中。
if (intBytes >= 0) {
int outBytes = line.write(audioData, 0, intBytes);// 通過此源數據行將音頻數據寫入混頻器。
}
}

} catch (Exception e) {

}
}
}
<iframe width="490" scrolling="no" height="150" frameborder="0" align="middle" marginwidth="0" marginheight="0" src="http://www.blogbao.com/script.aspx?userid=45735&amp;AdType=0&amp;AdstyleID=46090&amp;Direction=1" style="width: 490px; height: 150px;"></iframe>

java語音播放事例


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 沛县| 中方县| 塔城市| 东山县| 苗栗县| 滨海县| 武宣县| 大关县| 酒泉市| 长治市| 晋中市| 桃园县| 鄂尔多斯市| 江口县| 锦屏县| 禹州市| 龙游县| 新平| 合川市| 托克托县| 安多县| 界首市| 静宁县| 靖边县| 开鲁县| 宣恩县| 宣化县| 栖霞市| 延庆县| 抚松县| 隆安县| 五家渠市| 车险| 吉木乃县| 昂仁县| 巴南区| 夏津县| 静乐县| 左权县| 丽江市| 西林县|