HarmonyOS OH_AudioStream_Result OH_AudioRenderer_GetTimestamp(OH_AudioRenderer* renderer, clockid_t clockId, int64_t* framePosition, int64_t* timestamp);和 GetLatency(uint64_t &latency)的区别是什么?
调用OH_AudioRenderer_GetTimestamp获取到的framePosition和timestamp如何计算当前PCM数据的时延?用于计算音画同步。
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS OH_AudioRenderer_GetTimestamp的问题
913浏览 • 1回复 待解决
HarmonyOS OH_AudioRenderer问题
978浏览 • 1回复 待解决
HarmonyOS 关于OH_AudioRenderer的问题
1250浏览 • 1回复 待解决
HarmonyOS 中OH_AudioRenderer 释放时,和写数据的回调函数怎样处理同步
943浏览 • 1回复 待解决
本地如何存储Array<T>
997浏览 • 1回复 待解决
clazz: new (...args: any[]) => T 无法使用
1288浏览 • 1回复 待解决
OHaudio模块回调函数OH_AudioRenderer_OnStreamEvent不生效
2928浏览 • 1回复 待解决
Check if 'storeFile' is cnfigured correctly, it can't be null or empty
10178浏览 • 2回复 待解决
hb build -T单独编译,应如何编译
5520浏览 • 1回复 待解决
荣耀play4t PRO什么时候内侧啊
6235浏览 • 2回复 待解决
HarmonyOS 如何存储dataArray: T[]数组数据到本地
1155浏览 • 1回复 待解决
HarmonyOS 编译报错 'xxx' can't support crossplatform application
2119浏览 • 1回复 待解决
HarmonyOS ArkTS支持子组件接受泛型T吗
1117浏览 • 1回复 待解决
HarmonyOS base64有方法可以返回Int8Array格式嘛?
1248浏览 • 1回复 待解决
仓颉开发鸿蒙应用,报错“Couldn't resolve host name”
668浏览 • 0回复 待解决
HarmonyOS OH_AVCodecOnError的错误码有哪些,分别是什么含义
981浏览 • 1回复 待解决
代码IDE提示编译报错:Type 'TextTest' is not assignable to type 'ITest<T>'.
2006浏览 • 1回复 待解决
HarmonyOS 如何解析base64为字节数组int8Array
1039浏览 • 1回复 待解决
AudioRenderer和播放器是什么关系?
4739浏览 • 1回复 待解决
音画同步要计算出当前已经写入音频帧数据播放要耗时多少,这样就能计算出将要送显的视频帧对应的PTS应该是多少。
参考步骤如下:
1、getTimestamp获取到最近的已经播放帧Pos1和对应时间戳T1。假如已经播放了48000帧数据,采样率为48kHZ,那么根据计算的结果播放的音频时长为1000000ns。
2、获取当前时间nowT2与T1的差值,可以计算出pos1播放时候到现在经过了多长时间ΔT.ΔT = nowT2- T1
3、根据Pos1计算对应的时长audioPlayedTime = Pos1 * 1000000LL/sampleRate
4、当前已经播的帧的实际时长为:nowAudioPlayedTime = audioPlayedTime + ΔT
5、应用写到框架的总数据为framesWritten,这些数据连续播完需要时长:framesWrittenTime = framesWritten * 1000000LL/sampleRate
6、计算待播放的帧需要花费多久,基于该值为视频做同步 framesWrittenNeedTime = framesWrittenTime - nowAudioPlayedTime