Make audio violate POSIX less

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5864 c046a42c-6fe2-441c-8c8c-71466251a162
master
malc 2008-12-03 22:48:44 +00:00
parent 8b0de438d4
commit 1ea879e558
31 changed files with 139 additions and 135 deletions

View File

@ -527,7 +527,7 @@ static int alsa_run_out (HWVoiceOut *hw)
int rpos, live, decr; int rpos, live, decr;
int samples; int samples;
uint8_t *dst; uint8_t *dst;
st_sample_t *src; struct st_sample *src;
snd_pcm_sframes_t avail; snd_pcm_sframes_t avail;
live = audio_pcm_hw_get_live_out (hw); live = audio_pcm_hw_get_live_out (hw);
@ -612,13 +612,13 @@ static void alsa_fini_out (HWVoiceOut *hw)
} }
} }
static int alsa_init_out (HWVoiceOut *hw, audsettings_t *as) static int alsa_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
ALSAVoiceOut *alsa = (ALSAVoiceOut *) hw; ALSAVoiceOut *alsa = (ALSAVoiceOut *) hw;
struct alsa_params_req req; struct alsa_params_req req;
struct alsa_params_obt obt; struct alsa_params_obt obt;
snd_pcm_t *handle; snd_pcm_t *handle;
audsettings_t obt_as; struct audsettings obt_as;
req.fmt = aud_to_alsafmt (as->fmt); req.fmt = aud_to_alsafmt (as->fmt);
req.freq = as->freq; req.freq = as->freq;
@ -692,13 +692,13 @@ static int alsa_ctl_out (HWVoiceOut *hw, int cmd, ...)
return -1; return -1;
} }
static int alsa_init_in (HWVoiceIn *hw, audsettings_t *as) static int alsa_init_in (HWVoiceIn *hw, struct audsettings *as)
{ {
ALSAVoiceIn *alsa = (ALSAVoiceIn *) hw; ALSAVoiceIn *alsa = (ALSAVoiceIn *) hw;
struct alsa_params_req req; struct alsa_params_req req;
struct alsa_params_obt obt; struct alsa_params_obt obt;
snd_pcm_t *handle; snd_pcm_t *handle;
audsettings_t obt_as; struct audsettings obt_as;
req.fmt = aud_to_alsafmt (as->fmt); req.fmt = aud_to_alsafmt (as->fmt);
req.freq = as->freq; req.freq = as->freq;
@ -792,7 +792,7 @@ static int alsa_run_in (HWVoiceIn *hw)
for (i = 0; i < 2; ++i) { for (i = 0; i < 2; ++i) {
void *src; void *src;
st_sample_t *dst; struct st_sample *dst;
snd_pcm_sframes_t nread; snd_pcm_sframes_t nread;
snd_pcm_uframes_t len; snd_pcm_uframes_t len;

View File

@ -47,7 +47,7 @@ struct fixed_settings {
int enabled; int enabled;
int nb_voices; int nb_voices;
int greedy; int greedy;
audsettings_t settings; struct audsettings settings;
}; };
static struct { static struct {
@ -91,7 +91,7 @@ static struct {
static AudioState glob_audio_state; static AudioState glob_audio_state;
volume_t nominal_volume = { struct mixeng_volume nominal_volume = {
0, 0,
#ifdef FLOAT_MIXENG #ifdef FLOAT_MIXENG
1.0, 1.0,
@ -513,7 +513,7 @@ static void audio_process_options (const char *prefix,
} }
} }
static void audio_print_settings (audsettings_t *as) static void audio_print_settings (struct audsettings *as)
{ {
dolog ("frequency=%d nchannels=%d fmt=", as->freq, as->nchannels); dolog ("frequency=%d nchannels=%d fmt=", as->freq, as->nchannels);
@ -556,7 +556,7 @@ static void audio_print_settings (audsettings_t *as)
AUD_log (NULL, "\n"); AUD_log (NULL, "\n");
} }
static int audio_validate_settings (audsettings_t *as) static int audio_validate_settings (struct audsettings *as)
{ {
int invalid; int invalid;
@ -580,7 +580,7 @@ static int audio_validate_settings (audsettings_t *as)
return invalid ? -1 : 0; return invalid ? -1 : 0;
} }
static int audio_pcm_info_eq (struct audio_pcm_info *info, audsettings_t *as) static int audio_pcm_info_eq (struct audio_pcm_info *info, struct audsettings *as)
{ {
int bits = 8, sign = 0; int bits = 8, sign = 0;
@ -609,7 +609,7 @@ static int audio_pcm_info_eq (struct audio_pcm_info *info, audsettings_t *as)
&& info->swap_endianness == (as->endianness != AUDIO_HOST_ENDIANNESS); && info->swap_endianness == (as->endianness != AUDIO_HOST_ENDIANNESS);
} }
void audio_pcm_init_info (struct audio_pcm_info *info, audsettings_t *as) void audio_pcm_init_info (struct audio_pcm_info *info, struct audsettings *as)
{ {
int bits = 8, sign = 0, shift = 0; int bits = 8, sign = 0, shift = 0;
@ -704,8 +704,8 @@ void audio_pcm_info_clear_buf (struct audio_pcm_info *info, void *buf, int len)
/* /*
* Capture * Capture
*/ */
static void noop_conv (st_sample_t *dst, const void *src, static void noop_conv (struct st_sample *dst, const void *src,
int samples, volume_t *vol) int samples, struct mixeng_volume *vol)
{ {
(void) src; (void) src;
(void) dst; (void) dst;
@ -715,7 +715,7 @@ static void noop_conv (st_sample_t *dst, const void *src,
static CaptureVoiceOut *audio_pcm_capture_find_specific ( static CaptureVoiceOut *audio_pcm_capture_find_specific (
AudioState *s, AudioState *s,
audsettings_t *as struct audsettings *as
) )
{ {
CaptureVoiceOut *cap; CaptureVoiceOut *cap;
@ -891,7 +891,7 @@ int audio_pcm_sw_read (SWVoiceIn *sw, void *buf, int size)
{ {
HWVoiceIn *hw = sw->hw; HWVoiceIn *hw = sw->hw;
int samples, live, ret = 0, swlim, isamp, osamp, rpos, total = 0; int samples, live, ret = 0, swlim, isamp, osamp, rpos, total = 0;
st_sample_t *src, *dst = sw->buf; struct st_sample *src, *dst = sw->buf;
rpos = audio_pcm_sw_get_rpos_in (sw) % hw->samples; rpos = audio_pcm_sw_get_rpos_in (sw) % hw->samples;
@ -1442,7 +1442,7 @@ static void audio_run_capture (AudioState *s)
while (live) { while (live) {
int left = hw->samples - rpos; int left = hw->samples - rpos;
int to_capture = audio_MIN (live, left); int to_capture = audio_MIN (live, left);
st_sample_t *src; struct st_sample *src;
struct capture_callback *cb; struct capture_callback *cb;
src = hw->mix_buf + rpos; src = hw->mix_buf + rpos;
@ -1812,7 +1812,7 @@ AudioState *AUD_init (void)
CaptureVoiceOut *AUD_add_capture ( CaptureVoiceOut *AUD_add_capture (
AudioState *s, AudioState *s,
audsettings_t *as, struct audsettings *as,
struct audio_capture_ops *ops, struct audio_capture_ops *ops,
void *cb_opaque void *cb_opaque
) )
@ -1863,7 +1863,7 @@ CaptureVoiceOut *AUD_add_capture (
/* XXX find a more elegant way */ /* XXX find a more elegant way */
hw->samples = 4096 * 4; hw->samples = 4096 * 4;
hw->mix_buf = audio_calloc (AUDIO_FUNC, hw->samples, hw->mix_buf = audio_calloc (AUDIO_FUNC, hw->samples,
sizeof (st_sample_t)); sizeof (struct st_sample));
if (!hw->mix_buf) { if (!hw->mix_buf) {
dolog ("Could not allocate capture mix buffer (%d samples)\n", dolog ("Could not allocate capture mix buffer (%d samples)\n",
hw->samples); hw->samples);

View File

@ -44,12 +44,12 @@ typedef enum {
#define AUDIO_HOST_ENDIANNESS 0 #define AUDIO_HOST_ENDIANNESS 0
#endif #endif
typedef struct { struct audsettings {
int freq; int freq;
int nchannels; int nchannels;
audfmt_e fmt; audfmt_e fmt;
int endianness; int endianness;
} audsettings_t; };
typedef enum { typedef enum {
AUD_CNOTIFY_ENABLE, AUD_CNOTIFY_ENABLE,
@ -100,7 +100,7 @@ void AUD_register_card (AudioState *s, const char *name, QEMUSoundCard *card);
void AUD_remove_card (QEMUSoundCard *card); void AUD_remove_card (QEMUSoundCard *card);
CaptureVoiceOut *AUD_add_capture ( CaptureVoiceOut *AUD_add_capture (
AudioState *s, AudioState *s,
audsettings_t *as, struct audsettings *as,
struct audio_capture_ops *ops, struct audio_capture_ops *ops,
void *opaque void *opaque
); );
@ -112,7 +112,7 @@ SWVoiceOut *AUD_open_out (
const char *name, const char *name,
void *callback_opaque, void *callback_opaque,
audio_callback_fn_t callback_fn, audio_callback_fn_t callback_fn,
audsettings_t *settings struct audsettings *settings
); );
void AUD_close_out (QEMUSoundCard *card, SWVoiceOut *sw); void AUD_close_out (QEMUSoundCard *card, SWVoiceOut *sw);
@ -133,7 +133,7 @@ SWVoiceIn *AUD_open_in (
const char *name, const char *name,
void *callback_opaque, void *callback_opaque,
audio_callback_fn_t callback_fn, audio_callback_fn_t callback_fn,
audsettings_t *settings struct audsettings *settings
); );
void AUD_close_in (QEMUSoundCard *card, SWVoiceIn *sw); void AUD_close_in (QEMUSoundCard *card, SWVoiceIn *sw);

View File

@ -76,7 +76,7 @@ typedef struct HWVoiceOut {
int rpos; int rpos;
uint64_t ts_helper; uint64_t ts_helper;
st_sample_t *mix_buf; struct st_sample *mix_buf;
int samples; int samples;
LIST_HEAD (sw_out_listhead, SWVoiceOut) sw_head; LIST_HEAD (sw_out_listhead, SWVoiceOut) sw_head;
@ -95,7 +95,7 @@ typedef struct HWVoiceIn {
int total_samples_captured; int total_samples_captured;
uint64_t ts_helper; uint64_t ts_helper;
st_sample_t *conv_buf; struct st_sample *conv_buf;
int samples; int samples;
LIST_HEAD (sw_in_listhead, SWVoiceIn) sw_head; LIST_HEAD (sw_in_listhead, SWVoiceIn) sw_head;
@ -107,14 +107,14 @@ struct SWVoiceOut {
struct audio_pcm_info info; struct audio_pcm_info info;
t_sample *conv; t_sample *conv;
int64_t ratio; int64_t ratio;
st_sample_t *buf; struct st_sample *buf;
void *rate; void *rate;
int total_hw_samples_mixed; int total_hw_samples_mixed;
int active; int active;
int empty; int empty;
HWVoiceOut *hw; HWVoiceOut *hw;
char *name; char *name;
volume_t vol; struct mixeng_volume vol;
struct audio_callback callback; struct audio_callback callback;
LIST_ENTRY (SWVoiceOut) entries; LIST_ENTRY (SWVoiceOut) entries;
}; };
@ -125,11 +125,11 @@ struct SWVoiceIn {
int64_t ratio; int64_t ratio;
void *rate; void *rate;
int total_hw_samples_acquired; int total_hw_samples_acquired;
st_sample_t *buf; struct st_sample *buf;
f_sample *clip; f_sample *clip;
HWVoiceIn *hw; HWVoiceIn *hw;
char *name; char *name;
volume_t vol; struct mixeng_volume vol;
struct audio_callback callback; struct audio_callback callback;
LIST_ENTRY (SWVoiceIn) entries; LIST_ENTRY (SWVoiceIn) entries;
}; };
@ -149,13 +149,13 @@ struct audio_driver {
}; };
struct audio_pcm_ops { struct audio_pcm_ops {
int (*init_out)(HWVoiceOut *hw, audsettings_t *as); int (*init_out)(HWVoiceOut *hw, struct audsettings *as);
void (*fini_out)(HWVoiceOut *hw); void (*fini_out)(HWVoiceOut *hw);
int (*run_out) (HWVoiceOut *hw); int (*run_out) (HWVoiceOut *hw);
int (*write) (SWVoiceOut *sw, void *buf, int size); int (*write) (SWVoiceOut *sw, void *buf, int size);
int (*ctl_out) (HWVoiceOut *hw, int cmd, ...); int (*ctl_out) (HWVoiceOut *hw, int cmd, ...);
int (*init_in) (HWVoiceIn *hw, audsettings_t *as); int (*init_in) (HWVoiceIn *hw, struct audsettings *as);
void (*fini_in) (HWVoiceIn *hw); void (*fini_in) (HWVoiceIn *hw);
int (*run_in) (HWVoiceIn *hw); int (*run_in) (HWVoiceIn *hw);
int (*read) (SWVoiceIn *sw, void *buf, int size); int (*read) (SWVoiceIn *sw, void *buf, int size);
@ -204,9 +204,9 @@ extern struct audio_driver coreaudio_audio_driver;
extern struct audio_driver dsound_audio_driver; extern struct audio_driver dsound_audio_driver;
extern struct audio_driver esd_audio_driver; extern struct audio_driver esd_audio_driver;
extern struct audio_driver pa_audio_driver; extern struct audio_driver pa_audio_driver;
extern volume_t nominal_volume; extern struct mixeng_volume nominal_volume;
void audio_pcm_init_info (struct audio_pcm_info *info, audsettings_t *as); void audio_pcm_init_info (struct audio_pcm_info *info, struct audsettings *as);
void audio_pcm_info_clear_buf (struct audio_pcm_info *info, void *buf, int len); void audio_pcm_info_clear_buf (struct audio_pcm_info *info, void *buf, int len);
int audio_pcm_sw_write (SWVoiceOut *sw, void *buf, int len); int audio_pcm_sw_write (SWVoiceOut *sw, void *buf, int len);

View File

@ -82,7 +82,7 @@ static void glue (audio_pcm_hw_free_resources_, TYPE) (HW *hw)
static int glue (audio_pcm_hw_alloc_resources_, TYPE) (HW *hw) static int glue (audio_pcm_hw_alloc_resources_, TYPE) (HW *hw)
{ {
HWBUF = audio_calloc (AUDIO_FUNC, hw->samples, sizeof (st_sample_t)); HWBUF = audio_calloc (AUDIO_FUNC, hw->samples, sizeof (struct st_sample));
if (!HWBUF) { if (!HWBUF) {
dolog ("Could not allocate " NAME " buffer (%d samples)\n", dolog ("Could not allocate " NAME " buffer (%d samples)\n",
hw->samples); hw->samples);
@ -116,7 +116,7 @@ static int glue (audio_pcm_sw_alloc_resources_, TYPE) (SW *sw)
samples = ((int64_t) sw->hw->samples << 32) / sw->ratio; samples = ((int64_t) sw->hw->samples << 32) / sw->ratio;
#endif #endif
sw->buf = audio_calloc (AUDIO_FUNC, samples, sizeof (st_sample_t)); sw->buf = audio_calloc (AUDIO_FUNC, samples, sizeof (struct st_sample));
if (!sw->buf) { if (!sw->buf) {
dolog ("Could not allocate buffer for `%s' (%d samples)\n", dolog ("Could not allocate buffer for `%s' (%d samples)\n",
SW_NAME (sw), samples); SW_NAME (sw), samples);
@ -140,7 +140,7 @@ static int glue (audio_pcm_sw_init_, TYPE) (
SW *sw, SW *sw,
HW *hw, HW *hw,
const char *name, const char *name,
audsettings_t *as struct audsettings *as
) )
{ {
int err; int err;
@ -229,7 +229,7 @@ static HW *glue (audio_pcm_hw_find_any_enabled_, TYPE) (AudioState *s, HW *hw)
static HW *glue (audio_pcm_hw_find_specific_, TYPE) ( static HW *glue (audio_pcm_hw_find_specific_, TYPE) (
AudioState *s, AudioState *s,
HW *hw, HW *hw,
audsettings_t *as struct audsettings *as
) )
{ {
while ((hw = glue (audio_pcm_hw_find_any_, TYPE) (s, hw))) { while ((hw = glue (audio_pcm_hw_find_any_, TYPE) (s, hw))) {
@ -240,7 +240,8 @@ static HW *glue (audio_pcm_hw_find_specific_, TYPE) (
return NULL; return NULL;
} }
static HW *glue (audio_pcm_hw_add_new_, TYPE) (AudioState *s, audsettings_t *as) static HW *glue (audio_pcm_hw_add_new_, TYPE) (AudioState *s,
struct audsettings *as)
{ {
HW *hw; HW *hw;
struct audio_driver *drv = s->drv; struct audio_driver *drv = s->drv;
@ -308,7 +309,8 @@ static HW *glue (audio_pcm_hw_add_new_, TYPE) (AudioState *s, audsettings_t *as)
return NULL; return NULL;
} }
static HW *glue (audio_pcm_hw_add_, TYPE) (AudioState *s, audsettings_t *as) static HW *glue (audio_pcm_hw_add_, TYPE) (AudioState *s,
struct audsettings *as)
{ {
HW *hw; HW *hw;
@ -335,12 +337,12 @@ static HW *glue (audio_pcm_hw_add_, TYPE) (AudioState *s, audsettings_t *as)
static SW *glue (audio_pcm_create_voice_pair_, TYPE) ( static SW *glue (audio_pcm_create_voice_pair_, TYPE) (
AudioState *s, AudioState *s,
const char *sw_name, const char *sw_name,
audsettings_t *as struct audsettings *as
) )
{ {
SW *sw; SW *sw;
HW *hw; HW *hw;
audsettings_t hw_as; struct audsettings hw_as;
if (glue (conf.fixed_, TYPE).enabled) { if (glue (conf.fixed_, TYPE).enabled) {
hw_as = glue (conf.fixed_, TYPE).settings; hw_as = glue (conf.fixed_, TYPE).settings;
@ -405,7 +407,7 @@ SW *glue (AUD_open_, TYPE) (
const char *name, const char *name,
void *callback_opaque , void *callback_opaque ,
audio_callback_fn_t callback_fn, audio_callback_fn_t callback_fn,
audsettings_t *as struct audsettings *as
) )
{ {
AudioState *s; AudioState *s;

View File

@ -233,7 +233,7 @@ static OSStatus audioDeviceIOProc(
HWVoiceOut *hw = hwptr; HWVoiceOut *hw = hwptr;
coreaudioVoiceOut *core = (coreaudioVoiceOut *) hwptr; coreaudioVoiceOut *core = (coreaudioVoiceOut *) hwptr;
int rpos, live; int rpos, live;
st_sample_t *src; struct st_sample *src;
#ifndef FLOAT_MIXENG #ifndef FLOAT_MIXENG
#ifdef RECIPROCAL #ifdef RECIPROCAL
const float scale = 1.f / UINT_MAX; const float scale = 1.f / UINT_MAX;
@ -289,7 +289,7 @@ static int coreaudio_write (SWVoiceOut *sw, void *buf, int len)
return audio_pcm_sw_write (sw, buf, len); return audio_pcm_sw_write (sw, buf, len);
} }
static int coreaudio_init_out (HWVoiceOut *hw, audsettings_t *as) static int coreaudio_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
OSStatus status; OSStatus status;
coreaudioVoiceOut *core = (coreaudioVoiceOut *) hw; coreaudioVoiceOut *core = (coreaudioVoiceOut *) hw;

View File

@ -174,16 +174,16 @@ static void dsound_fini_out (HWVoiceOut *hw)
} }
#ifdef DSBTYPE_IN #ifdef DSBTYPE_IN
static int dsound_init_in (HWVoiceIn *hw, audsettings_t *as) static int dsound_init_in (HWVoiceIn *hw, struct audsettings *as)
#else #else
static int dsound_init_out (HWVoiceOut *hw, audsettings_t *as) static int dsound_init_out (HWVoiceOut *hw, struct audsettings *as)
#endif #endif
{ {
int err; int err;
HRESULT hr; HRESULT hr;
dsound *s = &glob_dsound; dsound *s = &glob_dsound;
WAVEFORMATEX wfx; WAVEFORMATEX wfx;
audsettings_t obt_as; struct audsettings obt_as;
#ifdef DSBTYPE_IN #ifdef DSBTYPE_IN
const char *typ = "ADC"; const char *typ = "ADC";
DSoundVoiceIn *ds = (DSoundVoiceIn *) hw; DSoundVoiceIn *ds = (DSoundVoiceIn *) hw;

View File

@ -47,7 +47,7 @@ static struct {
int set_primary; int set_primary;
int bufsize_in; int bufsize_in;
int bufsize_out; int bufsize_out;
audsettings_t settings; struct audsettings settings;
int latency_millis; int latency_millis;
} conf = { } conf = {
1, 1,
@ -68,7 +68,7 @@ typedef struct {
LPDIRECTSOUND dsound; LPDIRECTSOUND dsound;
LPDIRECTSOUNDCAPTURE dsound_capture; LPDIRECTSOUNDCAPTURE dsound_capture;
LPDIRECTSOUNDBUFFER dsound_primary_buffer; LPDIRECTSOUNDBUFFER dsound_primary_buffer;
audsettings_t settings; struct audsettings settings;
} dsound; } dsound;
static dsound glob_dsound; static dsound glob_dsound;
@ -307,7 +307,8 @@ static int dsound_restore_out (LPDIRECTSOUNDBUFFER dsb)
return -1; return -1;
} }
static int waveformat_from_audio_settings (WAVEFORMATEX *wfx, audsettings_t *as) static int waveformat_from_audio_settings (WAVEFORMATEX *wfx,
struct audsettings *as)
{ {
memset (wfx, 0, sizeof (*wfx)); memset (wfx, 0, sizeof (*wfx));
@ -346,7 +347,8 @@ static int waveformat_from_audio_settings (WAVEFORMATEX *wfx, audsettings_t *as)
return 0; return 0;
} }
static int waveformat_to_audio_settings (WAVEFORMATEX *wfx, audsettings_t *as) static int waveformat_to_audio_settings (WAVEFORMATEX *wfx,
struct audsettings *as)
{ {
if (wfx->wFormatTag != WAVE_FORMAT_PCM) { if (wfx->wFormatTag != WAVE_FORMAT_PCM) {
dolog ("Invalid wave format, tag is not PCM, but %d\n", dolog ("Invalid wave format, tag is not PCM, but %d\n",
@ -448,8 +450,8 @@ static void dsound_write_sample (HWVoiceOut *hw, uint8_t *dst, int dst_len)
int src_len1 = dst_len; int src_len1 = dst_len;
int src_len2 = 0; int src_len2 = 0;
int pos = hw->rpos + dst_len; int pos = hw->rpos + dst_len;
st_sample_t *src1 = hw->mix_buf + hw->rpos; struct st_sample *src1 = hw->mix_buf + hw->rpos;
st_sample_t *src2 = NULL; struct st_sample *src2 = NULL;
if (pos > hw->samples) { if (pos > hw->samples) {
src_len1 = hw->samples - hw->rpos; src_len1 = hw->samples - hw->rpos;

View File

@ -115,7 +115,7 @@ static void *qesd_thread_out (void *arg)
while (to_mix) { while (to_mix) {
ssize_t written; ssize_t written;
int chunk = audio_MIN (to_mix, hw->samples - rpos); int chunk = audio_MIN (to_mix, hw->samples - rpos);
st_sample_t *src = hw->mix_buf + rpos; struct st_sample *src = hw->mix_buf + rpos;
hw->clip (esd->pcm_buf, src, chunk); hw->clip (esd->pcm_buf, src, chunk);
@ -188,10 +188,10 @@ static int qesd_write (SWVoiceOut *sw, void *buf, int len)
return audio_pcm_sw_write (sw, buf, len); return audio_pcm_sw_write (sw, buf, len);
} }
static int qesd_init_out (HWVoiceOut *hw, audsettings_t *as) static int qesd_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
ESDVoiceOut *esd = (ESDVoiceOut *) hw; ESDVoiceOut *esd = (ESDVoiceOut *) hw;
audsettings_t obt_as = *as; struct audsettings obt_as = *as;
int esdfmt = ESD_STREAM | ESD_PLAY; int esdfmt = ESD_STREAM | ESD_PLAY;
int err; int err;
sigset_t set, old_set; sigset_t set, old_set;
@ -421,10 +421,10 @@ static int qesd_read (SWVoiceIn *sw, void *buf, int len)
return audio_pcm_sw_read (sw, buf, len); return audio_pcm_sw_read (sw, buf, len);
} }
static int qesd_init_in (HWVoiceIn *hw, audsettings_t *as) static int qesd_init_in (HWVoiceIn *hw, struct audsettings *as)
{ {
ESDVoiceIn *esd = (ESDVoiceIn *) hw; ESDVoiceIn *esd = (ESDVoiceIn *) hw;
audsettings_t obt_as = *as; struct audsettings obt_as = *as;
int esdfmt = ESD_STREAM | ESD_RECORD; int esdfmt = ESD_STREAM | ESD_RECORD;
int err; int err;
sigset_t set, old_set; sigset_t set, old_set;

View File

@ -142,8 +142,8 @@ static void fmod_write_sample (HWVoiceOut *hw, uint8_t *dst, int dst_len)
int src_len1 = dst_len; int src_len1 = dst_len;
int src_len2 = 0; int src_len2 = 0;
int pos = hw->rpos + dst_len; int pos = hw->rpos + dst_len;
st_sample_t *src1 = hw->mix_buf + hw->rpos; struct st_sample *src1 = hw->mix_buf + hw->rpos;
st_sample_t *src2 = NULL; struct st_sample *src2 = NULL;
if (pos > hw->samples) { if (pos > hw->samples) {
src_len1 = hw->samples - hw->rpos; src_len1 = hw->samples - hw->rpos;
@ -355,11 +355,11 @@ static void fmod_fini_out (HWVoiceOut *hw)
} }
} }
static int fmod_init_out (HWVoiceOut *hw, audsettings_t *as) static int fmod_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
int bits16, mode, channel; int bits16, mode, channel;
FMODVoiceOut *fmd = (FMODVoiceOut *) hw; FMODVoiceOut *fmd = (FMODVoiceOut *) hw;
audsettings_t obt_as = *as; struct audsettings obt_as = *as;
mode = aud_to_fmodfmt (as->fmt, as->nchannels == 2 ? 1 : 0); mode = aud_to_fmodfmt (as->fmt, as->nchannels == 2 ? 1 : 0);
fmd->fmod_sample = FSOUND_Sample_Alloc ( fmd->fmod_sample = FSOUND_Sample_Alloc (
@ -417,11 +417,11 @@ static int fmod_ctl_out (HWVoiceOut *hw, int cmd, ...)
return 0; return 0;
} }
static int fmod_init_in (HWVoiceIn *hw, audsettings_t *as) static int fmod_init_in (HWVoiceIn *hw, struct audsettings *as)
{ {
int bits16, mode; int bits16, mode;
FMODVoiceIn *fmd = (FMODVoiceIn *) hw; FMODVoiceIn *fmd = (FMODVoiceIn *) hw;
audsettings_t obt_as = *as; struct audsettings obt_as = *as;
if (conf.broken_adc) { if (conf.broken_adc) {
return -1; return -1;

View File

@ -290,7 +290,7 @@ struct rate {
uint64_t opos; uint64_t opos;
uint64_t opos_inc; uint64_t opos_inc;
uint32_t ipos; /* position in the input stream (integer) */ uint32_t ipos; /* position in the input stream (integer) */
st_sample_t ilast; /* last sample in the input stream */ struct st_sample ilast; /* last sample in the input stream */
}; };
/* /*
@ -329,7 +329,7 @@ void st_rate_stop (void *opaque)
qemu_free (opaque); qemu_free (opaque);
} }
void mixeng_clear (st_sample_t *buf, int len) void mixeng_clear (struct st_sample *buf, int len)
{ {
memset (buf, 0, len * sizeof (st_sample_t)); memset (buf, 0, len * sizeof (struct st_sample));
} }

View File

@ -25,27 +25,27 @@
#define QEMU_MIXENG_H #define QEMU_MIXENG_H
#ifdef FLOAT_MIXENG #ifdef FLOAT_MIXENG
typedef float real_t; typedef float mixeng_real;
typedef struct { int mute; real_t r; real_t l; } volume_t; struct mixeng_volume { int mute; mixeng_real r; mixeng_real l; };
typedef struct { real_t l; real_t r; } st_sample_t; struct mixeng_sample { mixeng_real l; mixeng_real r; };
#else #else
typedef struct { int mute; int64_t r; int64_t l; } volume_t; struct mixeng_volume { int mute; int64_t r; int64_t l; };
typedef struct { int64_t l; int64_t r; } st_sample_t; struct st_sample { int64_t l; int64_t r; };
#endif #endif
typedef void (t_sample) (st_sample_t *dst, const void *src, typedef void (t_sample) (struct st_sample *dst, const void *src,
int samples, volume_t *vol); int samples, struct mixeng_volume *vol);
typedef void (f_sample) (void *dst, const st_sample_t *src, int samples); typedef void (f_sample) (void *dst, const struct st_sample *src, int samples);
extern t_sample *mixeng_conv[2][2][2][3]; extern t_sample *mixeng_conv[2][2][2][3];
extern f_sample *mixeng_clip[2][2][2][3]; extern f_sample *mixeng_clip[2][2][2][3];
void *st_rate_start (int inrate, int outrate); void *st_rate_start (int inrate, int outrate);
void st_rate_flow (void *opaque, st_sample_t *ibuf, st_sample_t *obuf, void st_rate_flow (void *opaque, struct st_sample *ibuf, struct st_sample *obuf,
int *isamp, int *osamp); int *isamp, int *osamp);
void st_rate_flow_mix (void *opaque, st_sample_t *ibuf, st_sample_t *obuf, void st_rate_flow_mix (void *opaque, struct st_sample *ibuf, struct st_sample *obuf,
int *isamp, int *osamp); int *isamp, int *osamp);
void st_rate_stop (void *opaque); void st_rate_stop (void *opaque);
void mixeng_clear (st_sample_t *buf, int len); void mixeng_clear (struct st_sample *buf, int len);
#endif /* mixeng.h */ #endif /* mixeng.h */

View File

@ -44,26 +44,26 @@
#define ET glue (ENDIAN_CONVERSION, glue (_, IN_T)) #define ET glue (ENDIAN_CONVERSION, glue (_, IN_T))
#ifdef FLOAT_MIXENG #ifdef FLOAT_MIXENG
static real_t inline glue (conv_, ET) (IN_T v) static mixeng_real inline glue (conv_, ET) (IN_T v)
{ {
IN_T nv = ENDIAN_CONVERT (v); IN_T nv = ENDIAN_CONVERT (v);
#ifdef RECIPROCAL #ifdef RECIPROCAL
#ifdef SIGNED #ifdef SIGNED
return nv * (1.f / (real_t) (IN_MAX - IN_MIN)); return nv * (1.f / (mixeng_real) (IN_MAX - IN_MIN));
#else #else
return (nv - HALF) * (1.f / (real_t) IN_MAX); return (nv - HALF) * (1.f / (mixeng_real) IN_MAX);
#endif #endif
#else /* !RECIPROCAL */ #else /* !RECIPROCAL */
#ifdef SIGNED #ifdef SIGNED
return nv / (real_t) (IN_MAX - IN_MIN); return nv / (mixeng_real) (IN_MAX - IN_MIN);
#else #else
return (nv - HALF) / (real_t) IN_MAX; return (nv - HALF) / (mixeng_real) IN_MAX;
#endif #endif
#endif #endif
} }
static IN_T inline glue (clip_, ET) (real_t v) static IN_T inline glue (clip_, ET) (mixeng_real v)
{ {
if (v >= 0.5) { if (v >= 0.5) {
return IN_MAX; return IN_MAX;
@ -109,9 +109,9 @@ static inline IN_T glue (clip_, ET) (int64_t v)
#endif #endif
static void glue (glue (conv_, ET), _to_stereo) static void glue (glue (conv_, ET), _to_stereo)
(st_sample_t *dst, const void *src, int samples, volume_t *vol) (struct st_sample *dst, const void *src, int samples, struct mixeng_volume *vol)
{ {
st_sample_t *out = dst; struct st_sample *out = dst;
IN_T *in = (IN_T *) src; IN_T *in = (IN_T *) src;
#ifdef CONFIG_MIXEMU #ifdef CONFIG_MIXEMU
if (vol->mute) { if (vol->mute) {
@ -129,9 +129,9 @@ static void glue (glue (conv_, ET), _to_stereo)
} }
static void glue (glue (conv_, ET), _to_mono) static void glue (glue (conv_, ET), _to_mono)
(st_sample_t *dst, const void *src, int samples, volume_t *vol) (struct st_sample *dst, const void *src, int samples, struct mixeng_volume *vol)
{ {
st_sample_t *out = dst; struct st_sample *out = dst;
IN_T *in = (IN_T *) src; IN_T *in = (IN_T *) src;
#ifdef CONFIG_MIXEMU #ifdef CONFIG_MIXEMU
if (vol->mute) { if (vol->mute) {
@ -150,9 +150,9 @@ static void glue (glue (conv_, ET), _to_mono)
} }
static void glue (glue (clip_, ET), _from_stereo) static void glue (glue (clip_, ET), _from_stereo)
(void *dst, const st_sample_t *src, int samples) (void *dst, const struct st_sample *src, int samples)
{ {
const st_sample_t *in = src; const struct st_sample *in = src;
IN_T *out = (IN_T *) dst; IN_T *out = (IN_T *) dst;
while (samples--) { while (samples--) {
*out++ = glue (clip_, ET) (in->l); *out++ = glue (clip_, ET) (in->l);
@ -162,9 +162,9 @@ static void glue (glue (clip_, ET), _from_stereo)
} }
static void glue (glue (clip_, ET), _from_mono) static void glue (glue (clip_, ET), _from_mono)
(void *dst, const st_sample_t *src, int samples) (void *dst, const struct st_sample *src, int samples)
{ {
const st_sample_t *in = src; const struct st_sample *in = src;
IN_T *out = (IN_T *) dst; IN_T *out = (IN_T *) dst;
while (samples--) { while (samples--) {
*out++ = glue (clip_, ET) (in->l + in->r); *out++ = glue (clip_, ET) (in->l + in->r);

View File

@ -68,7 +68,7 @@ static int no_write (SWVoiceOut *sw, void *buf, int len)
return audio_pcm_sw_write (sw, buf, len); return audio_pcm_sw_write (sw, buf, len);
} }
static int no_init_out (HWVoiceOut *hw, audsettings_t *as) static int no_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
audio_pcm_init_info (&hw->info, as); audio_pcm_init_info (&hw->info, as);
hw->samples = 1024; hw->samples = 1024;
@ -87,7 +87,7 @@ static int no_ctl_out (HWVoiceOut *hw, int cmd, ...)
return 0; return 0;
} }
static int no_init_in (HWVoiceIn *hw, audsettings_t *as) static int no_init_in (HWVoiceIn *hw, struct audsettings *as)
{ {
audio_pcm_init_info (&hw->info, as); audio_pcm_init_info (&hw->info, as);
hw->samples = 1024; hw->samples = 1024;

View File

@ -294,7 +294,7 @@ static int oss_run_out (HWVoiceOut *hw)
int err, rpos, live, decr; int err, rpos, live, decr;
int samples; int samples;
uint8_t *dst; uint8_t *dst;
st_sample_t *src; struct st_sample *src;
struct audio_buf_info abinfo; struct audio_buf_info abinfo;
struct count_info cntinfo; struct count_info cntinfo;
int bufsize; int bufsize;
@ -434,7 +434,7 @@ static void oss_fini_out (HWVoiceOut *hw)
} }
} }
static int oss_init_out (HWVoiceOut *hw, audsettings_t *as) static int oss_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
OSSVoiceOut *oss = (OSSVoiceOut *) hw; OSSVoiceOut *oss = (OSSVoiceOut *) hw;
struct oss_params req, obt; struct oss_params req, obt;
@ -442,7 +442,7 @@ static int oss_init_out (HWVoiceOut *hw, audsettings_t *as)
int err; int err;
int fd; int fd;
audfmt_e effective_fmt; audfmt_e effective_fmt;
audsettings_t obt_as; struct audsettings obt_as;
oss->fd = -1; oss->fd = -1;
@ -576,7 +576,7 @@ static int oss_ctl_out (HWVoiceOut *hw, int cmd, ...)
return 0; return 0;
} }
static int oss_init_in (HWVoiceIn *hw, audsettings_t *as) static int oss_init_in (HWVoiceIn *hw, struct audsettings *as)
{ {
OSSVoiceIn *oss = (OSSVoiceIn *) hw; OSSVoiceIn *oss = (OSSVoiceIn *) hw;
struct oss_params req, obt; struct oss_params req, obt;
@ -584,7 +584,7 @@ static int oss_init_in (HWVoiceIn *hw, audsettings_t *as)
int err; int err;
int fd; int fd;
audfmt_e effective_fmt; audfmt_e effective_fmt;
audsettings_t obt_as; struct audsettings obt_as;
oss->fd = -1; oss->fd = -1;

View File

@ -95,7 +95,7 @@ static void *qpa_thread_out (void *arg)
while (to_mix) { while (to_mix) {
int error; int error;
int chunk = audio_MIN (to_mix, hw->samples - rpos); int chunk = audio_MIN (to_mix, hw->samples - rpos);
st_sample_t *src = hw->mix_buf + rpos; struct st_sample *src = hw->mix_buf + rpos;
hw->clip (pa->pcm_buf, src, chunk); hw->clip (pa->pcm_buf, src, chunk);
@ -295,11 +295,11 @@ static audfmt_e pa_to_audfmt (pa_sample_format_t fmt, int *endianness)
} }
} }
static int qpa_init_out (HWVoiceOut *hw, audsettings_t *as) static int qpa_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
int error; int error;
static pa_sample_spec ss; static pa_sample_spec ss;
audsettings_t obt_as = *as; struct audsettings obt_as = *as;
PAVoiceOut *pa = (PAVoiceOut *) hw; PAVoiceOut *pa = (PAVoiceOut *) hw;
ss.format = audfmt_to_pa (as->fmt, as->endianness); ss.format = audfmt_to_pa (as->fmt, as->endianness);
@ -349,11 +349,11 @@ static int qpa_init_out (HWVoiceOut *hw, audsettings_t *as)
return -1; return -1;
} }
static int qpa_init_in (HWVoiceIn *hw, audsettings_t *as) static int qpa_init_in (HWVoiceIn *hw, struct audsettings *as)
{ {
int error; int error;
static pa_sample_spec ss; static pa_sample_spec ss;
audsettings_t obt_as = *as; struct audsettings obt_as = *as;
PAVoiceIn *pa = (PAVoiceIn *) hw; PAVoiceIn *pa = (PAVoiceIn *) hw;
ss.format = audfmt_to_pa (as->fmt, as->endianness); ss.format = audfmt_to_pa (as->fmt, as->endianness);

View File

@ -27,15 +27,15 @@
* Processed signed long samples from ibuf to obuf. * Processed signed long samples from ibuf to obuf.
* Return number of samples processed. * Return number of samples processed.
*/ */
void NAME (void *opaque, st_sample_t *ibuf, st_sample_t *obuf, void NAME (void *opaque, struct st_sample *ibuf, struct st_sample *obuf,
int *isamp, int *osamp) int *isamp, int *osamp)
{ {
struct rate *rate = opaque; struct rate *rate = opaque;
st_sample_t *istart, *iend; struct st_sample *istart, *iend;
st_sample_t *ostart, *oend; struct st_sample *ostart, *oend;
st_sample_t ilast, icur, out; struct st_sample ilast, icur, out;
#ifdef FLOAT_MIXENG #ifdef FLOAT_MIXENG
real_t t; mixeng_real t;
#else #else
int64_t t; int64_t t;
#endif #endif
@ -84,7 +84,7 @@ void NAME (void *opaque, st_sample_t *ibuf, st_sample_t *obuf,
#ifdef RECIPROCAL #ifdef RECIPROCAL
t = (rate->opos & UINT_MAX) * (1.f / UINT_MAX); t = (rate->opos & UINT_MAX) * (1.f / UINT_MAX);
#else #else
t = (rate->opos & UINT_MAX) / (real_t) UINT_MAX; t = (rate->opos & UINT_MAX) / (mixeng_real) UINT_MAX;
#endif #endif
out.l = (ilast.l * (1.0 - t)) + icur.l * t; out.l = (ilast.l * (1.0 - t)) + icur.l * t;
out.r = (ilast.r * (1.0 - t)) + icur.r * t; out.r = (ilast.r * (1.0 - t)) + icur.r * t;

View File

@ -257,7 +257,7 @@ static void sdl_callback (void *opaque, Uint8 *buf, int len)
decr = to_mix; decr = to_mix;
while (to_mix) { while (to_mix) {
int chunk = audio_MIN (to_mix, hw->samples - hw->rpos); int chunk = audio_MIN (to_mix, hw->samples - hw->rpos);
st_sample_t *src = hw->mix_buf + hw->rpos; struct st_sample *src = hw->mix_buf + hw->rpos;
/* dolog ("in callback to_mix %d, chunk %d\n", to_mix, chunk); */ /* dolog ("in callback to_mix %d, chunk %d\n", to_mix, chunk); */
hw->clip (buf, src, chunk); hw->clip (buf, src, chunk);
@ -323,7 +323,7 @@ static void sdl_fini_out (HWVoiceOut *hw)
sdl_close (&glob_sdl); sdl_close (&glob_sdl);
} }
static int sdl_init_out (HWVoiceOut *hw, audsettings_t *as) static int sdl_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
SDLVoiceOut *sdl = (SDLVoiceOut *) hw; SDLVoiceOut *sdl = (SDLVoiceOut *) hw;
SDLAudioState *s = &glob_sdl; SDLAudioState *s = &glob_sdl;
@ -332,7 +332,7 @@ static int sdl_init_out (HWVoiceOut *hw, audsettings_t *as)
int endianess; int endianess;
int err; int err;
audfmt_e effective_fmt; audfmt_e effective_fmt;
audsettings_t obt_as; struct audsettings obt_as;
shift <<= as->nchannels == 2; shift <<= as->nchannels == 2;

View File

@ -37,7 +37,7 @@ typedef struct WAVVoiceOut {
} WAVVoiceOut; } WAVVoiceOut;
static struct { static struct {
audsettings_t settings; struct audsettings settings;
const char *wav_path; const char *wav_path;
} conf = { } conf = {
{ {
@ -54,7 +54,7 @@ static int wav_run_out (HWVoiceOut *hw)
WAVVoiceOut *wav = (WAVVoiceOut *) hw; WAVVoiceOut *wav = (WAVVoiceOut *) hw;
int rpos, live, decr, samples; int rpos, live, decr, samples;
uint8_t *dst; uint8_t *dst;
st_sample_t *src; struct st_sample *src;
int64_t now = qemu_get_clock (vm_clock); int64_t now = qemu_get_clock (vm_clock);
int64_t ticks = now - wav->old_ticks; int64_t ticks = now - wav->old_ticks;
int64_t bytes = (ticks * hw->info.bytes_per_second) / ticks_per_sec; int64_t bytes = (ticks * hw->info.bytes_per_second) / ticks_per_sec;
@ -109,7 +109,7 @@ static void le_store (uint8_t *buf, uint32_t val, int len)
} }
} }
static int wav_init_out (HWVoiceOut *hw, audsettings_t *as) static int wav_init_out (HWVoiceOut *hw, struct audsettings *as)
{ {
WAVVoiceOut *wav = (WAVVoiceOut *) hw; WAVVoiceOut *wav = (WAVVoiceOut *) hw;
int bits16 = 0, stereo = 0; int bits16 = 0, stereo = 0;
@ -119,7 +119,7 @@ static int wav_init_out (HWVoiceOut *hw, audsettings_t *as)
0x02, 0x00, 0x44, 0xac, 0x00, 0x00, 0x10, 0xb1, 0x02, 0x00, 0x04, 0x02, 0x00, 0x44, 0xac, 0x00, 0x00, 0x10, 0xb1, 0x02, 0x00, 0x04,
0x00, 0x10, 0x00, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00, 0x00, 0x00 0x00, 0x10, 0x00, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00, 0x00, 0x00
}; };
audsettings_t wav_as = conf.settings; struct audsettings wav_as = conf.settings;
(void) as; (void) as;

View File

@ -91,7 +91,7 @@ int wav_start_capture (CaptureState *s, const char *path, int freq,
0x02, 0x00, 0x44, 0xac, 0x00, 0x00, 0x10, 0xb1, 0x02, 0x00, 0x04, 0x02, 0x00, 0x44, 0xac, 0x00, 0x00, 0x10, 0xb1, 0x02, 0x00, 0x04,
0x00, 0x10, 0x00, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00, 0x00, 0x00 0x00, 0x10, 0x00, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00, 0x00, 0x00
}; };
audsettings_t as; struct audsettings as;
struct audio_capture_ops ops; struct audio_capture_ops ops;
int stereo, bits16, shift; int stereo, bits16, shift;
CaptureVoiceOut *cap; CaptureVoiceOut *cap;

View File

@ -354,7 +354,7 @@ static uint16_t mixer_load (AC97LinkState *s, uint32_t i)
static void open_voice (AC97LinkState *s, int index, int freq) static void open_voice (AC97LinkState *s, int index, int freq)
{ {
audsettings_t as; struct audsettings as;
as.freq = freq; as.freq = freq;
as.nchannels = 2; as.nchannels = 2;

View File

@ -280,7 +280,7 @@ static void Adlib_fini (AdlibState *s)
int Adlib_init (AudioState *audio, qemu_irq *pic) int Adlib_init (AudioState *audio, qemu_irq *pic)
{ {
AdlibState *s = &glob_adlib; AdlibState *s = &glob_adlib;
audsettings_t as; struct audsettings as;
if (!audio) { if (!audio) {
dolog ("No audio state\n"); dolog ("No audio state\n");

View File

@ -268,7 +268,7 @@ static void cs_audio_callback (void *opaque, int free)
static void cs_reset_voices (CSState *s, uint32_t val) static void cs_reset_voices (CSState *s, uint32_t val)
{ {
int xtal; int xtal;
audsettings_t as; struct audsettings as;
#ifdef DEBUG_XLAW #ifdef DEBUG_XLAW
if (val == 0 || val == 32) if (val == 0 || val == 32)

View File

@ -421,7 +421,7 @@ static void es1370_update_voices (ES1370State *s, uint32_t ctl, uint32_t sctl)
(new_fmt & 2) ? AUD_FMT_S16 : AUD_FMT_U8, (new_fmt & 2) ? AUD_FMT_S16 : AUD_FMT_U8,
d->shift); d->shift);
if (new_freq) { if (new_freq) {
audsettings_t as; struct audsettings as;
as.freq = new_freq; as.freq = new_freq;
as.nchannels = 1 << (new_fmt & 1); as.nchannels = 1 << (new_fmt & 1);

View File

@ -253,7 +253,7 @@ static int GUS_load (QEMUFile *f, void *opaque, int version_id)
int GUS_init (AudioState *audio, qemu_irq *pic) int GUS_init (AudioState *audio, qemu_irq *pic)
{ {
GUSState *s; GUSState *s;
audsettings_t as; struct audsettings as;
if (!audio) { if (!audio) {
dolog ("No audio state\n"); dolog ("No audio state\n");

View File

@ -1610,7 +1610,7 @@ static void omap_eac_volume_update(struct omap_eac_s *s)
static void omap_eac_format_update(struct omap_eac_s *s) static void omap_eac_format_update(struct omap_eac_s *s)
{ {
audsettings_t fmt; struct audsettings fmt;
/* The hardware buffers at most one sample */ /* The hardware buffers at most one sample */
if (s->codec.rxlen) if (s->codec.rxlen)

View File

@ -99,7 +99,7 @@ static void pcspk_callback(void *opaque, int free)
int pcspk_audio_init(AudioState *audio, qemu_irq *pic) int pcspk_audio_init(AudioState *audio, qemu_irq *pic)
{ {
PCSpkState *s = &pcspk_state; PCSpkState *s = &pcspk_state;
audsettings_t as = {PCSPK_SAMPLE_RATE, 1, AUD_FMT_U8, 0}; struct audsettings as = {PCSPK_SAMPLE_RATE, 1, AUD_FMT_U8, 0};
if (!audio) { if (!audio) {
AUD_log(s_spk, "No audio state\n"); AUD_log(s_spk, "No audio state\n");

View File

@ -201,7 +201,7 @@ static void aux_timer (void *opaque)
static void continue_dma8 (SB16State *s) static void continue_dma8 (SB16State *s)
{ {
if (s->freq > 0) { if (s->freq > 0) {
audsettings_t as; struct audsettings as;
s->audio_free = 0; s->audio_free = 0;
@ -346,7 +346,7 @@ static void dma_cmd (SB16State *s, uint8_t cmd, uint8_t d0, int dma_len)
} }
if (s->freq) { if (s->freq) {
audsettings_t as; struct audsettings as;
s->audio_free = 0; s->audio_free = 0;
@ -833,7 +833,7 @@ static void complete (SB16State *s)
static void legacy_reset (SB16State *s) static void legacy_reset (SB16State *s)
{ {
audsettings_t as; struct audsettings as;
s->freq = 11025; s->freq = 11025;
s->fmt_signed = 0; s->fmt_signed = 0;
@ -1375,7 +1375,7 @@ static int SB_load (QEMUFile *f, void *opaque, int version_id)
if (s->dma_running) { if (s->dma_running) {
if (s->freq) { if (s->freq) {
audsettings_t as; struct audsettings as;
s->audio_free = 0; s->audio_free = 0;

View File

@ -327,7 +327,7 @@ static void tsc2102_audio_rate_update(struct tsc210x_state_s *s)
static void tsc2102_audio_output_update(struct tsc210x_state_s *s) static void tsc2102_audio_output_update(struct tsc210x_state_s *s)
{ {
int enable; int enable;
audsettings_t fmt; struct audsettings fmt;
if (s->dac_voice[0]) { if (s->dac_voice[0]) {
tsc210x_out_flush(s, s->codec.out.len); tsc210x_out_flush(s, s->codec.out.len);

View File

@ -170,9 +170,9 @@ static void wm8750_vol_update(struct wm8750_s *s)
static void wm8750_set_format(struct wm8750_s *s) static void wm8750_set_format(struct wm8750_s *s)
{ {
int i; int i;
audsettings_t in_fmt; struct audsettings in_fmt;
audsettings_t out_fmt; struct audsettings out_fmt;
audsettings_t monoout_fmt; struct audsettings monoout_fmt;
wm8750_out_flush(s); wm8750_out_flush(s);

2
vnc.c
View File

@ -171,7 +171,7 @@ struct VncState
int client_blue_shift, client_blue_max, server_blue_shift, server_blue_max; int client_blue_shift, client_blue_max, server_blue_shift, server_blue_max;
CaptureVoiceOut *audio_cap; CaptureVoiceOut *audio_cap;
audsettings_t as; struct audsettings as;
VncReadEvent *read_handler; VncReadEvent *read_handler;
size_t read_handler_expect; size_t read_handler_expect;