音频视频流的基本同步方法

时间:2015-05-15 19:26:49

标签: java android sockets synchronization streaming

假设我有一些h264视频nal单元和一些g726音频样本塞进我通过套接字发送的结构中。

每个视频和音频数据包都附带记录时的UTC时间戳。

数据从TCP套接字发送。是的,我知道,不适合流媒体,但删除了一些我不想解决的问题。

然后我使用Android MediaCodec解码渲染到Surface的h264 nal单位和g726 ++来解码接收的音频数据,然后通过AudioTrack播放。

这一切都很有效,除了流肯定不同步。

我的时间戳来自编码器。

如何使用这些时间戳将视频同步到解码器端的音频。 AudioTrack有一个getPlaybackHeadPosition,它基于采样率可用于计算其进度。 MediaCodec有演示时间。连同编码器的时间戳,我认为我有足够的信息来同步两个流。

欢迎任何建议。

0 个答案:

没有答案