#21

OPAL: Codec is not properly destroyed after disconnect

    • Created on: Wed, Jun 04 2008 (about 1 year ago)
    • Reported by: joegen
    • Assigned to: joegen
    • Milestone:
    • Status: Fixed
    • Priority: Normal (3)
    • Component:

    Here is the original thread from the opensisptack mailing list

    I have also been able to replicate this issue. So far I’ve only seen it
    happen using G.729. The first call seems to go through, but every subsequent
    call attempt fails. I am going to try recompiling an older snapshot of the
    CVS source I have.

    H.Kropf – Have you found out anything new on this issue?

    Whit


    Original Message——-
    From: opensipstack-devel-bounces@lists.sourceforge.net
    [mailto:opensipstack-devel-bounces@lists.sourceforge.net] On Behalf Of
    Joegen E. Baclor
    Sent: Thursday, May 22, 2008 9:14 PM
    To: H.Kropf
    Cc: opensipstack-devel@lists.sourceforge.net
    Subject: Re: [OpenSIPStack] [SF] RTP fault

    Hi,

    Thanks for the logs. They were very helpful. It is evident that the
    previous call did not destroy the codec properly. I will try to
    replicate this on my system. Ilian is currently on leave so it might
    take a while for him to catch this thread. I have created a ticket for
    this: http://www.assembla.com/spaces/opensbc/tickets/20

    Joegen

    H.Kropf wrote:
    > > Hi
    > >
    > > Log (for pwlib – level 6) – in attachments
    > >
    > >
    > > Joegen E. Baclor wrote:
    >> >> Hmmn. Strange. Seems like the codec from the previous call has not
    >> >> been destroyed. Can you send me a maximum level log of two
    >> >> consecutive calls right after fresh startup of your SoftPhone?
    >> >>
    >> >> H.Kropf wrote:
    >> >>
    >>> >>> Hi
    >>> >>>
    >>> >>>
    >>>>> >>>>> can you put a break-point in OpalTranscoder::ConvertFrames() and
    >>>>> >>>>> figure out where exactly it fails?
    >>>>> >>>>>
    >>> >>> I can :)
    >>> >>>
    >>> >>>
    >>> >>> bool OpalMediaPatch::Sink::WriteFrame(RTP_DataFrame & sourceFrame)
    >>> >>> {
    >>> >>> ……
    >>> >>> if (!primaryCodec->ConvertFrames(sourceFrame, intermediateFrames))
    >>> >>> {
    >>> >>> PTRACE failed");
    >>> >>> return false;
    >>> >>> }
    >>> >>> ……
    >>> >>> }
    >>> >>>
    >>> >>> BOOL OpalTranscoder::ConvertFrames(const RTP_DataFrame & input,
    >>> >>> RTP_DataFrameList & output)
    >>> >>> {
    >>> >>> …….
    >>> >>> return Convert(input, output0);
    >>> >>> }
    >>> >>>
    >>> >>> BOOL OpalFlexiTranscoder::Convert( const RTP_DataFrame & input,
    >>> >>> RTP_DataFrame & output)
    >>> >>> {
    >>> >>> return m_Transcoder->Convert( input, output );
    >>> >>> }
    >>> >>>
    >>> >>> BOOL OpalFramedTranscoder::Convert(const RTP_DataFrame & input,
    >>> >>> RTP_DataFrame & output)
    >>> >>> {
    >>> >>> ….
    >>> >>> while (inputLength > 0)
    >>> >>> {
    >>> >>> ……
    >>> >>> if (!ConvertFrame(inputPtr, consumed, outputPtr, created))
    >>> >>> return FALSE;
    >>> >>> …….
    >>> >>> }
    >>> >>> …….
    >>> >>> }
    >>> >>>
    >>> >>> BOOL OpalFramedTranscoder::ConvertFrame(const BYTE * inputPtr,
    >>> >>> PINDEX & /consumed/, BYTE * outputPtr, PINDEX & /created/)
    >>> >>> {
    >>> >>> return ConvertFrame(inputPtr, outputPtr);
    >>> >>> }
    >>> >>>
    >>> >>>
    >>> >>>
    >>> >>> BOOL Opal_PCM_G729::ConvertFrame(const BYTE * src, BYTE * dst)
    >>> >>> {
    >>> >>> if (voiceAgeEncoderInUse != this) return FALSE; //
    >>> >>> !!!!!!!!!!!! <<<=== this place
    >>> >>> ……
    >>> >>> }
    >>> >>>
    >>> >>>
    >>> >>>
    >>> >>>
    >>>> >>>> Hi,
    >>>> >>>>
    >>>> >>>> Are you a C++ developer? If so, can you put a break-point in
    >>>> >>>> OpalTranscoder::ConvertFrames() and figure out where exactly it fails?
    >>>> >>>>
    >>>> >>>> Joegen
    >>>> >>>>
    >>>> >>>> H.Kropf wrote:
    >>>> >>>>
    >>>>> >>>>> Hello
    >>>>> >>>>>
    >>>>> >>>>> After a last update of library from CVS (2008-05-20), my softphone
    >>>>> >>>>> (on OSS library) makes only one successful call after start. In
    >>>>> >>>>> next calls there is no voice. In PTRACE-log there are many such
    >>>>> >>>>> records
    >>>>> >>>>>
    >>>>> >>>>> Media Patch:1eb9410 PWL: [CID=0×0000] Patch Media conversion
    >>>>> >>>>> (primary) failed
    >>>>> >>>>> Media Patch:1eb9410 PWL: [CID=0×0000] Patch Media conversion
    >>>>> >>>>> (primary) failed
    >>>>> >>>>> Media Patch:1eb9410 PWL: [CID=0×0000] Patch Media conversion
    >>>>> >>>>> (primary) failed
    >>>>> >>>>> Media Patch:1eb9410 PWL: [CID=0×0000] Patch Media conversion
    >>>>> >>>>> (primary) failed
    >>>>> >>>>>
    >>>>> >>>>>
    >>>>> >>>>> In the previous version (CVS 2008-05-12) this problem did not exist
    >>>>> >>>>>
    >>>>> >>>>>
    -———————————————————————————————————

  • Attachments
    No attachments
    Associations
    Ticket No. Relation Summary Status Action
    #20 Child UA: Opal Call Session fails to destroy codec on disconnect Fixed  
    Activity
    • By joegen on Jun 08, 2008 @ 03:38AM UTC *

      • →  status changed from Accepted to Fixed
    Time Expenditure
    Loading