On Thu, Jun 25, 2020 at 4:39 AM Alex Hermann <alex-li...@wenlex.nl> wrote:
> On woensdag 3 juni 2020 22:17:52 CEST George Joseph wrote: > > Now let's talk about format preference order. > > I haven't seen my use case pass by yet, so I'll throw it in... > > My use case is where Asterisk is functioning as a sort of SBC and needs > to respect both party's codec preference, disallow unwanted codecs and > reduce transcoding when possible. > > So, Alice should get to talk in her preferred codec, and Bob in his. The > "allow" list of Asterisk is only used to filter out unwanted codecs. The > ordering of codecs in the "allow" list is mostly ignored. > > To reduce transcoding The offer to Bob should contain the codecs in the > order Alice offered them. > > That will certainly be supported. > > Asterisk (13) forces the order of the "allow" list on each leg, so I > have patched my Asterisk 13 with PJSIP to do approximately the above. > This behaviour is best put under a config option like > "prefer_remote_codec_order" on the endpoint. > > > My Asterisk uses the following steps: > > 1) Retain the codec order from the offer received from Alice. > 2) Filter out all codecs from the offer that are not in the allow list > for Alice > 3) Merge the list from step 2 with the allow list from Bob, but keep the > ordering from the offer from Alice (prepend Alice's received list to > Bob's and remove duplicates). > 4) Filter list from step 3 with the allow list from Bob. > > The offer to Bob now contains all the codecs in his allow list, with the > common codecs between Alice and Bob at the top of the list in the order > Alice sent them. > So far, so good. > > 5) On receiving the answer from Bob, retain his codec ordering > 6) Answer Bob with the received codec ordering from himself > 7) Use Bob's most preferred codec in his call leg > 8) Answer Alice with the received codec ordering from herself > 9) Use Alice's most preferred codec in her call leg > > 10) When Alice or Bob decides to switch the actual codec in the RTP to > another codec from the negotioted list, adjust the codec on that leg > only (to keep codecs symmetric), but don't change anything on the > bridged leg. > I have to think through this one. > -- > Alex Hermann > > > > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-dev -- George Joseph Asterisk Software Developer direct/fax +1 256 428 6012 Check us out at www.sangoma.com and www.asterisk.org [image: image.png]
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev