Hi, According to the doc [1], you just have to call pjmedia_transport_media_create() first before calling any session function such as pjmedia_transport_encode_sdp(). [1] http://www.pjsip.org/pjmedia/docs/html/group__PJMEDIA__TRANSPORT.htm#media_create Regards, nanang On Tue, May 19, 2009 at 4:10 PM, Ponik Supapupa <spunyk at gmail.com> wrote: > Hi Benny, thanks for reply. > Yo wrote: >> >> The SRTP transport supports both RTP/AVP and RTP/SAVP, via the >> pjmedia_srtp_use flag. If you set it to PJMEDIA_SRTP_MANDATORY, RTP/SAVP >> will be used instead. > > But i already use this flag. Look: > ?pjmedia_srtp_setting_default(&srtp_settings); > ?srtp_settings.use = PJMEDIA_SRTP_MANDATORY; > ?status = pjmedia_transport_srtp_create(med_endpt, udp_transport, > &srtp_settings, &srtp_transport); > then we i call > ?status = pjmedia_transport_encode_sdp(tp, dialog->pool, sdp, NULL, > Calls[newId]->media[0].media_index); > i have that issue i wrote. > Problem is as i think in ln 1331 in transport_srtp.c: > ?return pjmedia_transport_encode_sdp(srtp->member_tp, sdp_pool, > ?? sdp_local, sdp_remote, media_index); > Because it call encode_sdp from the transport_udp.c. In this file we have > definition in ln 40: > ?static const pj_str_t ID_RTP_AVP = { "RTP/AVP", 7 }; > So when the compiler do the check of the transport it use this definition, > not one from the transport_srtp.c . I use MSVC compiler, may be it is a > problem in compiler :) And also may be we don't need to cal an encode_sdp > method from the transport member of the srtp transport? > Regards. > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >