diff options
author | Peter Maydell | 2018-03-12 17:14:37 +0100 |
---|---|---|
committer | Peter Maydell | 2018-03-12 17:14:37 +0100 |
commit | 6ceb1b51f05f9e1892d082960ed602dca7b6696e (patch) | |
tree | 32715c1c06bb716fe7ce7966855ff1f39d52e9ad /audio/audio_int.h | |
parent | Merge remote-tracking branch 'remotes/kraxel/tags/ui-20180312-pull-request' i... (diff) | |
parent | audio/sdl: build as module (diff) | |
download | qemu-6ceb1b51f05f9e1892d082960ed602dca7b6696e.tar.gz qemu-6ceb1b51f05f9e1892d082960ed602dca7b6696e.tar.xz qemu-6ceb1b51f05f9e1892d082960ed602dca7b6696e.zip |
Merge remote-tracking branch 'remotes/kraxel/tags/audio-20180312-pull-request' into staging
modules: use gmodule-export.
audio: add driver registry, enable module builds.
# gpg: Signature made Mon 12 Mar 2018 10:42:19 GMT
# gpg: using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
# gpg: aka "Gerd Hoffmann <gerd@kraxel.org>"
# gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901 FE7D 4CB6 D8EE D3E8 7138
* remotes/kraxel/tags/audio-20180312-pull-request:
audio/sdl: build as module
audio/pulseaudio: build as module
audio/oss: build as module
audio/alsa: build as module
build: enable audio modules
audio: add module loading support
audio: add driver registry
modules: use gmodule-export
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'audio/audio_int.h')
-rw-r--r-- | audio/audio_int.h | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/audio/audio_int.h b/audio/audio_int.h index 700bd43143..244b454012 100644 --- a/audio/audio_int.h +++ b/audio/audio_int.h @@ -141,6 +141,7 @@ struct SWVoiceIn { QLIST_ENTRY (SWVoiceIn) entries; }; +typedef struct audio_driver audio_driver; struct audio_driver { const char *name; const char *descr; @@ -154,6 +155,7 @@ struct audio_driver { int voice_size_out; int voice_size_in; int ctl_caps; + QLIST_ENTRY(audio_driver) next; }; struct audio_pcm_ops { @@ -203,17 +205,11 @@ struct AudioState { int vm_running; }; -extern struct audio_driver no_audio_driver; -extern struct audio_driver oss_audio_driver; -extern struct audio_driver sdl_audio_driver; -extern struct audio_driver wav_audio_driver; -extern struct audio_driver alsa_audio_driver; -extern struct audio_driver coreaudio_audio_driver; -extern struct audio_driver dsound_audio_driver; -extern struct audio_driver pa_audio_driver; -extern struct audio_driver spice_audio_driver; extern const struct mixeng_volume nominal_volume; +void audio_driver_register(audio_driver *drv); +audio_driver *audio_driver_lookup(const char *name); + 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); |