Hi, Andrew

Just wondering - what is the use-case?
We should better understand what users use ;)

On Mon, Jul 13, 2009 at 21:09, Andrew Lavigne<alavi...@nortel.com> wrote:
> Hi, Alexander
>
> Ok, thanks for the update.  I noticed that the main branch has a new switch 
> on sipXInitialize that allows local audio to be turned off.  That's probably 
> good enough for me for now -- I'll use that.
>
> Thanks for looking into this,
> ...Andrew
>
> -----Original Message-----
> From: alexander.cheme...@gmail.com [mailto:alexander.cheme...@gmail.com] On 
> Behalf Of Alexander Chemeris
> Sent: Sunday, July 12, 2009 7:01 PM
> To: Paulo Vicentini; Lavigne, Andrew (CAR:PC00)
> Cc: sipxtapi-dev@list.sipfoundry.org
> Subject: Re: [sipxtapi-dev] Fwd: Input audio sometimes not connected properly
>
> Ok, It's clear now. This feature is not yet implemented in the new Topology 
> graph. So I changed the code to show this up. It will now assert in sipXtapi 
> - slightly better then meaningful crash.
> Anyway, if everything go as expected, we're going to address this shortcoming 
> in the next two month and implement device change.
>
> On Sun, Jul 12, 2009 at 23:33, Alexander 
> Chemeris<alexander.cheme...@sipez.com> wrote:
>> Hi Andrew,
>>
>> Thank you for reporting the bug.
>>
>> I'll try to reproduce it, but it would be helpful if you post
>> backtrace of the crash.
>>
>> On Sat, Jul 11, 2009 at 1:57 AM, Paulo
>> Vicentini<vicentini.pa...@gmail.com> wrote:
>>> to the list
>>>
>>> ---------- Forwarded message ----------
>>> From: Andrew Lavigne <alavi...@nortel.com>
>>> Date: Fri, Jul 10, 2009 at 6:13 PM
>>> Subject: RE: [sipxtapi-dev] Input audio sometimes not connected
>>> properly
>>> To: Paulo Vicentini <vicentini.pa...@gmail.com>, Keith Kyzivat
>>> <kam...@gmail.com>
>>>
>>>
>>> So, I've moved to the main branch.  The good news is that my issue
>>> with the RTP stream changing and packets being dropped is now ok -
>>> the packets from the new stream (with a new SSRC) are now accepted.
>>> Many thanks for your replies - they pointed me in the right direction.
>>>
>>> The bad news is that I now seem to be getting an execption thrown
>>> when I try to set the audio input device to NONE, like so:
>>>
>>> sipxAudioSetCallInputDevice(g_hInst, "NONE");
>>>
>>> This was working fine in the 3.2 branch, but now it throws an
>>> exception
>>>
>>> "Unhandled exception at 0x10148c96 (sipXtapid.dll) in
>>> TelephonyIntegration.exe: 0xC0000005: Access violation reading
>>> location 0x0000001c."
>>>
>>> It would appear to be the following bit of code is where it
>>> encounters this in OsMsgPool::findFreeMsg(), on the NULL != mpMutex check.
>>>
>>> if (NULL != mpMutex)
>>> {
>>>    mpMutex->acquire();
>>> }
>>>
>>> I'm not sure why this is happening now, but not before.  Any clue as
>>> to why this is so?  In any case, I will investigate....
>>>
>>> ...Andrew
>>>
>>> ________________________________
>>> From: Paulo Vicentini [mailto:vicentini.pa...@gmail.com]
>>> Sent: Friday, July 10, 2009 3:59 PM
>>> To: Keith Kyzivat
>>> Cc: Lavigne, Andrew (CAR:PC00); sipxtapi-dev@list.sipfoundry.org
>>> Subject: Re: [sipxtapi-dev] Input audio sometimes not connected
>>> properly
>>>
>>> Hi,
>>> SSRC changes will not be an issue for you in the main branch, but we
>>> should still address suddenly changes on TS and Seq (while SSRC keeps
>>> the same) Paulo On Fri, Jul 10, 2009 at 2:45 PM, Keith Kyzivat
>>> <kam...@gmail.com> wrote:
>>>>
>>>> Last I knew, you should not be too worried -- Alex has been trying
>>>> to keep it solid and stable, even with addition of new features.
>>>> On Fri, Jul 10, 2009 at 1:43 PM, Andrew Lavigne
>>>> <alavi...@nortel.com>
>>>> wrote:
>>>>>
>>>>> Hi again.
>>>>>
>>>>> I checked out the latest main branch
>>>>> (http://scm.sipfoundry.org/rep/sipX/main) and I do see the methods
>>>>> you describe below.     I had been using the 3.2 version because on
>>>>> the sipxtapi web page it says that the 3.2 branch is "Active,
>>>>> Stable; Receive only bugfixes", whereas the main branch says that
>>>>> the status is "Active".   (and I wanted something stable and
>>>>> working)
>>>>>
>>>>> It would seem, however, that I need the latest functionality.  I'm
>>>>> going to compile and try using the latest main version and see if this 
>>>>> helps.
>>>>>
>>>>> Should I be concerned about stability if I use the latest on main?
>>>>>
>>>>> ...Andrew
>>>>>
>>>>> --- original message ---
>>>>>
>>>>>
>>>>> Hi, Paulo
>>>>>
>>>>> Thanks for replying.
>>>>>
>>>>> Interesting... I don't have these methods in my code base.  Looks
>>>>> like maybe I'm not using the right / most recent load.
>>>>>
>>>>> This is my subversion URL:
>>>>>
>>>>> http://scm.sipfoundry.org/rep/sipX/branches/sipXtapi-3.2
>>>>>
>>>>> Should I be using something different?
>>>>>
>>>>> Thanks,
>>>>> ...Andrew
>>>>>
>>>>>
>>>>> ________________________________
>>>>> From: Paulo Vicentini [mailto:vicentini.pa...@gmail.com]
>>>>> Sent: Friday, July 10, 2009 11:24 AM
>>>>> To: Lavigne, Andrew (CAR:PC00)
>>>>> Cc: Alexander Chemeris; sipxtapi-dev@list.sipfoundry.org
>>>>> Subject: Re: [sipxtapi-dev] Input audio sometimes not connected
>>>>> properly
>>>>>
>>>>> Hi,
>>>>> Check if these functions below were called.
>>>>> if "SSRC id changes" - Then mediaLib should detect it (at least it
>>>>> used to work).
>>>>> I had an issue  when SSRC remained  the same while Seq and
>>>>> TimeStamp sudden changed.
>>>>>
>>>>>
>>>>> void MprRtpDispatcher::MpRtpStream::setSSRC(RtpSRC ssrc) {
>>>>>   // Reset decoder if this is not the first time setSSRC() is called.
>>>>>   // Note, that we deliberately does not check whether SSRC really
>>>>> changed.
>>>>>   // We trust caller to perform this check. Furthermore some broken
>>>>>   // implementations does not change SSRC on a new stream start.
>>>>>   if (mAddress != 0 && mpDecode != NULL)
>>>>>   {
>>>>>   mpDecode->reset();
>>>>>   }
>>>>>
>>>>>   setValue(ssrc);
>>>>> }
>>>>>
>>>>> /**************************************************/
>>>>> UtlBoolean MprDecode::handleReset() {
>>>>>   OsLock lock(mLock);
>>>>>
>>>>>   // Reset JB, JBE and dejitter
>>>>>   mpJB->reset();
>>>>>   mpJbEstimationState->reset();
>>>>>   if (mpMyDJ != NULL)
>>>>>   {
>>>>>   mpMyDJ->reset();
>>>>>   }
>>>>>
>>>>>   mIsStreamInitialized = FALSE;
>>>>>   mNumPrevCodecs = 0;
>>>>>
>>>>>   return TRUE;
>>>>> }
>>>>> Paulo
>>>>> On Fri, Jul 10, 2009 at 10:51 AM, Andrew Lavigne
>>>>> <alavi...@nortel.com>
>>>>> wrote:
>>>>>>
>>>>>> Hi, Alexander
>>>>>>
>>>>>> Thanks for your reply.  Much appreciated. (and the other reply, too).
>>>>>>
>>>>>> Good to hear that the re-INVITE works for you.  I've done a little
>>>>>> digging inside the code and it seems to me that something is
>>>>>> getting confused in the dejitter buffer (class MprDejitter in 
>>>>>> sipXmediaLib).
>>>>>>
>>>>>> During the re-INVITE scenario, the media gateway switches over to
>>>>>> a new RTP stream (it is sending me a PCMA RTP stream before the
>>>>>> re-INVITE, then switches to a PCMU RTP stream afterwards.  The SIP
>>>>>> exchange contains the proper SDP negotiation for the new codec type).
>>>>>>
>>>>>> In the trace fragment below, 47.129.106.75 is my little test
>>>>>> client, and
>>>>>> 47.135.211.232 is the media gateway that is hosting the audio conference.
>>>>>>  You can see that the media gateway is sending PCMA RTP packets up
>>>>>> until the time where it sends the SIP re-INVITE. My test client
>>>>>> then replies with the appropriate SIP messages.  In the SDP data
>>>>>> (which I've not included here) associated with these SIP messages,
>>>>>> a new port and new codec is negotiated for the new RTP stream that
>>>>>> will be sent by the media gateway after the re-INVITE.  Then, the
>>>>>> media gateway starts sending packets along this new RTP stream.
>>>>>>
>>>>>> So, here's the interesting point:
>>>>>>
>>>>>> The packet stream going from my client to the media gateway
>>>>>> changes it's codec from PCMA to PCMU, but the timestamp, sequence
>>>>>> number maintain their incrementing sequence, and SSRC id remains
>>>>>> unchanged.  However, for the packet stream coming back from my
>>>>>> media gateway, the timestamp and sequence number are reset to new
>>>>>> values, and the SSRC id changes.  This is the part that seems to
>>>>>> trip up code in MprDejitter.   In the method pullPacket(), there's
>>>>>> a check that compares an existing timestamp value with the
>>>>>> timestamp value from a new packet.  This check causes the code
>>>>>> that retrieves the packet to be bypassed, effectively causing the
>>>>>> packet to be dropped.  All of the packets from the point of switchover 
>>>>>> on get dropped because of this (and this is probably why I don't hear 
>>>>>> anything after this point).
>>>>>>
>>>>>> So, the question is this:  is the media gateway doing something
>>>>>> improper by switching to a new SSRC id, and resetting sequence id
>>>>>> and timestamp?   Or is there something amiss with this bit of
>>>>>> logic in pullPacket().  I'm not familiar enough with the standards to 
>>>>>> know this is valid behavior or not.
>>>>>>
>>>>>>
>>>>>>
>>>>>> No.     Time           Source                Destination Protocol
>>>>>> Info
>>>>>>   3494 24.633243000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMA, SSRC=0x4A5425E6, Seq=618, Time=885647077
>>>>>>   3495 24.651004000   47.135.211.232        47.129.106.75
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMA, SSRC=0x95070000, Seq=2941, Time=3132451048
>>>>>>   3496 24.653266000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMA, SSRC=0x4A5425E6, Seq=619, Time=885647237
>>>>>>   3497 24.670539000   47.135.211.232        47.129.106.75
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMA, SSRC=0x95070000, Seq=2942, Time=3132451208
>>>>>>   3498 24.673185000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMA, SSRC=0x4A5425E6, Seq=620, Time=885647397
>>>>>>   3500 24.691061000   47.135.211.232        47.129.106.75 SIP/SDP
>>>>>> Request: INVITE sip:telephony_t...@47.129.106.75:6060, with
>>>>>> session description
>>>>>>   3501 24.693107000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMA, SSRC=0x4A5425E6, Seq=621, Time=885647557
>>>>>>   3502 24.693878000   47.135.211.232        47.129.106.75
>>>>>> ICMP
>>>>>>   Destination unreachable (Port unreachable)
>>>>>>   3503 24.695575000   47.129.106.75         47.135.211.232
>>>>>> SIP
>>>>>>    Status: 100 Trying
>>>>>>   3504 24.699837000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    Unknown RTP version 0
>>>>>>   3506 24.700186000   47.135.211.232        47.129.106.75
>>>>>> ICMP
>>>>>>   Destination unreachable (Port unreachable)
>>>>>>   3508 24.707695000   47.129.106.75         47.135.211.232
>>>>>>  SIP/SDP  Status: 200 OK, with session description
>>>>>>   3509 24.713177000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMU, SSRC=0x4A5425E6, Seq=622, Time=885647717
>>>>>>   3510 24.713955000   47.135.211.232        47.129.106.75
>>>>>> ICMP
>>>>>>   Destination unreachable (Port unreachable)
>>>>>>   3511 24.719948000   47.135.211.232        47.129.106.75
>>>>>> SIP
>>>>>>    Request: ACK sip:telephony_t...@47.129.106.75:6060
>>>>>>   3512 24.733115000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMU, SSRC=0x4A5425E6, Seq=623, Time=885647877
>>>>>>   3521 24.753133000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMU, SSRC=0x4A5425E6, Seq=624, Time=885648037
>>>>>>   3522 24.758177000   47.135.211.232        47.129.106.75
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMU, SSRC=0xE8E, Seq=22427, Time=26582
>>>>>>   3523 24.773143000   47.129.106.75         47.135.211.232
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMU, SSRC=0x4A5425E6, Seq=625, Time=885648197
>>>>>>   3524 24.778966000   47.135.211.232        47.129.106.75
>>>>>> RTP
>>>>>>    PT=ITU-T G.711 PCMU, SSRC=0xE8E, Seq=22428, Time=26742
>>>>>>   [... Etc etc ... ]
>>>>>>
>>>>>> ...Andrew
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: alexander.cheme...@gmail.com
>>>>>> [mailto:alexander.cheme...@gmail.com]
>>>>>> On Behalf Of Alexander Chemeris
>>>>>> Sent: Thursday, July 09, 2009 3:25 PM
>>>>>> To: Lavigne, Andrew (CAR:PC00)
>>>>>> Cc: sipxtapi-dev@list.sipfoundry.org
>>>>>> Subject: Re: [sipxtapi-dev] Input audio sometimes not connected
>>>>>> properly
>>>>>>
>>>>>> Hi Andrew,
>>>>>>
>>>>>> We use sipXtapi a lot with our own Bridge (also sipXtapi-based),
>>>>>> and it works perfectly with re-INVITE. So, no, this issue is not known.
>>>>>> It would be helpful if you post here WireShark capture of the
>>>>>> session with the note when audio is lost. Then we'll be able to see 
>>>>>> what's going.
>>>>>>
>>>>>> Also I'd recommend to add a simple audio logging to a file to
>>>>>> MprDecode::doProcessFrame(). Just create a file, named after
>>>>>> resource name
>>>>>> (getName()) and write all audio data from 'outBufs[0]'
>>>>>> right before "return TRUE". Then look into the file - what does it
>>>>>> contains.
>>>>>>
>>>>>> On Thu, Jul 9, 2009 at 7:43 PM, Andrew
>>>>>> Lavigne<alavi...@nortel.com>
>>>>>> wrote:
>>>>>> > Hi, All
>>>>>> >
>>>>>> > I'm getting the sense that this list is not all that active.
>>>>>> > Still, I have a troublesome issue upon which I really really
>>>>>> > hope someone can give me some insight.
>>>>>> >
>>>>>> > Using a simple little client with Sipxtapi, I'm setting up a SIP
>>>>>> > call with an audio RTP stream to an audio conference bridge on a
>>>>>> > media gateway.
>>>>>> > Mostly, everything gets set up ok:  The initial SIP Invite goes
>>>>>> > as expected, the initial RTP stream for setting up the
>>>>>> > conference works perfectly fine.
>>>>>> > Then, the media gateway sends my client a sip re-INVITE, along
>>>>>> > with a new SDP for the new audio stream that will be used for
>>>>>> > the actual conference.
>>>>>> > I'm looking at the SIP and RTP data in wireshark and everything
>>>>>> > gets set up perfectly...
>>>>>> >
>>>>>> > EXCEPT that most of the time, the RTP stream that comes back
>>>>>> > from the media gateway into sipxtapi seems to be improperly
>>>>>> > connected up.  I see the proper RTP packets coming into
>>>>>> > sipxtapi, but I hear nothing in my speakers.  Once in a blue
>>>>>> > moon, the issue does not manifest and I hear everything fine.
>>>>>> > Then I'll run it again and - poof - no audio can be heard (even
>>>>>> > though in wireshark I can clearly see it being sent from the
>>>>>> > media gateway into my app).
>>>>>> >
>>>>>> > It seems like something is not quite right down in the medialib
>>>>>> > somewhere - some sort of race condition or timing issue.
>>>>>> > Sometimes it works, sometimes it doesn't.    I'm poking around,
>>>>>> > placing debug lines and breakpoints, trying to isolate the problem, 
>>>>>> > but so far no luck.
>>>>>> > My questions to any experts out there are:
>>>>>> >
>>>>>> > 1) is there any sort of known issue like this in sipxmedialib?
>>>>>> > If so, is there some easy workaround?
>>>>>> > 2) any sort of hint as to where I'd look in order to verify if
>>>>>> > the RTP packets are getting mixed in properly into the Flow
>>>>>> > Graph?  That would be helpful, too.
>>>>>> >
>>>>>> > 3) any other ideas that I have not yet thought of.
>>>>>> >
>>>>>> > Please, please... if anyone knowledgeable is out there reading
>>>>>> > this, could they please give me a few minutes of their time.  I
>>>>>> > would be most appreciative.  This bug (I'm going to call it a
>>>>>> > bug until proven
>>>>>> > otherwise) is really wasting a lot of my time.
>>>>>> >
>>>>>> > Many thanks x 100,
>>>>>> > ...Andrew Lavigne
>>>>>> >
>>>>>> > _______________________________________________
>>>>>> > sipxtapi-dev mailing list
>>>>>> > sipxtapi-dev@list.sipfoundry.org List Archive:
>>>>>> > http://list.sipfoundry.org/archive/sipxtapi-dev/
>>>>>> >
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Regards,
>>>>>> Alexander Chemeris.
>>>>>>
>>>>>> SIPez LLC.
>>>>>> SIP VoIP, IM and Presence Consulting http://www.SIPez.com
>>>>>> tel: +1 (617) 273-4000
>>>>>> _______________________________________________
>>>>>> sipxtapi-dev mailing list
>>>>>> sipxtapi-dev@list.sipfoundry.org
>>>>>> List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> sipxtapi-dev mailing list
>>>>> sipxtapi-dev@list.sipfoundry.org
>>>>> List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/
>>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> sipxtapi-dev mailing list
>>> sipxtapi-dev@list.sipfoundry.org
>>> List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/
>>>
>>
>>
>>
>> --
>> Regards,
>> Alexander Chemeris.
>>
>> SIPez LLC.
>> SIP VoIP, IM and Presence Consulting
>> http://www.SIPez.com
>> tel: +1 (617) 273-4000
>>
>
>
>
> --
> Regards,
> Alexander Chemeris.
>
> SIPez LLC.
> SIP VoIP, IM and Presence Consulting
> http://www.SIPez.com
> tel: +1 (617) 273-4000
>



-- 
Regards,
Alexander Chemeris.

SIPez LLC.
SIP VoIP, IM and Presence Consulting
http://www.SIPez.com
tel: +1 (617) 273-4000
_______________________________________________
sipxtapi-dev mailing list
sipxtapi-dev@list.sipfoundry.org
List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/

Reply via email to