<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx</link><description>Updates to RTC APIs on CE, has been prolonged for some time and there has been many updates to it and thus a blog to cover some high level overview of changes in RTC 1.5: RTC Overview RTC is mainly used for real time communication mechanisms like IM,</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#1068752</link><pubDate>Mon, 13 Nov 2006 17:59:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1068752</guid><dc:creator>Annapureddy Thirupathaiah</dc:creator><description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Are there any standard ACM interfaces to enable dynamic bit rate adaptation? For ex: AMR-NB supports 8 bit rate modes. Based on the network conditions bit rate mode can be changed on the fly. Do you enable this feature in RTC 1.5?&lt;/P&gt;
&lt;P&gt;Is there any way at the wave driver level to know whether there is a VoIP call started or not? In case of Cicuit switched (CS) base band calls, there are two ways to know this&lt;/P&gt;
&lt;P&gt;- RIL driver automatically informs the wave driver or&lt;/P&gt;
&lt;P&gt;- wave driver subscribe to the RIL notifications like any other application.&lt;/P&gt;
&lt;P&gt;But i do not see any way at the wave driver level to know about VoIP call started or not?&lt;/P&gt;
&lt;P&gt;What is the bitstream format exchanged between RTC and ACM codec? In other words, are the bit stream data buffers frame aligned or contain variable amount of frames (ex: 1, 1.5, 2 frames in &amp;nbsp;a single buffer)?&lt;/P&gt;
&lt;P&gt;If we disable internal (RTC) audio healing, what is the format of the data exchanged between RTC and ACM codec? i.e. do you pass the RTP packets or just speech frames?&lt;/P&gt;
&lt;P&gt;Thanks in advance&lt;/P&gt;
&lt;P&gt;Thiru&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#1083006</link><pubDate>Thu, 16 Nov 2006 01:19:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1083006</guid><dc:creator>cenet</dc:creator><description>&lt;p&gt;Are there any standard ACM interfaces to enable dynamic bit rate adaptation? &lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;RAJESH&amp;gt;&amp;gt; ACM is defined on MSDN. Though not specifcally designed for adaptable bit rate, I think it can be used for AMR as there are user defined fields that can be passed to codec driver. &lt;/p&gt;
&lt;p&gt;For ex: AMR-NB supports 8 bit rate modes. Based on the network conditions bit rate mode can be changed on the fly. Do you enable this feature in RTC 1.5?&lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;RAJESH&amp;gt;&amp;gt; &amp;nbsp;No we do not fully support AMR kind of pluggable codec, which may expect network condtions or info from remote AMR decoder to be fed to the encoder function. &lt;/p&gt;
&lt;p&gt;Is there any way at the wave driver level to know whether there is a VoIP call started or not? In case of Cicuit switched (CS) base band calls, there are two ways to know this&lt;/p&gt;
&lt;p&gt;- RIL driver automatically informs the wave driver or&lt;/p&gt;
&lt;p&gt;- wave driver subscribe to the RIL notifications like any other application.&lt;/p&gt;
&lt;p&gt;But i do not see any way at the wave driver level to know about VoIP call started or not?&lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; WaveXXXSetProperty can be used to inform the wave driver of the VOIP mode, if the wave driver supports such a property for VOIP.&lt;/p&gt;
&lt;p&gt;What is the bitstream format exchanged between RTC and ACM codec? In other words, are the bit stream data buffers frame aligned or contain variable amount of frames (ex: 1, 1.5, 2 frames in &amp;nbsp;a single buffer)?&lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt;RTC always feeds a single frame buffer.&lt;/p&gt;
&lt;p&gt;If we disable internal (RTC) audio healing, what is the format of the data exchanged between RTC and ACM codec? i.e. do you pass the RTP packets or just speech frames?&lt;/p&gt;
&lt;p&gt;&amp;lt;Rajesh&amp;gt;&amp;gt;RTC always passes &amp;amp; retrives single frame buffers to/from the ACM codec.&lt;/p&gt;
</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#1120050</link><pubDate>Wed, 22 Nov 2006 07:45:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1120050</guid><dc:creator>Annapureddy Thirupathaiah</dc:creator><description>&lt;P&gt;Thanks for your answers.&lt;/P&gt;
&lt;P&gt;Regarding Dynamic Bit Rate Adaptation, as a codec developer i can define and implement an ACMDM_XXX message to set the bit rate dynamically. What is important here is interoperability and usability. For ex: If we define ACMDM_SET_BITRATE and implement it, the clients such as RTC 1.5 of ACM Codec should be able to use this ACMDM_XXX message. &amp;nbsp;If they (clients) do not use it, then there is no use of implementing it. More over the message needs to be standadized for interoperability. &lt;/P&gt;
&lt;P&gt;WaveXXXSetProperty can be used to inform the wave driver of the VoIP mode. But WaveXXXSetProperty takes property set, property id and the relevant params as input. What is the property set id and property id to be implemented at wave driver level to be informed of VoIP mode?&lt;/P&gt;
&lt;P&gt;During media negoitation using SDP, it is quite possible to negotiate the RTP Packetization interval i.e. whether a single RTP packet contains a single frame or 2 frames or multiple frames. Generally for conversational services, it is single frame to reduce the overall latency. To be generic, it should be possible to indicate the ACM codec, wave driver about the packetization interval instead of hardcoding/assuming it to be single frame. Depending upon packetization interval, wave driver can adjust the DMA buffer size and hence DMA interrupt interval. This can increase the overall system response. &lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#1156232</link><pubDate>Mon, 27 Nov 2006 03:41:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1156232</guid><dc:creator>Michael</dc:creator><description>&lt;P&gt;When can we download this new API? &amp;nbsp;I cannot find a release date or a download location.&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#1181724</link><pubDate>Fri, 01 Dec 2006 10:55:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1181724</guid><dc:creator>cenet</dc:creator><description>&lt;p&gt;Regarding Dynamic Bit Rate Adaptation, as a codec developer i can define and implement an ACMDM_XXX message to set the bit rate dynamically. What is important here is interoperability and usability. For ex: If we define ACMDM_SET_BITRATE and implement it, the clients such as RTC 1.5 of ACM Codec should be able to use this ACMDM_XXX message. &amp;nbsp;If they (clients) do not use it, then there is no use of implementing it. More over the message needs to be standadized for interoperability. &lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;RAJESH&amp;gt;&amp;gt; Agreed. As I said before, currently this is not supported by RTC.&lt;/p&gt;
&lt;p&gt;WaveXXXSetProperty can be used to inform the wave driver of the VoIP mode. But WaveXXXSetProperty takes property set, property id and the relevant params as input. What is the property set id and property id to be implemented at wave driver level to be informed of VoIP mode?&lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; This is dependent on the driver. I dont believe there is any well defined property for this. I just suggested this mechanism, if you have some control on the driver code. Currently, RTC does not do anything to let driver know of VOIP mode. &lt;/p&gt;
&lt;p&gt;During media negoitation using SDP, it is quite possible to negotiate the RTP Packetization interval i.e. whether a single RTP packet contains a single frame or 2 frames or multiple frames. Generally for conversational services, it is single frame to reduce the overall latency. To be generic, it should be possible to indicate the ACM codec, wave driver about the packetization interval instead of hardcoding/assuming it to be single frame. Depending upon packetization interval, wave driver can adjust the DMA buffer size and hence DMA interrupt interval. This can increase the overall system response. &lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;RAJESH&amp;gt;&amp;gt; RTC's pluggable codec interface supports frame duration reg key. Depending on how much this is set, RTC will take care of giving the right size of buffer to the ACM codec.&lt;/p&gt;
</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#1181733</link><pubDate>Fri, 01 Dec 2006 10:57:01 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1181733</guid><dc:creator>cenet</dc:creator><description>&lt;p&gt;When can we download this new API? &amp;nbsp;I cannot find a release date or a download location.&lt;/p&gt;
&lt;p&gt;&amp;lt;&amp;lt;RAJESH&amp;gt;&amp;gt; RTC 1.5 is available as a part of Windows Embedded CE 6.0 release. Getting access to Windows Embedded CE 6.0 should give you access to RTC 1.5 as well. &lt;/p&gt;
</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#2032165</link><pubDate>Thu, 05 Apr 2007 14:45:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2032165</guid><dc:creator>Srikanth Nori</dc:creator><description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I'm looking for a way to change the source port from which SIP messages originate. How do I set the source port for SIP sessions initiated by the local UA?&lt;/P&gt;
&lt;P&gt;I'm able to set the listen address using IRTCClientPortManagement::StartListenAddressAndPort. RTC is able to listen When a remote user connects to this UA on this port, and responses are sent from that port. &lt;/P&gt;
&lt;P&gt;But this does not change the address for messages generated in sessions initiated by this UA. e.g. If I send the first INVITE, it goes out from the default port.&lt;/P&gt;
&lt;P&gt;I also tried Initializing the IRTCClient2 with RTCIF_ENABLE_SYMMETRIC_UDP_SIGNALING ,along with setting the port using IRTCClientPortManagement::StartListenAddressAndPort, but it did not help. &lt;/P&gt;
&lt;P&gt;Any pointers on what I can do to set the source port?&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#2255502</link><pubDate>Tue, 24 Apr 2007 08:05:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2255502</guid><dc:creator>Andy</dc:creator><description>&lt;P&gt;Can RTC1.5 send NOTIFY? Reception is fine, how about sending?&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#2414536</link><pubDate>Fri, 04 May 2007 23:22:05 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2414536</guid><dc:creator>cenet</dc:creator><description>&lt;P&gt;Can RTC1.5 send NOTIFY? Reception is fine, how about sending?&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; In Windows CE 6.0, RTC 1.5 can only receive Notify messages with the help of subscription APIs&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#2415083</link><pubDate>Sat, 05 May 2007 00:04:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2415083</guid><dc:creator>cenet</dc:creator><description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I'm looking for a way to change the source port from which SIP messages originate. How do I set the source port for SIP sessions initiated by the local UA?&lt;/P&gt;
&lt;P&gt;I'm able to set the listen address using IRTCClientPortManagement::StartListenAddressAndPort. RTC is able to listen When a remote user connects to this UA on this port, and responses are sent from that port. &lt;/P&gt;
&lt;P&gt;But this does not change the address for messages generated in sessions initiated by this UA. e.g. If I send the first INVITE, it goes out from the default port.&lt;/P&gt;
&lt;P&gt;I also tried Initializing the IRTCClient2 with RTCIF_ENABLE_SYMMETRIC_UDP_SIGNALING ,along with setting the port using IRTCClientPortManagement::StartListenAddressAndPort, but it did not help. &lt;/P&gt;
&lt;P&gt;Any pointers on what I can do to set the source port?&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; One way to do this would be to initialize symmetric UDP signaling (as you are doing) and use port manager APIs to specify the local address/src port info. Agreed, It's not the best way to to this, but you will achieve what you want to.&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#2661679</link><pubDate>Wed, 16 May 2007 04:52:16 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2661679</guid><dc:creator>Hi</dc:creator><description>&lt;P&gt;How about supporting for Push to Talkwith RTC 1.3/1.5? I'm looking for a way to control Talk-burst. It need to S/R TBCP bundle as RTCP method. Refer to SDK help, looks there is no any way to send RTCP bundle customed. So do I need to do this by other way what co-working with RTC? &lt;/P&gt;
&lt;P&gt;Thanks!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; RTC does not provide APIs control or customize RTP/RTCP streams. However, you can use RTC for SIP signaling and use a 3rd party media stack with RTC for your scenario. &lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#6526018</link><pubDate>Mon, 26 Nov 2007 08:59:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6526018</guid><dc:creator>Srikanth Nori</dc:creator><description>&lt;P&gt;I'm trying to send instant messages from an application using RTC on WinCE to &lt;/P&gt;
&lt;P&gt;Windows Messenger (5.1). Both are registered to a central server (MS &lt;/P&gt;
&lt;P&gt;LCS 2005) &lt;/P&gt;
&lt;P&gt;My sequence of calls is this &lt;/P&gt;
&lt;P&gt;1) IRTCClient_CreateSession of type RTCST_IM &lt;/P&gt;
&lt;P&gt;2) Register with LCS (IRTCClientProvisioning_GetProfile followed by &lt;/P&gt;
&lt;P&gt;IRTCClientProvisioning_EnableProfile) &lt;/P&gt;
&lt;P&gt;3) IRTCSession_AddParticipant (with the URI of windows messenger) &lt;/P&gt;
&lt;P&gt;4) IRTCSession_SendMessage ("text/plain", "message1", 42) (42 is the &lt;/P&gt;
&lt;P&gt;cookie value) &lt;/P&gt;
&lt;P&gt;5) IRTCSession_SendMessage ("text/plain", "message2", 43) &lt;/P&gt;
&lt;P&gt;6) IRTCSession_SendMessage ("text/plain", "message3", 44).. &lt;/P&gt;
&lt;P&gt;and so on. &lt;/P&gt;
&lt;P&gt;What I see is that the first message gets posted, and WM receives it &lt;/P&gt;
&lt;P&gt;succesfully (I get a RTCE_SESSION_STATE_CHANGE indicating &lt;/P&gt;
&lt;P&gt;RTCSS_CONNECTED with a session type of RTCST_IM. Then I get &lt;/P&gt;
&lt;P&gt;RTCE_SESSION_OPERATION_COMPLETE after the (4)th call in the list &lt;/P&gt;
&lt;P&gt;above). &lt;/P&gt;
&lt;P&gt;On the second message I get no events. Nothing happens at all. I also &lt;/P&gt;
&lt;P&gt;see no messages being generated (since there are no packets going out &lt;/P&gt;
&lt;P&gt;over the network interface). The SendMessage call doesn't indicate any &lt;/P&gt;
&lt;P&gt;error either. &lt;/P&gt;
&lt;P&gt;Any ideas what could be happening? &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; Try using session type: RTCST_MULTIPARTY_IM and see if that resolves the issue. &lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#6859282</link><pubDate>Tue, 25 Dec 2007 08:45:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6859282</guid><dc:creator>kings</dc:creator><description>&lt;P&gt;hi there&lt;/P&gt;
&lt;P&gt;any body knows to implement portmanager using rtc client&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;Rajesh&amp;gt;&amp;gt; Check Prathap's blog: &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/cenet/archive/2006/11/10/real-time-communications-rtc-1-5-port-manager.aspx"&gt;http://blogs.msdn.com/cenet/archive/2006/11/10/real-time-communications-rtc-1-5-port-manager.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#7793675</link><pubDate>Tue, 19 Feb 2008 16:58:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7793675</guid><dc:creator>divya.varadarajan</dc:creator><description>&lt;P&gt;We're using RTC on WinCE 1.5 to develop a SIP application, and we're trying to change the SIP port on which we send and receive messages. &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; You meant WinCE 5.1, right?&lt;/P&gt;
&lt;P&gt;To start receiving:&lt;/P&gt;
&lt;P&gt;IRTCClient2_put_ListenForIncomingSessions(RTCLM_DYNAMIC)&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; This alone should work, though it will not let you control which dynamic port RTC will use.&lt;/P&gt;
&lt;P&gt;IRTCClientPortManagement_StartListenAddressAndPort(CPM, local_ip_bstr, sip_port);&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; This should also work provided the port# falls in the min/max port range of RTC (Default values are listed on MSDN - on reg key settings page)&lt;/P&gt;
&lt;P&gt;These calls succeed, but RTC is unable to listen on the new port. It continues to listen on 5060!&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; Do you mean you continue to see 5060 listed in your REGISTER message?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;We also tried to do&lt;/P&gt;
&lt;P&gt;IRTCClient2_put_AllowedPorts(RTCTR_UDP, &amp;nbsp;RTCLM_DYNAMIC);&lt;/P&gt;
&lt;P&gt;IRTCClientPortManagement_StartListenAddressAndPort(CPM, local_ip_bstr, sip_port);&lt;/P&gt;
&lt;P&gt;This didn't work either.&lt;/P&gt;
&lt;P&gt;In case it matters, we are able to change the "from" port using the PortManager3 interface on Sessions that we create.&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#7793739</link><pubDate>Tue, 19 Feb 2008 17:02:03 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7793739</guid><dc:creator>divya.varadarajan</dc:creator><description>&lt;P&gt;We're using RTC 1.5 on WinCE and it is not able to receive SIP INFO messages generated by 3rd party softphones. RTC responds with a 500 Server Internal Error SIP message, and no event is generated for the local device to handle.&lt;/P&gt;
&lt;P&gt;However, we're able to send INFO messages succesfully.&lt;/P&gt;
&lt;P&gt;Do we need to do anything special to allow RTC to receive INFO messages succesfully?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; Have you enabled the RTCE_INFO event in RTC?&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#8356275</link><pubDate>Fri, 04 Apr 2008 12:17:05 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8356275</guid><dc:creator>Srikanth Nori</dc:creator><description>&lt;p&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; Try using session type: RTCST_MULTIPARTY_IM and see if that resolves the issue. &lt;/p&gt;
&lt;p&gt;Rajesh, thanks &amp;nbsp;a lot. This solved the problem.&lt;/p&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#8356719</link><pubDate>Fri, 04 Apr 2008 15:34:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8356719</guid><dc:creator>Srikanth Nori</dc:creator><description>&lt;p&gt;I tried to run an application that uses RTC 1.5 on WinCE 6.0 through Application Verifier to remove any memory leaks in the application. Application Verifier reports many unfreed heap allocations inside RTC calls during initialization of RTC. &lt;/p&gt;
&lt;p&gt;This is the code that I'm using to initialize. This function runs as a thread (which loops forever at the message pump till it gets a message requesting it to shut down).&lt;/p&gt;
&lt;p&gt;void init_wince_sip_lib(LPVOID param)&lt;/p&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCClient *irtc_client;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;HRESULT &amp;nbsp; &amp;nbsp;status;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Event notification Vars */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;int &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;EventCookie;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IConnectionPointContainer *CPC &amp;nbsp; &amp;nbsp; &amp;nbsp; = NULL;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IConnectionPoint &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*CP &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;= NULL;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCEventNotification &amp;nbsp; &amp;nbsp; *Notif;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Initialize COM */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;CoInitializeEx(NULL, COINIT_MULTITHREADED);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Create instance of RTC Client */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;CoCreateInstance(&amp;amp;CLSID_RTCClient, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /* RTC Clients ID &amp;nbsp; */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;NULL, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /* Not aggregate &amp;nbsp; &amp;nbsp;*/&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;CLSCTX_INPROC_SERVER, &amp;nbsp; &amp;nbsp; /* Only valid value */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;amp;IID_IRTCClient, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/* Interface ID &amp;nbsp; &amp;nbsp; */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(void **)&amp;amp;irtc_client); &amp;nbsp; /* Return pointer &amp;nbsp; */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCClient_QueryInterface&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(irtc_client, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /* Base pointer &amp;nbsp; */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;amp;IID_IRTCClient2, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /* Interface ID &amp;nbsp; */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(LPVOID *)&amp;amp;g_rtc_client2); /* Return pointer */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCClient_Release(irtc_client);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCClient2_InitializeEx(g_rtc_client2,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;RTCIF_DISABLE_MEDIA |&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;RTCIF_ENABLE_SYMMETRIC_UDP_SIGNALING |&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;RTCIF_PREFER_STATIC_PORT_FOR_SYMMETRIC_UDP);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCClient_QueryInterface(g_rtc_client2,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;amp;IID_IConnectionPointContainer,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (void**) (&amp;amp;CPC));&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IConnectionPointContainer_FindConnectionPoint(&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CPC,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;amp;IID_IRTCEventNotification,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;amp;CP);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IConnectionPointContainer_Release(CPC);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Initialize the event notification - this is a custom function we use to create an event handler*/&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCEventNotification_Initialize(&amp;amp;g_RTCEvents);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Get the notification interface */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCEventNotification_QueryInterface(g_RTCEvents,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;amp;IID_IRTCEventNotification,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(void **)&amp;amp;Notif);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Call the Advise method to give RTC the IUnknown pointer for the event */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IConnectionPoint_Advise(CP,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (IUnknown *)Notif,&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;amp;EventCookie);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IConnectionPoint_Release(CP);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCEventNotification_Release(Notif);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Filter to receive ALL events */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCClient_put_EventFilter(g_rtc_client2, RTCEF_ALL);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Start listening */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;IRTCClient2_put_ListenForIncomingSessions(g_rtc_client2, &lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; RTCLM_BOTH);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;/* Message pump */&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;while(1)&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;{&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; MSG msg;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; GetMessage(&amp;amp;msg, NULL, 0, 0);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(WM_APP == msg.message)&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; TranslateMessage(&amp;amp;msg);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; DispatchMessage(&amp;amp;msg);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;}&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;printf(&amp;quot;CoUninitializing init_wince_sip_lib\n&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;CoUninitialize();&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;printf(&amp;quot;done init wince sip lib\n&amp;quot;);&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;At the end of the application, I do IRTCClient2_PrepareForShutdown(g_rtc_client2), IRTCClient2_Shutdown(g_rtc_client2) and IRTCClient2_Release(g_rtc_client2) (from another thread). The Event notification interfaces are also freed up cleanly.&lt;/p&gt;
&lt;p&gt;App verifier reports about 15kilobytes of unfreed heap allocations in this thread alone...&lt;/p&gt;
&lt;p&gt;Is there something I can do to make these unfreed allocations go away? &lt;/p&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#8356777</link><pubDate>Fri, 04 Apr 2008 15:54:11 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8356777</guid><dc:creator>divya.varadarajan</dc:creator><description>&lt;P&gt;Thanks for replying&lt;/P&gt;
&lt;P&gt;We're using RTC 1.5 on WinCE to develop a SIP application&lt;/P&gt;
&lt;P&gt;Yes all the RTC events have been enabled using &lt;/P&gt;
&lt;P&gt;IRTCClient::put_EventFilter(RTCEF_ALL).&lt;/P&gt;
&lt;P&gt;I am still unable to detect any incoming RTCE_INFO event.&lt;/P&gt;
&lt;P&gt;Is there any other RTC API that needs to be called to enable RTCE_INFO event?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; Sorry, for the late reply. What is the content type/sub-type that you are using for the INFO packet? It may be colliding with certain internal type/sub-type that RTC uses and may find it invalid.&lt;/P&gt;</description></item><item><title>re: What’s new in Real time Communication (RTC) 1.5?</title><link>http://blogs.msdn.com/cenet/archive/2006/11/08/what-s-new-in-real-time-communication-rtc-1-5.aspx#8677141</link><pubDate>Tue, 01 Jul 2008 17:07:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8677141</guid><dc:creator>Srikanth Nori</dc:creator><description>&lt;P&gt;Hi Rajesh,&lt;/P&gt;
&lt;P&gt;Some progress on the memory leaks issue: I've used CoRegisterMallocSpy to check up on the allocations that RTC does for each operation. (I have disabled BSTR caching)&lt;/P&gt;
&lt;P&gt;I'm creating a session by calling IRTCClient2_CreateSessionWithDescription, followed by IRTCSession2_AddParticipant.&lt;/P&gt;
&lt;P&gt;By examining the IMallocSpy calls I see that RTC makes three allocations in AddParticipant. One of them is freed immediately, leaving two unfreed allocs. (I think these correspond to the SDP and content type)&lt;/P&gt;
&lt;P&gt;These two allocs seem to get freed only when I call IRTCClient_Shutdown. This behaviour is repeatable. i.e. if I make 10 calls, all 10*2 allocs get freed only in IRTCClient_Shutdown.&lt;/P&gt;
&lt;P&gt;This causes problems with my application, because it slowly runs out of memory as I keep making calls.&lt;/P&gt;
&lt;P&gt;What should I do to make these two allocations get freed immediately (or when the call is terminated)?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;&amp;lt;Rajesh&amp;gt;&amp;gt; What RTC version are you using and what CE OS is this? Are you using the latest CE 6.0 R2 release? If not, please try that. Thanks.&lt;/P&gt;</description></item></channel></rss>