On 2015-01-28 23:44, Alexander E. Patrakov wrote:
I confirm that I have received this and intend to review. However, due to some existing non-PulseAudio work with a deadline, I will not be able to review until Feburary 2.

Thanks! No hurry - this is not going into 6.0 anyway and there'll be plenty of time before 7.0.

However, we probably want to ship this as distro patches in Ubuntu, on top of 6.0, but that's another story...

// David


29.01.2015 03:14, David Henningsson wrote:
Hi!

Hui and I have been working on some LFE filter patches lately, and this
is our first draft for review/feedback.

First, I have greedily stolen the math from CRAS, because CRAS is BSD and as I understand we don't have a problem with merging more liberal licenses.

The LFE filter is implemented in the resampler, which means it is done for every sink-input rather than every sink - this might mean some additional
CPU processing if many different streams play back at the same time, but
putting it on the sink side would disable the possibility to mix a 2.0 stream
with a 2.1 stream.

The rewind part is very drafty and untested, and I'm not sure I choose the best design here. But at least this is something that could act as base for
discussion.

Also, while testing we noticed that flat volumes acts a bit weird, making it impossible to have a high subwoofer volume level but at the same time low front speaker volume, but I'm not sure if that's a bug or just the (ahem)
normal weirdness of flat volumes.

David Henningsson (4):
   lfe-filter: Import code from the Chrome OS audio server
   lfe-filter: Enable LFE filter in the resampler
   lfe-filter: Add rewind support
   resampler: Make some basic functions for rewinding

Hui Wang (2):
   daemon-conf: enable the lfe remixing by default
   lfe-filter: change the crossover frequency as a parameter

  LICENSE                                    |   3 +
  man/pulse-daemon.conf.5.xml.in             |   7 +-
  src/Makefile.am                            |   3 +
  src/daemon/daemon-conf.c                   |   5 +-
  src/daemon/daemon-conf.h                   |   1 +
  src/daemon/daemon.conf.in                  |   3 +-
  src/daemon/main.c                          |   1 +
  src/modules/module-virtual-surround-sink.c |   2 +-
  src/pulsecore/core.c                       |   1 +
  src/pulsecore/core.h                       |   1 +
  src/pulsecore/filter/LICENSE.WEBKIT        |  27 +++
src/pulsecore/filter/biquad.c | 368 +++++++++++++++++++++++++++++
  src/pulsecore/filter/biquad.h              |  57 +++++
  src/pulsecore/filter/crossover.c           | 263 +++++++++++++++++++++
  src/pulsecore/filter/crossover.h           |  76 ++++++
  src/pulsecore/filter/lfe-filter.c          | 187 +++++++++++++++
  src/pulsecore/filter/lfe-filter.h          |  39 +++
  src/pulsecore/resampler.c                  |  49 +++-
  src/pulsecore/resampler.h                  |   7 +
  src/pulsecore/sink-input.c                 |   6 +-
  src/pulsecore/source-output.c              |   4 +-
  src/tests/remix-test.c                     |   3 +-
  src/tests/resampler-test.c                 |   7 +-
  23 files changed, 1106 insertions(+), 14 deletions(-)
  create mode 100644 src/pulsecore/filter/LICENSE.WEBKIT
  create mode 100644 src/pulsecore/filter/biquad.c
  create mode 100644 src/pulsecore/filter/biquad.h
  create mode 100644 src/pulsecore/filter/crossover.c
  create mode 100644 src/pulsecore/filter/crossover.h
  create mode 100644 src/pulsecore/filter/lfe-filter.c
  create mode 100644 src/pulsecore/filter/lfe-filter.h



_______________________________________________
pulseaudio-discuss mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to