mvp: moved code to mvp_find_sample_rate()
Moved the table lookup code to a separate function.
This commit is contained in:
parent
b4c65cac8c
commit
883e31d55b
@ -83,6 +83,21 @@ static const unsigned mvp_sample_rates[][3] = {
|
|||||||
{15, 96000, 48000}
|
{15, 96000, 48000}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Translate a sample rate to a MVP sample rate.
|
||||||
|
*
|
||||||
|
* @param sample_rate the sample rate in Hz
|
||||||
|
*/
|
||||||
|
static unsigned
|
||||||
|
mvp_find_sample_rate(unsigned sample_rate)
|
||||||
|
{
|
||||||
|
for (unsigned i = 0; i < G_N_ELEMENTS(mvp_sample_rates); ++i)
|
||||||
|
if (mvp_sample_rates[i][1] == sample_rate)
|
||||||
|
return mvp_sample_rates[i][0];
|
||||||
|
|
||||||
|
return (unsigned)-1;
|
||||||
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
mvp_output_test_default_device(void)
|
mvp_output_test_default_device(void)
|
||||||
{
|
{
|
||||||
@ -121,7 +136,6 @@ mvp_output_finish(void *data)
|
|||||||
static bool
|
static bool
|
||||||
mvp_set_pcm_params(struct mvp_data *md, struct audio_format *audio_format)
|
mvp_set_pcm_params(struct mvp_data *md, struct audio_format *audio_format)
|
||||||
{
|
{
|
||||||
unsigned iloop;
|
|
||||||
unsigned mix[5];
|
unsigned mix[5];
|
||||||
|
|
||||||
switch (audio_format->channels) {
|
switch (audio_format->channels) {
|
||||||
@ -165,14 +179,8 @@ mvp_set_pcm_params(struct mvp_data *md, struct audio_format *audio_format)
|
|||||||
/*
|
/*
|
||||||
* if there is an exact match for the frequency, use it.
|
* if there is an exact match for the frequency, use it.
|
||||||
*/
|
*/
|
||||||
for (iloop = 0; iloop < G_N_ELEMENTS(mvp_sample_rates); iloop++) {
|
mix[2] = mvp_find_sample_rate(audio_format->sample_rate);
|
||||||
if (audio_format->sample_rate == mvp_sample_rates[iloop][1]) {
|
if (mix[2] == (unsigned)-1) {
|
||||||
mix[2] = mvp_sample_rates[iloop][0];
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (iloop >= G_N_ELEMENTS(mvp_sample_rates)) {
|
|
||||||
g_warning("Can not find suitable output frequency for %u\n",
|
g_warning("Can not find suitable output frequency for %u\n",
|
||||||
audio_format->sample_rate);
|
audio_format->sample_rate);
|
||||||
return false;
|
return false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user