]> git.sesse.net Git - nageru/blobdiff - audio_mixer.cpp
Support other audio sample rates than 48000 Hz from bmusb.
[nageru] / audio_mixer.cpp
index 63758f9949d4f0b7c92008a179ec0d081b2329f6..6a08f2167d62a434a1b31a7af160ff61a6378b3d 100644 (file)
@@ -274,6 +274,12 @@ bool AudioMixer::add_audio(DeviceSpec device_spec, const uint8_t *data, unsigned
                }
        }
 
+       // If we changed frequency since last frame, we'll need to reset the resampler.
+       if (audio_format.sample_rate != device->capture_frequency) {
+               device->capture_frequency = audio_format.sample_rate;
+               reset_resampler_mutex_held(device_spec);
+       }
+
        // Now add it.
        device->resampling_queue->add_input_samples(frame_time, audio.get(), num_samples, ResamplingQueue::ADJUST_RATE);
        return true;