mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-12-18 08:56:40 -05:00
add resample_method option module-combine
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@215 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
parent
08953564bb
commit
61ec86c90f
14 changed files with 59 additions and 33 deletions
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
#define CONVERT_BUFFER_LENGTH 4096
|
||||
|
||||
struct pa_sink_input* pa_sink_input_new(struct pa_sink *s, const char *name, const struct pa_sample_spec *spec, int variable_rate) {
|
||||
struct pa_sink_input* pa_sink_input_new(struct pa_sink *s, const char *name, const struct pa_sample_spec *spec, int variable_rate, int resample_method) {
|
||||
struct pa_sink_input *i;
|
||||
struct pa_resampler *resampler = NULL;
|
||||
int r;
|
||||
|
|
@ -47,9 +47,12 @@ struct pa_sink_input* pa_sink_input_new(struct pa_sink *s, const char *name, con
|
|||
pa_log(__FILE__": Failed to create sink input: too many inputs per sink.\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (resample_method < 0)
|
||||
resample_method = s->core->resample_method;
|
||||
|
||||
if (variable_rate || !pa_sample_spec_equal(spec, &s->sample_spec))
|
||||
if (!(resampler = pa_resampler_new(spec, &s->sample_spec, s->core->memblock_stat, s->core->resample_method)))
|
||||
if (!(resampler = pa_resampler_new(spec, &s->sample_spec, s->core->memblock_stat, resample_method)))
|
||||
return NULL;
|
||||
|
||||
i = pa_xmalloc(sizeof(struct pa_sink_input));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue