< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index  

Re: [reSIProcate-users] Sdpcontents processing ???


The problem is that the m line of the SDP is invalid.  There is a
space following the codec id 103 and it's throwing off the resip SDP
parser.  I'll commit a change to resiprocate to handle this invalid
sdp better.

Thanks,
Scott

On Wed, Sep 2, 2009 at 10:33 AM, Vasanthi
Ramasamy<Vasanthi.Ramasamy@xxxxxxxxxxxxxxxx> wrote:
>
>
> Hi,
>
> I'm using Resiprocate 1.5. And I see something weird in SdpContents 
> processing. May be I'm missing something here.  My application is acting as 
> an UAS. This is my incoming Offer SDP from UAC:
>
> v=0^M
> o=VGW 1251901012 1251901012 IN IP4 10.1.83.143^M
> s=VGW^M
> c=IN IP4 10.1.83.143^M
> t=0 0^M
> a=sendrecv^M
> a=x-ActiveSpeaker:on^M
> m=audio 45894 RTP/AVP 103 ^M
> a=rtpmap:103 ISAC/16000/1^M
> a=fmtp:103 mode=30, type=fixed, bitrate=32000^M
> a=silenceSupp:off - - - -^M
>
> And in my application, I handle this offer SDP in the following code:
> -----------------------------------------------------------------------------
> SdpContents* offer  (point to the incoming Sdpcontents.)
> session = offer->session();
>
> for (std::list<SdpContents::Session::Medium>::const_iterator
> MediaIt = session.media().begin();
> MediaIt != session.media().end(); MediaIt++) {
>   for (std::list<SdpContents::Session::Codec>::const_iterator codecsIt = 
> MediaIt->codecs().begin();
>   codecsIt != MediaIt->codecs().end(); codecsIt++)
>   {
>      unsigned int pt = codecsIt->payloadType();
>      Data encName = codecsIt->getName();
>      unsigned int rate = codecsIt->getRate();
>      cout(" codec details " << pt << " " << encName << " " << rate );
>   }
> }
> -----------------------------------------------------------------------------
> The above code outputs:
> codec details 103 ISAC 16000
> codec details 0 PCMU 8000
> ---------------------------------------------------------------------------------
>
>
> 1. Where does this "0 PCMU 8000" comimg from ????  Am I missing something 
> here ?
> 2. I did look into resip/stack/SdpContents.cxx, list<Codec>& 
>  SdpContents::Session::Medium::codecs(). I uncommented the DebugLogs and got 
> the following log from Resiprocate.
>
> DEBUG | 20090902-141651.601 | VAPPS | RESIP:SDP | 3046296496 | 
> SdpContents.cxx:1611 | SdpContents::Session::Medium::getCodec(103 ISAC/160   
>      00/1)
> DEBUG | 20090902-141651.601 | VAPPS | RESIP:SDP | 3046296496 | 
> SdpContents.cxx:1635 | SdpContents::Session::Medium::getCodec[](ISAC/16000   
>      /1)
> DEBUG | 20090902-141651.601 | VAPPS | RESIP:SDP | 3046296496 | 
> SdpContents.cxx:1645 | Found static codec for format: 0
>
>
> Thanks,
> Vasanthi
> _______________________________________________
> resiprocate-users mailing list
> resiprocate-users@xxxxxxxxxxxxxxx
> List Archive: http://list.resiprocate.org/archive/resiprocate-users/
>