RFC 3551 指出它应该只在谈话的第一个数据包上设置,并且如果没有使用静音抑制,则不能设置它。
但我不清楚是否存在适合在每个数据包上启用标记位的情况。
在什么情况下,在通话中的每个数据包上设置 RTP 标记位符合 RFC 要求?
答案1
我想不出任何需要为所有数据包启用市场位的情况。在接收器端,这用于抖动缓冲区处理,因此接收器在看到市场位时可能会开始缓冲几帧(因为在标记位,您可以更安全地进行预缓冲而不会给语音添加故障)。
我猜测 sipstack 实现甚至无法正确处理这样的事情(通过每个数据包接收市场位)。