@samitouri / QOSamiQemu / commits / 52ef022ae8

audio: remove obsolete/obscure functions

AUD_init_time_stamp_{in,out} and AUD_get_elapsed_usec_{in,out} are only used by the adlib device. The result isn't actually being used since ADLIB_KILL_TIMERS was set some 20y ago. Let's drop this dead code now. Drop QEMUAudioTimeStamp as well as reported by Akihiko Odaki. Reviewed-by: Mark Cave-Ayland <mark.caveayland@nutanix.com> Reviewed-by: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>

Marc-André Lureau committed Nov 10, 2025 at 15:13 UTC 52ef022ae83cccc7b1faba25828d7f696e137ec7
4 files changed +1 -62
audio/audio_template.h
-34
@@ -569,40 +569,6 @@ bool glue(AUD_is_active_, TYPE)(SW *sw)
569 return sw ? sw->active : 0;
570 }
571
572 -void glue (AUD_init_time_stamp_, TYPE) (SW *sw, QEMUAudioTimeStamp *ts)
573 -{
574 - if (!sw) {
575 - return;
576 - }
577 -
578 - ts->old_ts = sw->hw->ts_helper;
579 -}
580 -
581 -uint64_t glue (AUD_get_elapsed_usec_, TYPE) (SW *sw, QEMUAudioTimeStamp *ts)
582 -{
583 - uint64_t delta, cur_ts, old_ts;
584 -
585 - if (!sw) {
586 - return 0;
587 - }
588 -
589 - cur_ts = sw->hw->ts_helper;
590 - old_ts = ts->old_ts;
591 - /* dolog ("cur %" PRId64 " old %" PRId64 "\n", cur_ts, old_ts); */
592 -
593 - if (cur_ts >= old_ts) {
594 - delta = cur_ts - old_ts;
595 - } else {
596 - delta = UINT64_MAX - old_ts + cur_ts;
597 - }
598 -
599 - if (!delta) {
600 - return 0;
601 - }
602 -
603 - return muldiv64 (delta, sw->hw->info.freq, 1000000);
604 -}
605 -
572 #undef TYPE
573 #undef HW
574 #undef SW
hw/audio/adlib.c
+1 -17
@@ -34,8 +34,6 @@
34
35 #define DEBUG 0
36
37 -#define ADLIB_KILL_TIMERS 1
38 -
37 #define ADLIB_DESC "Yamaha YM3812 (OPL2)"
38
39 #if DEBUG
@@ -71,7 +69,6 @@ struct AdlibState {
69 uint64_t dexp[2];
70 SWVoiceOut *voice;
71 int left, pos, samples;
74 - QEMUAudioTimeStamp ats;
72 FM_OPL *opl;
73 PortioList port_list;
74 };
@@ -88,19 +85,7 @@ static void adlib_kill_timers (AdlibState *s)
85
86 for (i = 0; i < 2; ++i) {
87 if (s->ticking[i]) {
91 - uint64_t delta;
92 -
93 - delta = AUD_get_elapsed_usec_out (s->voice, &s->ats);
94 - ldebug (
95 - "delta = %f dexp = %f expired => %d",
96 - delta / 1000000.0,
97 - s->dexp[i] / 1000000.0,
98 - delta >= s->dexp[i]
99 - );
100 - if (ADLIB_KILL_TIMERS || delta >= s->dexp[i]) {
101 - adlib_stop_opl_timer (s, i);
102 - AUD_init_time_stamp_out (s->voice, &s->ats);
103 - }
88 + adlib_stop_opl_timer(s, i);
89 }
90 }
91 }
@@ -149,7 +134,6 @@ static void timer_handler (void *opaque, int c, double interval_Sec)
134 #endif
135
136 s->dexp[n] = interval_Sec * 1000000.0;
152 - AUD_init_time_stamp_out (s->voice, &s->ats);
137 }
138
139 static int write_audio (AdlibState *s, int samples)
include/qemu/audio.h
-10
@@ -50,10 +50,6 @@ struct AudioBackendClass {
50
51 typedef struct AudioBackend AudioBackend;
52
53 -typedef struct QEMUAudioTimeStamp {
54 - uint64_t old_ts;
55 -} QEMUAudioTimeStamp;
56 -
53 bool AUD_backend_check(AudioBackend **be, Error **errp);
54
55 SWVoiceOut *AUD_open_out (
@@ -71,9 +67,6 @@ int AUD_get_buffer_size_out (SWVoiceOut *sw);
67 void AUD_set_active_out(SWVoiceOut *sw, bool on);
68 bool AUD_is_active_out(SWVoiceOut *sw);
69
74 -void AUD_init_time_stamp_out (SWVoiceOut *sw, QEMUAudioTimeStamp *ts);
75 -uint64_t AUD_get_elapsed_usec_out (SWVoiceOut *sw, QEMUAudioTimeStamp *ts);
76 -
70 #define AUDIO_MAX_CHANNELS 16
71 typedef struct Volume {
72 bool mute;
@@ -112,9 +105,6 @@ size_t AUD_read (SWVoiceIn *sw, void *pcm_buf, size_t size);
105 void AUD_set_active_in(SWVoiceIn *sw, bool on);
106 bool AUD_is_active_in(SWVoiceIn *sw);
107
115 -void AUD_init_time_stamp_in (SWVoiceIn *sw, QEMUAudioTimeStamp *ts);
116 -uint64_t AUD_get_elapsed_usec_in (SWVoiceIn *sw, QEMUAudioTimeStamp *ts);
117 -
108 void audio_cleanup(void);
109
110 typedef struct st_sample st_sample;
scripts/codeconverter/codeconverter/test_regexps.py
-1
@@ -202,7 +202,6 @@ typedef struct {
202 uint64_t dexp[2];
203 SWVoiceOut *voice;
204 int left, pos, samples;
205 - QEMUAudioTimeStamp ats;
205 FM_OPL *opl;
206 PortioList port_list;
207 } AdlibState;