getPlaybackHeadPosition() 메소드의 AudioTrack 클래스는 프레임으로 표시된 재생 헤드 위치를 반환합니다. 밀리 초 단위의 해당 값은 얼마입니까?안드로이드에서 밀리 초 단위로 변환하는 프레임
13
A
답변
20
나는 그것이 즉
(track.getPlaybackHeadPosition()/track.getSampleRate()) * 1000.0
을 것 같은데요, 프레임 수는 초당 프레임 수로 나눈했다. 그런 다음 1000을 곱하여 밀리 초를 얻습니다.
프레임은 채널당 하나의 샘플로 구성되므로 샘플 속도와 동일해야합니다. 예를 들어
,getPlaybackHeadPosition()
경우 반환
8654
및
getSampleRate()
반환
8000
다음 트랙의 시작 이후 시간이
(8654/8000) * 1000
또는
1081.75ms
될 것이다. (가정 부동 소수점 연산은)
0
@Nike에 의한 대답은.
권리 그러나 문제가있다.
우리가 MediaExtractor.seekTo
방법, AudioTrack.getPlaybackHeadPosition()
반환 누적 값을 호출하는 경우.
MediaExtractor.getSampleTime()/1000
입니다 현재 위치에 대한 오른쪽 ms.
당신이 그것을 확인할 수 있습니다!
네, 맞습니다. –
답을 받아들이면 자유롭게 답하십시오. 예를 들어 – Nick
, 오디오에 8000 샘플/초 (track.getPlaybackHeadPosition()/8)가 있으면 밀리 초 단위로 현재 재생 헤드 위치를 알려줍니다. –