aac rtp
我现在才区分出3016与3640,3640介绍的是mpeg4-generic的rtp封装说明(AU_header_size+AU_header加原数据),3016介绍的是MP4A-LATM的rtp封装说明(StreamMuxConfig + PayloadLengthInfo + PayloadMux)。
3640的方式已经实现,但不足处是对aac音频在config不同的情况下不支持,而3016可以将config信息写入rtp中。
我对StreamMuxConfig + PayloadLengthInfo + PayloadMux的实现方式,不知哪有问题,vlc音频解码显示正常,但只在开始时声音正确播了一下,后面就没有声音了,希望前辈能帮忙看下
sdp:(aac 音频采样率为48000,声道数为2)
a=rtpmap:97 MP4A-LATM/48000
a=fmt:97 profile-level-id=1; cpresent=0; config=400023203fc0;
rtp:
前12字节为rtp头
长度占几字节(如aac数据长度为144,则只占一个字节为0x90)
后面为aac数据(不包含前7字节的latm头)
我是按标准上做的,但不知为什么没有声音,有时vlc音频解码显示正常几百后就停止解码了,我使用mpeg4-generic时是没有问题的,说明要么是sdp信息有误,要么rtp数据的格式不对,但我找不出原因