GSoC: Call for project ideas

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 23 March 2013 11:11, Toby Smithe <tsmithe at ubuntu.com> wrote:
> Hi,
>
> I have a fairly free summer coming up, and thought it would be nice to
> participate in GSoC. For a while I've been interested in PulseAudio, and
> I have an idea for a project. I wonder if you might say whether you
> think it plausible.
>
> I use PulseAudio's native protocol streaming quite a lot, and I've
> noticed that it seems quite rudimentary. I read the code a couple of
> releases back, and it seems just to stream uncompressed PCM over
> TCP. With a wireless connection and multi-channel audio, this quickly
> 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).
>

This would be cool, BUT:
1. There are going to be applications for which lossy transport is unacceptable.
2. Re-encoding through lossy codecs is going to be worse than the
worst of the two quality rates you're using. Probably especially if
different codecs are involved as the different pyschoacoustic models
may be discarding different information. This is actually going to be
one of the most common scenarios if you're using it to play compressed
music, VOIP, or any other source that's already going through a lossy
codec.

Not saying don't do it. #2 can probably be mitigated by using a high
bit-rate (and you'd still get a big bandwidth saving), but it needs to
be easy to avoid this feature. Also worth putting a note on point 2 in
documentation for it.

-- 
imalone
http://ibmalone.blogspot.co.uk


[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux