2012-05-01 109 views

回答

20

我猜測,這將是

(track.getPlaybackHeadPosition()/track.getSampleRate()) * 1000.0 

換言之,幀的數量演奏每秒幀的數目分開。然後,將結果乘以1000以獲得毫秒。

一個幀由每個通道一個採樣組成,因此應該等於採樣率。

例如,如果​​返回8654getSampleRate()返回8000則由於軌道的開始的時間將是(8654/8000) * 10001081.75ms。 (假設浮點運算)

+0

是的,你是對的。 –

+0

請隨時接受答案:) – Nick

+0

例如,如果音頻具有8000採樣/秒,(track.getPlaybackHeadPosition()/ 8)以毫秒爲單位給出當前播放頭位置。 –

0

通過@Nike答案是正確的。

但有一個問題。

如果我們調用MediaExtractor.seekTo方法,​​回報累積值。

MediaExtractor.getSampleTime()/1000是當前位置正確的ms。

你可以看看!