[Live-devel] scaled mp3 streaming

Ross Finlayson finlayson at live.com
Mon Feb 21 02:26:10 PST 2005


>Am trying to debug mp3 trickplay streaming with VLC as the client. (wav 
>file playback is working successfully).

As far as I know, MP3 trickplay with VLC is also working OK.  (At least, it 
was when I wrote the code.)

>  Looking at the MP3StreamState.cpp, it looks like the presentation time 
> stamp is being modified to account for the new scale value (findNextFrame 
> modifies the timestamp, which looks like is propagated back to 
> MP3FileSource).  As per an earlier discussion clarifying how the 
> presentation time stamp is *not* supposed to be scaled according to RTSP 
> dialect

That's correct.  The way scale factors N>1 are handled for MP3 is that 
every MP3 frame is read from the file, but only every Nth frame is actually 
delivered to the reading client.  (See "MP3ADU.cpp", line 259.)  To account 
for this, the duration (gap) between the presentation times of successive 
frames - as they're read from the file - is divided by N, so that the 
sequence of presentation times that will get delivered to the reading 
client increases at the same rate as if the input source were not being 
scaled at all.


	Ross Finlayson
	LIVE.COM
	<http://www.live.com/>



More information about the live-devel mailing list