小弟遇到一個瓶頸,麥克風那邊獲取到了資料,發給我的應用層介面如下:
public void onVoipDataOutput(byte [] bytes , int i )
bytes 就是底層發給我的MIC 資料, i 就是這個資料的長度;
現在我想把這個資料寫成一個語音檔案,并使用播放器放出來。
使用的是java 代碼。 誰有這方面的經驗? 請指教!
uj5u.com熱心網友回復:
用avilib.c這個檔案去寫。大致流程如下:avi_fd = AVI_open_output_file(mFd);
if(avi_fd!=NULL)
{
/*這里的1是指單通道,44100是指采樣率,16是指單位采樣率是多少位的,255是指aac格式的,128是指位元率*/
AVI_set_audio(avi_fd, 1, 44100, 16, 255, 128);
AVI_write_audio(avi_fd, (char*)bytes , i);
AVI_close(avi_fd);
}
如果你的語音是pcm格式的話,那上面的255,就要換成WAVE_FORMAT_PCM。
uj5u.com熱心網友回復:
avilib.c的代碼,你可以去我的博客資源里下載。你用的java代碼的話,可以將它封裝成一個nativie的介面就可以了。轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/126759.html
標籤:Android
下一篇:Qtshow一個頁面顯示巨慢
