[pulseaudio-discuss] GSoC: Call for project ideas

David Henningsson david.henningsson at canonical.com
Mon Mar 25 02:29:39 PDT 2013

On 03/25/2013 08:57 AM, Ian Malone wrote:
> On 25 March 2013 06:13, David Henningsson
> <david.henningsson at canonical.com> wrote:
>> On 03/23/2013 12:11 PM, Toby Smithe wrote:
>>> becomes impractical, with drops and latency problems. A while ago, I
>>> looked into implementing Opus compression for the network streams, but
>>> never had a chance. I think Opus would make the ideal codec because it
>>> is very flexible, recently ratified as an Internet standard, and can be
>>> remarkably lightweight (according to the official benchmarks).
> By the way, aside from the concerns about using a lossy codec in my
> other email, Opus would be exactly the right choice, though you
> haven't pointed out a major reason: it's explicitly designed for low
> latency.
>>> In doing these network audio, I might also be able to move on to
>>> auxiliary tasks like improving the GUI tools for this use-case.
>>> Do you think this might work?
>> I think it sounds interesting. Networked audio (and its latency) is indeed
>> something people complain about every now and then.
>> But Opus is just a codec, right? Or does it also specify how it is actually
>> transferred over the network (UDP/TCP etc)?
>> Are you planning to extend our RTP module with Opus support?
>> In short; Opus might be one piece of the puzzle to get reliable low-latency
>> streaming, but could you also outline how you think about the network stack
>> part?
> There is a RTP transport defined for Opus,
> http://tools.ietf.org/html/draft-spittka-payload-rtp-opus though you
> don't have to use it.

Ok, interesting.

My question to Toby is really how this is integrating with PulseAudio 
and the network stack.

Today we have several methods of talking between servers, the most 
common one being the native protocol, which is TCP based. So the 
question is really if Toby is trying to improve the native protocol with 
the Opus codec, and how that will be accomplished?

Or if the plan is to start with the existing RTP module (which is 
separate from the native protocol) and implement Opus support there?

Or to start something completely separate?

David Henningsson, Canonical Ltd.

More information about the pulseaudio-discuss mailing list