IETF Washington DC, Ross Finlayson, LIVE.COM A More Loss-Tolerant RTP Payload Format for MP3 Audio Ross Finlayson LIVE.COM
IETF Washington DC, Ross Finlayson, LIVE.COM Existing RTP payload format for MPEG audio (RFC 2250) Packet boundaries are on MPEG frame boundaries Appropriate for MPEG (1 or 2) layer I or II audio »because their frames are true “application data units” (ADUs) - can be decoded independently Less appropriate for layer III audio (“mp3”) »mp3 frames contain a back-pointer to earlier frames »ADU boundaries don’t correspond to frame boundaries »causes noticeable audio glitches when packets are lost
IETF Washington DC, Ross Finlayson, LIVE.COM Illustration frame ADU
IETF Washington DC, Ross Finlayson, LIVE.COM Illustration frame ADU
IETF Washington DC, Ross Finlayson, LIVE.COM If a frame gets lost... frame ADU
IETF Washington DC, Ross Finlayson, LIVE.COM If a frame gets lost... frame ADU Data received, but useless Data lost
IETF Washington DC, Ross Finlayson, LIVE.COM Alternative: Send headers+ADUs, not frames ADU
IETF Washington DC, Ross Finlayson, LIVE.COM A new RTP payload format for MP3 Identical to the existing format (RFC 2250), except »packets contain complete ADUs - not frames »uses a different payload type (dynamic) Data-preserving rearrangement of the original »no redundancy added => no increase in bit rate However, implementations now need more knowledge of the internals of MP3 frames
IETF Washington DC, Ross Finlayson, LIVE.COM Recent additions to this Internet-Draft How to handle streams with layer I or II frames mixed with layer III »probably an uncommon situation ‘Pseudo-code’ for converting between regular “MP3 frames” and “ADU frames”
IETF Washington DC, Ross Finlayson, LIVE.COM Notes For more information - including audio illustrations: » Some multicast MP3 server and receiver tools that (optionally) use this payload format: » Let’s have some more implementations!