Xpra: Ticket #1074: switch to opus as preferred audio codec

Now that all platforms use gstreamer 1.x, there is no reason not to use opus if both ends support it. I have used it before and the code tunes it for low latency.

In theory, it will help us with av-sync (#835) because of its much lower latency: bitrate comparison image from wikipedia

And provides the best (TBC?) quality for any bitrate: quality comparison from wikipedia

Tasks:



Tue, 05 Jan 2016 09:02:03 GMT - Antoine Martin: attachment set

bitrate comparison image from wikipedia


Tue, 05 Jan 2016 09:02:25 GMT - Antoine Martin: attachment set

quality comparison from wikipedia


Tue, 05 Jan 2016 09:07:47 GMT - Antoine Martin: description changed


Tue, 05 Jan 2016 23:02:46 GMT - Smo:

Added opus in r11597 builds on my old build machine and the new one.

Rebuilding gst-plugins-bad-1.0 should now include this but I will also make it a dependency so it gets rebuilt.


Wed, 13 Jan 2016 06:26:56 GMT - Antoine Martin: owner changed

(@smo: I assume this is done, re-assigning to afarr)

afarr: testing: latency for av-sync, buffer levels, cpu usage, bandwidth usage


Tue, 26 Jan 2016 01:25:17 GMT - Antoine Martin: owner changed

I believe that the packaging bits are in place as of r11761.

@smo: please ensure the modulesets have an opus dependency somewhere before handing over to afarr.


Sat, 27 Feb 2016 13:29:25 GMT - Antoine Martin: priority changed

Raising.


Sat, 19 Mar 2016 04:22:01 GMT - Antoine Martin: priority changed

Not heard back in months, so I have now made opus the prefered codec in r12170. r12171 also makes it easier to see which codec is in use from session-info.

Raising as blocker for the release.


Thu, 21 Apr 2016 23:32:03 GMT - alas: owner changed

Testing right quick with a 0.17.0 r12401 osx client against a 0.17.0 r12453 fedora 23 server, both seem to indicate opus+gdp first on speaker and microphone codec lists (making them the defaults, if I don't miss my guess)... and sound works well.

I don't see anything in the session-info to make it any easier than before to determine which codec is actually in use, other than assuming that the first listed is the one in use.

Unless I'm missing a detail, I think this is ready to be closed.


Fri, 22 Apr 2016 01:50:45 GMT - Antoine Martin: status changed; resolution set

I don't see anything in the session-info to make it any easier than before to determine which codec is actually in use


You can see which codec is used in the command output or via "xpra info".

I'll try to stick on session info somewhere.


Fri, 22 Apr 2016 14:05:25 GMT - Antoine Martin:

I must be the first one to test opus with Ubuntu Xenial, immediately found a bug, fixed in r12468.


Sun, 12 Jun 2016 04:50:44 GMT - Antoine Martin:

For OSX decoding support, see also: ticket:1204#comment:1


Sat, 23 Jan 2021 05:14:14 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1074