天天看點

php 在手機上實作播放聲音,Android_Android實作直接播放麥克風采集到的聲音,本文執行個體講述了Android實作直接 - phpStudy...

Android實作直接播放麥克風采集到的聲音

本文執行個體講述了Android實作直接播放麥克風采集到的聲音。分享給大家供大家參考。具體如下:

這是一個直接播放麥克風采集到的聲音線程類:

class RecordThread extends Thread{

static final int frequency = 44100;

static final int channelConfiguration = AudioFormat.CHANNEL_CONFIGURATION_MONO;

static final int audioEncoding = AudioFormat.ENCODING_PCM_16BIT;

@Override

public void run() {

// TODO Auto-generated method stub

int recBufSize = AudioRecord.getMinBufferSize(frequency, channelConfiguration, audioEncoding)*2;

int plyBufSize = AudioTrack.getMinBufferSize(frequency, channelConfiguration, audioEncoding)*2;

AudioRecord audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, frequency, channelConfiguration, audioEncoding, recBufSize);

AudioTrack audioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, frequency, channelConfiguration, audioEncoding, plyBufSize, AudioTrack.MODE_STREAM);

byte[] recBuf = new byte[recBufSize];

audioRecord.startRecording();

audioTrack.play();

while(true){

int readLen = audioRecord.read(recBuf, 0, recBufSize);

audioTrack.write(recBuf, 0, readLen);

}

audioTrack.stop();

audioRecord.stop();

}

}

使用的時候,這樣就行:

RecordThread rec = new RecordThread();

rec.start();

需要在AndroidManifest.xml檔案中添加路由權限:

希望本文所述對大家的Android程式設計有所幫助。相關閱讀:

ThinkPHP3.1新特性之動态設定自動完成及自動驗證示例代碼

win10系統中Remote Registry服務怎麼關閉?

C# Winform多螢幕多顯示器程式設計技巧執行個體

MySQL備份與恢複之熱備(3)

簡單了解C語言中直接插入排序與直接選擇排序實作

PHP檔案緩存内容儲存格式執行個體分析

ASP.NET預定義模闆介紹

基于jquery實作圖檔放大功能

Win10系統使用人臉識别技術及必備條件

使用Java通過OAuth協定驗證發送微網誌的教程

AJAX中文亂碼解決新方法分享

win7提示0x80070005是什麼錯誤代碼 Win7系統更新失敗提示0x80070005錯誤的快速解決辦

PHP 觀察者模式的實作代碼

SQL擷取第一條記錄的方法(sqlserver、oracle、mysql資料庫)