<!doctype html public "-//W3C//DTD W3 HTML//EN">
<html><head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
--></style><title>Re: [Live-devel] Regarding MP3
Streaming</title></head><body>
<blockquote type="cite" cite>I was working on MP3 streaming code and
what I understood is first an MP3 frame is converted to ADU and then
again this ADU is converted to MP3 frame. Although I am still trying
to understand the complete flow but can you tell me why we are doing
this conversion from A -> B -> A . Is that just because to
support trick mode or something else.</blockquote>
<div><br></div>
<div>(I presume you're referring to the
"MP3AudioFileServerMediaSubsession" code.)</div>
<div><br></div>
<div>Yes, the conversion MP3->ADU->MP3 is done in order to
support 'trick mode' - specifically, fast forward. Because MP3
frames are not self contained, it is not possible to implement Nx
speedup on a MP3 stream simply by extracting every Nth MP3 frame.
Instead, we need to first convert to ADUs, apply the scaling on the
ADUs, and then convert them back to MP3 frames.</div>
<div><br></div>
<div>(For more information on MP3 ADUs, see <<font
face="Lucida Grande" size="-4"
color="#000000">http://www.live555.com/rtp-mp3/</font>> and
<<font face="Lucida Grande" size="-4"
color="#000000">http://www.live555.com/rtp-mp3/rtp-mp3.txt</font>></div
>
<x-sigsep><pre>--
</pre></x-sigsep>
<div><br>
Ross Finlayson<br>
Live Networks, Inc.<br>
http://www.live555.com/</div>
</body>
</html>