我有一堆 RTP 数据包,我想将它们重新组合成音频流。对于每个数据包,我都有序列号、SSRC、时间戳和一个表示数据本身的字节数组。
目前,我通过它们的 SSRC 获取每个数据包子集,然后按时间戳对它们进行排序,并按该顺序组合字节数组。之后,我混合字节数组。生成的音频数据听起来很棒(很好,我的意思是一切都及时),但我担心这是由于没有太多的数据包丢失。
所以,有几个问题...
对于丢失的数据包,丢失的序列号显示我需要添加一些空音频的位置。我相信序列号经常“环绕”,所以我需要使用时间戳将它们分解为子集。然后我可以在这些子集中查找缺失的序列号并根据需要添加。这听起来像是正确的做法吗?
我还没有完全弄清楚时间戳还有什么好处。由于我正在记录已经存在的数据包并填写丢失的数据包,也许我不需要太担心这个?