> How to read this file in native speed (read every packet every 21.3ms) using 
> ADTSFileSource?
> Using scheduleDelayedTask every 21.3 ms to get new packet on time is bad 
> option - that was wrong approach - took a lot of CPU.

Marcin,

I’m not totally sure I understand what you’re trying to do - but if you are 
trying to read and stream from a pre-recorded file (with any type of media; not 
just ADTS), then you should never be calling “scheduleDelayedTask()” yourself.  
Instead, your input source should just be setting “fDurationInMicroseconds” 
when it delivers each frame - and then our downstream software 
(“MultiFramedRTPSink”) that actually does the packetizing and transmission of 
the RTP audio data will automatically use those delays to figure out when to 
transmit each packet (and then continue reading from the input file).  Thus 
your only task is to make sure that “fDurationInMicroseconds” is set properly 
for each input frame.

If you look at the code for “ADTSAudioFileSource.cpp”, you’ll see that it 
already sets “fDurationInMicroseconds” for each audio frame that it delivers.  
If you are using that code ‘as is’, then you should not need to do anything 
else.  If, however, you are writing your own class (i.e., a subclass of 
“FramedSource” or “FramedFileSource”) to implement your input audio source, 
then you will need to set “fDurationInMicroseconds” (and “fPresentationTime) 
for each frame.

I hope this helps.


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to