鴻蒙OS 音頻概述

2020-09-18 14:25 更新

HarmonyOS 音頻模塊支持音頻業(yè)務(wù)的開發(fā),提供音頻相關(guān)的功能,主要包括音頻播放、音頻采集、音量管理和短音播放等。

基本概念

  • 采樣

采樣是指將連續(xù)時域上的模擬信號按照一定的時間間隔采樣,獲取到離散時域上離散信號的過程。

  • 采樣率

采樣率為每秒從連續(xù)信號中提取并組成離散信號的采樣次數(shù),單位用赫茲(Hz)來表示。通常人耳能聽到頻率范圍大約在 20Hz~20kHz 之間的聲音。常用的音頻采樣頻率有:8kHz、11.025kHz、22.05kHz、16kHz、37.8kHz、44.1kHz、48kHz、96kHz、192kHz等。

  • 聲道

聲道是指聲音在錄制或播放時在不同空間位置采集或回放的相互獨立的音頻信號,所以聲道數(shù)也就是聲音錄制時的音源數(shù)量或回放時相應(yīng)的揚聲器數(shù)量。

  • 音頻幀

音頻數(shù)據(jù)是流式的,本身沒有明確的一幀幀的概念,在實際的應(yīng)用中,為了音頻算法處理/傳輸?shù)姆奖?,一般約定俗成取 2.5ms~60ms 為單位的數(shù)據(jù)量為一幀音頻。這個時間被稱之為“采樣時間”,其長度沒有特別的標(biāo)準(zhǔn),它是根據(jù)編解碼器和具體應(yīng)用的需求來決定的。

  • PCM

PCM(Pulse Code Modulation),即脈沖編碼調(diào)制,是一種將模擬信號數(shù)字化的方法,是將時間連續(xù)、取值連續(xù)的模擬信號轉(zhuǎn)換成時間離散、抽樣值離散的數(shù)字信號的過程。

  • 短音

使用源于應(yīng)用程序包內(nèi)的資源或者是文件系統(tǒng)里的文件為樣本,將其解碼成一個 16bit 單聲道或者立體聲的 PCM 流并加載到內(nèi)存中,這使得應(yīng)用程序可以直接用壓縮數(shù)據(jù)流同時擺脫 CPU 加載數(shù)據(jù)的壓力和播放時重解壓的延遲。

  • tone音

根據(jù)特定頻率生成的波形,比如撥號盤的聲音。

  • 系統(tǒng)音

系統(tǒng)預(yù)置的短音,比如按鍵音,刪除音等。

約束與限制

  • 在使用完 AudioRenderer 音頻播放類和 AudioCapturer 音頻采集類后,需要調(diào)用 release()方法進(jìn)行資源釋放。
  • 音頻采集所使用的最終采樣率與采樣格式取決于輸入設(shè)備,不同設(shè)備支持的格式及采樣率范圍不同,可以通過 AudioManager 類的 getDevices 接口查詢。
  • 在進(jìn)行音頻采集之前,需要申請麥克風(fēng)權(quán)限ohos.permission.MICROPHONE。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號