]> git.sesse.net Git - nageru/blobdiff - nageru/resampling_queue.cpp
Fix a Clang 19 warning.
[nageru] / nageru / resampling_queue.cpp
index 711c1c5239f44aad7df9000711556bc2ff39c2d6..94a8e16161c6da646aa6281c636ab2873efe24cb 100644 (file)
 #include "resampling_queue.h"
 
 #include <assert.h>
+#include <chrono>
+#include <math.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <string>
+#include <sys/types.h>
 #include <zita-resampler/vresampler.h>
 #include <algorithm>
-#include <cmath>
+
+#include "shared/shared_defs.h"
 
 using namespace std;
 using namespace std::chrono;
 
-ResamplingQueue::ResamplingQueue(DeviceSpec device_spec, unsigned freq_in, unsigned freq_out, unsigned num_channels, double expected_delay_seconds)
-       : device_spec(device_spec), freq_in(freq_in), freq_out(freq_out), num_channels(num_channels),
+ResamplingQueue::ResamplingQueue(const std::string &debug_description, unsigned freq_in, unsigned freq_out, unsigned num_channels, double expected_delay_seconds)
+       : debug_description(debug_description), freq_in(freq_in), freq_out(freq_out), num_channels(num_channels),
          current_estimated_freq_in(freq_in),
          ratio(double(freq_out) / double(freq_in)), expected_delay(expected_delay_seconds * OUTPUT_FREQUENCY)
 {
@@ -39,8 +44,8 @@ ResamplingQueue::ResamplingQueue(DeviceSpec device_spec, unsigned freq_in, unsig
 
        // Prime the resampler so there's no more delay.
        vresampler.inp_count = vresampler.inpsize() / 2 - 1;
-        vresampler.out_count = 1048576;
-        vresampler.process ();
+       vresampler.out_count = 1048576;
+       vresampler.process();
 }
 
 void ResamplingQueue::add_input_samples(steady_clock::time_point ts, const float *samples, ssize_t num_samples, ResamplingQueue::RateAdjustmentPolicy rate_adjustment_policy)
@@ -62,7 +67,7 @@ void ResamplingQueue::add_input_samples(steady_clock::time_point ts, const float
                current_estimated_freq_in = (a1.input_samples_received - a0.input_samples_received) / duration<double>(a1.ts - a0.ts).count();
                if (!(current_estimated_freq_in >= 0.0)) {
                        fprintf(stderr, "%s: PANIC: Input audio clock going backwards, ignoring.\n",
-                               spec_to_string(device_spec).c_str());
+                               debug_description.c_str());
                        current_estimated_freq_in = freq_in;
                }
 
@@ -170,7 +175,7 @@ bool ResamplingQueue::get_output_samples(steady_clock::time_point ts, float *sam
                        // This should never happen unless delay is set way too low,
                        // or we're dropping a lot of data.
                        fprintf(stderr, "%s: PANIC: Out of input samples to resample, still need %d output samples! (correction factor is %f)\n",
-                               spec_to_string(device_spec).c_str(), int(vresampler.out_count), rcorr);
+                               debug_description.c_str(), int(vresampler.out_count), rcorr);
                        memset(vresampler.out_data, 0, vresampler.out_count * num_channels * sizeof(float));
 
                        // Reset the loop filter.