pulseaudio 9.0 / support of new resampling method soxr

Asked by Neo

Still not working on 16.10 / pulseaudio 9.0
Is it plan to suppoty soxr library ?
The sonic performance and CPU usage is better than the speex method.

The Ubuntu documentation is refering to soxr resampling methodology which lead if it used to low quality foldback resampling.

http://manpages.ubuntu.com/manpages/zesty/man5/pulse-daemon.conf.5.html

resample-method= The resampling algorithm to use. Use one of src-sinc-
       best-quality, src-sinc-medium-quality, src-sinc-fastest, src-zero-
       order-hold, src-linear, trivial, speex-float-N, speex-fixed-N, ffmpeg,
       soxr-mq, soxr-hq, soxr-vhq.

Thanks in advance

ubuntu 16.04 beta
64b

In deamon.conf puts the line :
resample-method = soxr-hq

default-sample-format = s32le
default-sample-rate = 96000
alternate-sample-rate = 44100

restart pulseaudio :
pkill pulse audio && pulseaudio -vvvv

play a track on VLC with a sampling rate of 88.2Khz

D: [pulseaudio] sink-input.c: Negotiated format: pcm, format.sample_format = "\"float32le\"" format.rate = "88200" format.channels = "2" format.channel_map = "\"front-left,front-right\""
I: [pulseaudio] sink-input.c: Trying to change sample rate
I: [pulseaudio] module-stream-restore.c: Restoring volume for sink input sink-input-by-application-name:ALSA plug-in [vlc].
I: [pulseaudio] module-stream-restore.c: Restoring mute state for sink input sink-input-by-application-name:ALSA plug-in [vlc].
W: [pulseaudio] resampler.c: Support for resampler 'soxr-hq' not compiled in, reverting to 'auto'.
D: [pulseaudio] resampler.c: Resampler:
D: [pulseaudio] resampler.c: rate 88200 -> 44100 (method speex-float-1)
D: [pulseaudio] resampler.c: format float32le -> s32le (intermediate float32le)
D: [pulseaudio] resampler.c: channels 2 -> 2 (resampling 2)
I: [pulseaudio] speex.c: Choosing speex quality setting 1.

how to get the support of the new sorx sampling method ?
Thanks in advance

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu pulseaudio Edit question
Assignee:
No assignee Edit question
Solved by:
Lastique
Solved:
Last query:
Last reply:
Revision history for this message
actionparsnip (andrew-woodhead666) said :
#1

Have you tried MPlayer?

Revision history for this message
Neo (rdstmc) said :
#2

Mplayer playing a 48K sampling rate MP3 320K (mplayer seems to be not able to decode flac...)

Mplayer log :
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
AUDIO: 48000 Hz, 2 ch, s16le, 320.0 kbit/20.83% (ratio: 40000->192000)
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==========================================================================
AO: [pulse] 48000Hz 2ch s16le (2 bytes per sample)

pulseaudio log
D: [pulseaudio] sink-input.c: Negotiated format: pcm, format.sample_format = "\"s16le\"" format.rate = "48000" format.channels = "2" format.channel_map = "\"front-left,front-right\""
I: [pulseaudio] sink-input.c: Trying to change sample rate
I: [pulseaudio] module-stream-restore.c: Restoring volume for sink input sink-input-by-application-name:MPlayer.
W: [pulseaudio] resampler.c: Support for resampler 'soxr-hq' not compiled in, reverting to 'auto'.
D: [pulseaudio] resampler.c: Resampler:
D: [pulseaudio] resampler.c: rate 48000 -> 96000 (method speex-float-1)
D: [pulseaudio] resampler.c: format s16le -> s32le (intermediate float32le)
D: [pulseaudio] resampler.c: channels 2 -> 2 (resampling 2)
I: [pulseaudio] speex.c: Choosing speex quality setting 1.

The problem is not coming from the source stream, but from not supported resampling method soxr by pulseaudio.
This new method has been introduced in pulseaudio 7.0.

Revision history for this message
Launchpad Janitor (janitor) said :
#3

This question was expired because it remained in the 'Open' state without activity for the last 15 days.

Revision history for this message
Neo (rdstmc) said :
#4

Still present. Compilation problem ?
W: [pulseaudio] resampler.c: Support for resampler 'soxr-hq' not compiled in, reverting to 'auto'.
D: [pulseaudio] resampler.c: Resampler:
D: [pulseaudio] resampler.c: rate 48000 -> 96000 (method speex-float-1)

Revision history for this message
Best Lastique (andysem) said :
#5

The current official PulseAudio packages in Ubuntu are built without support for libsoxr. You'll have to build PulseAudio yourself to use the new resamplers.

Revision history for this message
Neo (rdstmc) said :
#6

Thanks Lastique, that solved my question.