Hi,
We are developing AAC(MP4A-LATM) based streaming using Live555 RTSP server & client.
The encoding and decoding are done by Android server and client apps respectively.
Issue Faced: Decoder getting corrupted data.
Reason: The MPEG4LATMAudioRTPSource is givng wrong framesize and hence the client is getting each packet fragmented.
API: unsigned LATMBufferedPacket::nextEnclosedFrameSize(unsigned char*& framePtr, unsigned dataSize) {}
The above api always return size less than the actual data size.
Solution Tried: If we return the 'dataSize' from the above api then it decodes fine.
Log Analysis:
----------------
01-05 19:05:00.612 14678 15640 V LiveMedia-Core: GroupsockHelper::readSocket bytesRead : 103, port=41506 // reading 103 bytes of data // AAC payloadLen = 103 - 12(RTPHeaderLen) = 91
01-05 19:05:00.612 14678 15640 V RTSPClientExt: MediaSinkExt::onFrameReceived(): seqNo: 33024 // getting fragment_1 01-05 19:05:00.612 14678 15640 V RTSPClientExt: MediaSinkExt::onFrameReceived(): seqNo: 33024 // getting fragment_2 01-05 19:05:00.612 14678 15640 V RTSPClientExt: MediaSinkExt::onFrameReceived(): seqNo: 33024 // getting fragment_3 |
Why the MP4A RTP sink splits the frame into multiple fragments?
Please suggest how to proceed further.
Regards
Girish P
|
_______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel