Skip to content
Snippets Groups Projects
  • Richard Mudgett's avatar
    f49bef08
    rtp_engine.c: Fix performance issue with several channel drivers that use RTP. · f49bef08
    Richard Mudgett authored
    ast_rtp_codecs_get_payload() gets called once or twice for every received
    RTP frame so it would be nice to not allocate an ao2 object to then have
    it destroyed shortly thereafter.  The ao2 object gets allocated only if
    the payload type is not set by the channel driver as a negotiated value.
    The issue affects chan_skinny, chan_unistim, chan_rtp, and chan_ooh323.
    
    * Made static_RTP_PT[] an array of ao2 objects that
    ast_rtp_codecs_get_payload() can return instead of an array of structs
    that must be copied into a created ao2 object.
    
    ASTERISK-25296 #close
    Reported by: Richard Mudgett
    
    Change-Id: Icb6de5cd90bfae07d44403a1352963db9109dac0
    f49bef08
    History
    rtp_engine.c: Fix performance issue with several channel drivers that use RTP.
    Richard Mudgett authored
    ast_rtp_codecs_get_payload() gets called once or twice for every received
    RTP frame so it would be nice to not allocate an ao2 object to then have
    it destroyed shortly thereafter.  The ao2 object gets allocated only if
    the payload type is not set by the channel driver as a negotiated value.
    The issue affects chan_skinny, chan_unistim, chan_rtp, and chan_ooh323.
    
    * Made static_RTP_PT[] an array of ao2 objects that
    ast_rtp_codecs_get_payload() can return instead of an array of structs
    that must be copied into a created ao2 object.
    
    ASTERISK-25296 #close
    Reported by: Richard Mudgett
    
    Change-Id: Icb6de5cd90bfae07d44403a1352963db9109dac0