1 #ifndef _DELAY_ANALYZER_H
2 #define _DELAY_ANALYZER_H 1
9 #include "audio_clip.h"
10 #include "delay_analyzer_interface.h"
11 #include "input_mapping.h"
24 class DelayAnalyzer : public QMainWindow, public DelayAnalyzerInterface
32 bool is_grabbing() const override { return grabbing; }
33 void add_audio(DeviceSpec device_spec, const uint8_t *data, unsigned num_samples, bmusb::AudioFormat audio_format, std::chrono::steady_clock::time_point frame_time) override;
36 void grab_timed_out();
37 void estimate_delay();
39 Ui::DelayAnalyzer *ui;
40 AudioClip clip1, clip2;
43 void card_selected(QComboBox *card_combo, int selected_index);
44 void channel_selected(QComboBox *channel_combo);
45 DeviceSpec get_selected_device(QComboBox *card_combo);
47 std::atomic<bool> grabbing{false};
48 std::map<DeviceSpec, DeviceInfo> devices;
52 #endif // !defined(_DELAY_ANALYZER_H)