[pulseaudio-discuss] [PATCH 3/4] module-remap-sink: Add resample_method argument
David Henningsson
david.henningsson at canonical.com
Mon Aug 5 05:41:05 PDT 2013
On 07/18/2013 09:22 AM, Peter Meerwald wrote:
> From: Peter Meerwald <p.meerwald at bct-electronic.com>
I'm not sure why you want to add this to module-remap-* in particular,
and no other sinks/sources - could you elaborate, and perhaps do so in
the commit message too?
>
> Signed-off-by: Peter Meerwald <p.meerwald at bct-electronic.com>
> ---
> src/modules/module-remap-sink.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/src/modules/module-remap-sink.c b/src/modules/module-remap-sink.c
> index 67e8da8..274f9f2 100644
> --- a/src/modules/module-remap-sink.c
> +++ b/src/modules/module-remap-sink.c
> @@ -48,6 +48,7 @@ PA_MODULE_USAGE(
> "rate=<sample rate> "
> "channels=<number of channels> "
> "channel_map=<channel map> "
> + "resample_method=<resampler> "
> "remix=<remix channels?>");
>
> struct userdata {
> @@ -68,6 +69,7 @@ static const char* const valid_modargs[] = {
> "rate",
> "channels",
> "channel_map",
> + "resample_method",
> "remix",
> NULL
> };
> @@ -318,6 +320,7 @@ static void sink_input_moving_cb(pa_sink_input *i, pa_sink *dest) {
> int pa__init(pa_module*m) {
> struct userdata *u;
> pa_sample_spec ss;
> + pa_resample_method_t resample_method = PA_RESAMPLER_INVALID;
> pa_channel_map sink_map, stream_map;
> pa_modargs *ma;
> pa_sink *master;
> @@ -363,6 +366,11 @@ int pa__init(pa_module*m) {
> goto fail;
> }
>
> + if (pa_modargs_get_resample_method(ma, &resample_method) < 0) {
> + pa_log("Invalid resampling method");
> + goto fail;
> + }
> +
> u = pa_xnew0(struct userdata, 1);
> u->module = m;
> m->userdata = u;
> @@ -418,6 +426,7 @@ int pa__init(pa_module*m) {
> pa_sink_input_new_data_set_sample_spec(&sink_input_data, &ss);
> pa_sink_input_new_data_set_channel_map(&sink_input_data, &stream_map);
> sink_input_data.flags = (remix ? 0 : PA_SINK_INPUT_NO_REMIX);
> + sink_input_data.resample_method = resample_method;
>
> pa_sink_input_new(&u->sink_input, m->core, &sink_input_data);
> pa_sink_input_new_data_done(&sink_input_data);
>
--
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic
More information about the pulseaudio-discuss
mailing list