[Live-devel] troubles with Vidiator
Ross Finlayson
finlayson at live555.com
Wed Jul 19 17:31:54 PDT 2006
> > You can use the function "RTPSource::hasBeenSynchronizedUsingRTCP()"
>> to test whether or not RTCP "Sender Report"s have started arriving.
>>
>Unfortunately I'm unable to do this in case of AMR audio (or I'm missing
>something).
>
>If I'm receiving AMR then AMRDeinterleaver is used as source of AMR
>audio. AMRDeinterleaver::isRTPSource() returns False which means that
>I'm unable to call RTPSource::hasBeenSynchronizedUsingRTCP() in this
>case. Actually AMRDeinterleaver receives data using RawAMRRTPSource
>(through FramedSource* fInputSource class member). So IMO
>AMRDeinterleaver should have some method to return fInputSource or
>implement RTPSource and forward all calls to fInputSource
No problem. If you look at the call to
"AMRAudioRTPSource::createNew()", you'll see that there's a result
parameter "resultRTPSource" which returns the "RTPSource" object
behind this.
Also, if you are accessing the stream using RTSP, you will have
created a "MediaSubsession" object for this stream. You can then
call its "rtpSource()" member function to get the "RTPSource" object.
--
Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
More information about the live-devel
mailing list