簡體   English   中英

使用AudioTrack來均衡.WAV文件?

[英]Using AudioTrack to EQ a .WAV file?

我需要進行一些EQing並為.wav文件應用數字效果。 有什么方法可以從下面的“緩沖區”中提取單個PCM樣本值來執行一些EQ /處理? AudioTrack是執行此操作的正確方法嗎?

private void playSound() {


audioTrack.play();
double input = 0;
int bufferSize = 512;
byte[] buffer = new byte[bufferSize];
InputStream inputStream = getResources().openRawResource(R.raw.wave);

    try {
        while((input = inputStream.read(buffer)) != -1)
        audioTrack.write(buffer, 0, input);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

您可以從API級別9(姜餅)開始將均衡器 AudioEffect附加到AudioTrack的音頻會話

另一種選擇是在將應用程序中的PCM數據寫入音頻軌道之前對其進行處理。 出於性能原因,這可能是您希望使用本機代碼而不是Java進行的操作。
實現自己的均衡器效果的理論在一定程度上拓寬了適用於此處Stack&Q的Q&A格式的主題,因此,如果您要采用這種方法,則必須在其他位置搜索有關該信息的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM