[Freeswitch-users] OPUS Codec

Giacomo Vacca giacomo.vacca at gmail.com
Wed May 3 10:59:20 MSD 2017


Instead of trying to go HD with Opus, when you know there will be
transcoding with G.711, you may consider using Opus at 8 KHz (assuming your
devices can). This is supported by FS and in particular advisable if the
clients are mobile devices. It will also reduce the bandwidth usage.
With that packet loss, FEC becomes crucial.

We documented various considerations in this area from a previous project:
https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+And+The+Opus+Audio+Codec

For what concerns the estimated capacity, I have the same feeling as Colin
above and you'll have to do your load testing.

Best Regards,
Giacomo



On 1 May 2017 at 23:39, Colin Morelli <colin.morelli at gmail.com> wrote:

> I agree, and was wrong before to suggest that there's no real advantage.
> FEC can be helpful to combat packet loss on unpredictable networks.
> Although again, I'll stand by my statement that consistent 10% packet loss
> would be pretty significant on any modern internet connection. Even
> consistent 2% packet loss would be cause for some concern. Intermittent
> packet loss issues, sure; but sustained 10% packet loss would be fairly
> alarming to hear about on any large scale. At that level, it's likely the
> user has problems with a number of services (even TCP ones, as they're
> likely to be experiencing slower speeds). On a consumer internet
> connection, your more frequent issues are almost certainly going to be
> latency and jitter, and generally your first line of defense (at least for
> jitter) would be the endpoints' jitter buffers. Although FEC can also help
> if you have to start dropping packets from the jitter buffer.
>
> Again, I'm not trying to claim it can't or won't happen. It can, and opus
> will help when it does. I'm just saying it probably makes sense to actually
> confirm this is the issue (if you're currently experiencing problems).
> Maybe my experiences have been different.
>
> *Are you saying transcoding from OPUS client to G711 is going to sound
> worse than just talking G711 all the way through? *
>
> Yes. Both codecs are lossy. Any time you encode to a lossy codec, you lose
> data. In this case, you're doing it twice. The originating device will be
> encoding raw audio to G.711, and FS will decode the G.711 and re-encode as
> opus. The degradation on the transcoding won't be huge, and it many cases
> it may not even really be noticeable (you'd have to test this in your own
> setup to see), but it will exist.
>
> I won't try to answer the question of how many transcoding channels any
> particular server can handle though. Perhaps the FS guys will have a decent
> answer, but I think they'll probably give similar feedback - you just need
> to test and find out. There are so many factors that come into play with
> performance that it becomes painfully difficult to try to guess.
>
> Best,
> Colin
>
> On Mon, May 1, 2017 at 5:21 PM, Colton Conor <colton.conor at gmail.com>
> wrote:
>
>> I am just judging the 30 percent packet loss with FEC. Example are on the
>> OPUS website https://opus-codec.org/examples/ Sounds pretty good to me.
>> I would be terrified to know what G711 sounds like without FEC having evien
>> 10 percent packet loss.
>>
>> I think there are many cases where one leg of the audio is uncontrolled,
>> and the other leg of the audio via G711 is stable. For example, a
>> freeswitch server sitting in a data center with redundant gigabit internet
>> connections connected to a origination/termination carrier via G711.
>>
>> Then clients using OTT internet connections like their home cable
>> connection, LTE, or wifi. The clients are the leg I want in OPUS to
>> communicate back to the freeswitch server. Yes, the clients are able to
>> speak G711 too, but I want OPUS for the FEC and bandwidth control.
>>
>> Are you saying transcoding from OPUS client to G711 is going to sound
>> worse than just talking G711 all the way through?
>>
>> So what can a new Dell server with most recent gen intel xeon processors
>> handle as far as transcoding goes?
>>
>> On Mon, May 1, 2017 at 3:19 PM, Colin Morelli <colin.morelli at gmail.com>
>> wrote:
>>
>>> That's fair, if the primary focus of using the codec is purely to
>>> overcome a packet loss issue; however, consistent 30% packet loss to your
>>> endpoints seems like a fairly extreme scenario.
>>>
>>> I suppose if you anticipate a high enough level of packet loss on the
>>> average call to justify the slightly degraded audio quality that will be
>>> introduced by transcoding, then it may be worthwhile.
>>>
>>> I'll stand by the rest of my points though!
>>>
>>> Best,
>>> Colin
>>>
>>> On Mon, May 1, 2017 at 4:13 PM, Michael Jerris <mike at jerris.com> wrote:
>>>
>>>> I disagree… plenty of situations where you have a known quality leg to
>>>> a provider over g711, and a uncontrolled internet leg to customer that you
>>>> want to use opus/fec for.
>>>>
>>>> On May 1, 2017, at 4:07 PM, Colin Morelli <colin.morelli at gmail.com>
>>>> wrote:
>>>>
>>>> Raul, I'm sure the OP was referring to 30% packet loss with FEC, which
>>>> opus can turn back into a usable audio stream. You'll absolutely notice
>>>> artifacts in the audio, and you'd clearly identify something is wrong, but
>>>> it's a heck of a lot better than 30% packet loss without FEC.
>>>>
>>>> Colton,
>>>>
>>>> Freeswitch supports opus, yes. I'd be curious to know why you want to
>>>> transcode between opus and G.711, unless your endpoints don't support G.711
>>>> though. Yes, FEC can help you with packet loss on one end, but if your
>>>> packet loss is on the G.711 end, then you're SOL anyway, so it seems
>>>> pointless to do this unless you can use opus all the way though.
>>>>
>>>> As to how it will sound if doing the conversion, well, you're
>>>> transcoding from one lossy codec to another lossy codec. The end result
>>>> will be audio that will not sound as good as if it were just encoded in
>>>> G.711 to begin with. Remember, the nature of lossy codecs is that they're,
>>>> well, lossy. You can't make a G.711 stream sound better by re-encoding it
>>>> to opus. Once it's encoded in G.711, that information is lost.
>>>>
>>>> As for CPU usage, opus is not particularly cheap. Transcoding +
>>>> resampling (if required), will considerably limit the number of concurrent
>>>> calls your FS instance can handle. Actual results are going to depend on a
>>>> number of factors that make it infeasible to talk about it. But again, you
>>>> probably don't want to be transcoding between these two codecs unless you
>>>> absolutely have two (i.e. you can't get the two endpoints to otherwise
>>>> agree on a codec). You're not going to gain any real advantage from doing
>>>> this.
>>>>
>>>> Best,
>>>> Colin
>>>>
>>>> On Mon, May 1, 2017 at 3:54 PM, Raúl Alexis Betancor Santana <
>>>> rbetancor at gmail.com> wrote:
>>>>
>>>>> 30% of packet loss ... are you mad? ... there is no way any codec
>>>>> could recover from that. Most of codecs, you will notice whenever you have
>>>>> more than 1-3% packet loss ... 30% ? ... really? ... should sound like and
>>>>> old synthetizer
>>>>>
>>>>> 2017-05-01 20:03 GMT+01:00 Colton Conor <colton.conor at gmail.com>:
>>>>>
>>>>>> Does freeswitch support transcoding from OPUS to G711? How well does
>>>>>> this work in theory? Having full HD come in via OPUS from the phone, and
>>>>>> then transcoding to crappy G711. Does it sound funny?
>>>>>>
>>>>>> We are thinking that OPUS has superior audio quality, and can
>>>>>> withstand up to 30 percent packet loss without any audio distorition.
>>>>>> However, I would say the majority of our users calls as still to the PSTN
>>>>>> which only speaks G711.
>>>>>>
>>>>>> How much processing power would it take to transcode from OPUS to
>>>>>> G711?
>>>>>>
>>>>>> How well is the OPUS codec implemented on newer IP phones?
>>>>>>
>>>>>> I hear the Yealink supports OPUS with their new S line of phones, but
>>>>>> I also heard they pulled support for it?
>>>>>>
>>>>>> Polycom seems to only support it on the VVX 500 and VVX 600, but you
>>>>>> have to disable video according to the 5.4 release notes. OPUS must be
>>>>>> processor intensive I assume if it can't run OPUS and video at the same
>>>>>> time. Have any idea if the newer VVX, like the 411, 501, and 601 have this
>>>>>> same limitation? I know they have faster processors and ram.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _________________________________________________________________________
>>>>>>
>>>>>>
>>>>>> Professional FreeSWITCH Consulting Services:
>>>>>>
>>>>>>
>>>>>> consulting at freeswitch.org
>>>>>>
>>>>>>
>>>>>> http://www.freeswitchsolutions.com
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Official FreeSWITCH Sites
>>>>>>
>>>>>>
>>>>>> http://www.freeswitch.org
>>>>>>
>>>>>>
>>>>>> http://confluence.freeswitch.org
>>>>>>
>>>>>>
>>>>>> http://www.cluecon.com
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> FreeSWITCH-users mailing list
>>>>>>
>>>>>>
>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>
>>>>>>
>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>
>>>>>>
>>>>>> UNSUBSCRIBE:
>>>>>> http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>>>>
>>>>>>
>>>>>> http://www.freeswitch.org
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _________________________________________________________________________
>>>>>
>>>>>
>>>>> Professional FreeSWITCH Consulting Services:
>>>>>
>>>>>
>>>>> consulting at freeswitch.org
>>>>>
>>>>>
>>>>> http://www.freeswitchsolutions.com
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Official FreeSWITCH Sites
>>>>>
>>>>>
>>>>> http://www.freeswitch.org
>>>>>
>>>>>
>>>>> http://confluence.freeswitch.org
>>>>>
>>>>>
>>>>> http://www.cluecon.com
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> FreeSWITCH-users mailing list
>>>>>
>>>>>
>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>
>>>>>
>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>
>>>>>
>>>>> UNSUBSCRIBE:
>>>>> http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>>>
>>>>>
>>>>> http://www.freeswitch.org
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _________________________________________________________________________
>>>> Professional FreeSWITCH Consulting Services:
>>>> consulting at freeswitch.org
>>>> http://www.freeswitchsolutions.com
>>>>
>>>> Official FreeSWITCH Sites
>>>> http://www.freeswitch.org
>>>> http://confluence.freeswitch.org
>>>> http://www.cluecon.com
>>>>
>>>> FreeSWITCH-users mailing list
>>>> FreeSWITCH-users at lists.freeswitch.org
>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>> UNSUBSCRIBE:
>>>> http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>> http://www.freeswitch.org
>>>>
>>>>
>>>>
>>>>
>>>> _________________________________________________________________________
>>>>
>>>>
>>>> Professional FreeSWITCH Consulting Services:
>>>>
>>>>
>>>> consulting at freeswitch.org
>>>>
>>>>
>>>> http://www.freeswitchsolutions.com
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Official FreeSWITCH Sites
>>>>
>>>>
>>>> http://www.freeswitch.org
>>>>
>>>>
>>>> http://confluence.freeswitch.org
>>>>
>>>>
>>>> http://www.cluecon.com
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> FreeSWITCH-users mailing list
>>>>
>>>>
>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>
>>>>
>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>
>>>>
>>>> UNSUBSCRIBE:
>>>> http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>>
>>>>
>>>> http://www.freeswitch.org
>>>>
>>>
>>>
>>>
>>>
>>> _________________________________________________________________________
>>>
>>>
>>> Professional FreeSWITCH Consulting Services:
>>>
>>>
>>> consulting at freeswitch.org
>>>
>>>
>>> http://www.freeswitchsolutions.com
>>>
>>>
>>>
>>>
>>>
>>> Official FreeSWITCH Sites
>>>
>>>
>>> http://www.freeswitch.org
>>>
>>>
>>> http://confluence.freeswitch.org
>>>
>>>
>>> http://www.cluecon.com
>>>
>>>
>>>
>>>
>>>
>>> FreeSWITCH-users mailing list
>>>
>>>
>>> FreeSWITCH-users at lists.freeswitch.org
>>>
>>>
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>
>>>
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>
>>>
>>> http://www.freeswitch.org
>>>
>>
>>
>>
>>
>> _________________________________________________________________________
>>
>>
>> Professional FreeSWITCH Consulting Services:
>>
>>
>> consulting at freeswitch.org
>>
>>
>> http://www.freeswitchsolutions.com
>>
>>
>>
>>
>>
>> Official FreeSWITCH Sites
>>
>>
>> http://www.freeswitch.org
>>
>>
>> http://confluence.freeswitch.org
>>
>>
>> http://www.cluecon.com
>>
>>
>>
>>
>>
>> FreeSWITCH-users mailing list
>>
>>
>> FreeSWITCH-users at lists.freeswitch.org
>>
>>
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>
>>
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>
>>
>> http://www.freeswitch.org
>>
>
>
>
>
> _________________________________________________________________________
>
>
> Professional FreeSWITCH Consulting Services:
>
>
> consulting at freeswitch.org
>
>
> http://www.freeswitchsolutions.com
>
>
>
>
>
> Official FreeSWITCH Sites
>
>
> http://www.freeswitch.org
>
>
> http://confluence.freeswitch.org
>
>
> http://www.cluecon.com
>
>
>
>
>
> FreeSWITCH-users mailing list
>
>
> FreeSWITCH-users at lists.freeswitch.org
>
>
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>
>
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>
>
> http://www.freeswitch.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20170503/f6de3065/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list