pipewire/spa/plugins/audioconvert
George Kiagiadakis 30576fcff8 audioconvert/fmtconvert: assume F32 on the other port when listing formats
This allows picking F32LE as the default format on links that have
no restriction and it avoids failing negotiation when the restricted
end cannot handle S16/F32/F32P

For instance this pipeline would previously fail:

  audio-dsp mode=merge ! audio-dsp mode=convert ! alsa-sink
old negotiation:     S16LE                   S24_32LE
new negotiation:     F32LE                   S24_32LE

The link between the audio-dsp nodes has no restriction, so previously
it would negotiate S16LE, which would then fail to negotiate with alsa-sink
because fmtconvert does not know how to convert S16LE to S24_32LE directly.

With this change, the middle link negotiates to F32LE, which can be
converted to anything.
2019-07-30 11:11:57 +02:00
..
audioadapter.c node: remove port_alloc_buffers 2019-07-25 14:08:43 +02:00
audioconvert.c node: remove port_alloc_buffers 2019-07-25 14:08:43 +02:00
benchmark-fmt-ops.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
benchmark-resample.c bench: add avx resampler to benchmark 2019-03-28 16:53:26 +01:00
channelmix-ops-c.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
channelmix-ops-sse.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
channelmix-ops.c some printf fixes 2019-06-07 16:37:08 +02:00
channelmix-ops.h make bitfields unsigned 2019-04-10 17:52:42 +02:00
channelmix.c node: remove port_alloc_buffers 2019-07-25 14:08:43 +02:00
fmt-ops-c.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
fmt-ops-sse2.c audioconvert: unroll some loop 2019-04-10 12:53:25 +02:00
fmt-ops-sse41.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
fmt-ops-ssse3.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
fmt-ops.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
fmt-ops.h make bitfields unsigned 2019-04-10 17:52:42 +02:00
fmtconvert.c audioconvert/fmtconvert: assume F32 on the other port when listing formats 2019-07-30 11:11:57 +02:00
merger.c node: remove port_alloc_buffers 2019-07-25 14:08:43 +02:00
meson.build adapter: move to SPA plugin 2019-07-10 18:04:59 +02:00
plugin.c adapter: move to SPA plugin 2019-07-10 18:04:59 +02:00
resample-native-avx.c audioconvert: fix native variable rate resampler 2019-04-30 15:14:05 +02:00
resample-native-c.c audioconvert: compile c version separately 2019-03-28 21:07:53 +01:00
resample-native-impl.h resample: fix phase calculation 2019-07-09 16:54:52 +02:00
resample-native-sse.c audioconvert: add avx optimizations 2019-03-28 16:45:57 +01:00
resample-native-ssse3.c audioconvert: handle more optimizations 2019-03-27 17:58:48 +01:00
resample-native.h resample-native: only do full resample when rate == 1.0 2019-07-15 17:06:07 +02:00
resample-peaks-sse.h resample: Let the resampler object handle all channels 2019-03-22 16:48:35 +01:00
resample-peaks.h small cleanups 2019-07-08 18:23:22 +02:00
resample-speex.h audioconvert: improve resampler 2019-04-23 17:34:27 +02:00
resample.c node: remove port_alloc_buffers 2019-07-25 14:08:43 +02:00
resample.h resample: add functions to calculate in/out length 2019-07-08 18:26:08 +02:00
splitter.c node: remove port_alloc_buffers 2019-07-25 14:08:43 +02:00
test-fmt-ops.c audioconvert: pass state to functions 2019-03-29 17:39:59 +01:00
test-resample.c resample: add functions to calculate in/out length 2019-07-08 18:26:08 +02:00