summaryrefslogtreecommitdiff
path: root/audio/audio.h
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2006-07-04 16:51:32 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2006-07-04 16:51:32 +0000
commit8ead62cfc21f61a32677892c721674e06e9f6153 (patch)
treeafaeb2e3c1b2747671643575baebfe75592e5e6f /audio/audio.h
parentfeea13e186a902179fcd79e3ce5318b5eb73c0d2 (diff)
downloadqemu-8ead62cfc21f61a32677892c721674e06e9f6153.tar.gz
audio fixes + initial audio capture support (malc)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2040 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'audio/audio.h')
-rw-r--r--audio/audio.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/audio/audio.h b/audio/audio.h
index 169b5f636a..4e1a694d07 100644
--- a/audio/audio.h
+++ b/audio/audio.h
@@ -41,6 +41,11 @@ typedef struct {
audfmt_e fmt;
} audsettings_t;
+struct audio_capture_ops {
+ void (*state) (void *opaque, int enabled);
+ void (*capture) (void *opaque, void *buf, int size);
+};
+
typedef struct AudioState AudioState;
typedef struct SWVoiceOut SWVoiceOut;
typedef struct SWVoiceIn SWVoiceIn;
@@ -66,6 +71,13 @@ AudioState *AUD_init (void);
void AUD_help (void);
void AUD_register_card (AudioState *s, const char *name, QEMUSoundCard *card);
void AUD_remove_card (QEMUSoundCard *card);
+int AUD_add_capture (
+ AudioState *s,
+ audsettings_t *as,
+ int endian,
+ struct audio_capture_ops *ops,
+ void *opaque
+ );
SWVoiceOut *AUD_open_out (
QEMUSoundCard *card,
@@ -111,7 +123,7 @@ static inline void *advance (void *p, int incr)
}
uint32_t popcount (uint32_t u);
-inline uint32_t lsbindex (uint32_t u);
+uint32_t lsbindex (uint32_t u);
#ifdef __GNUC__
#define audio_MIN(a, b) ( __extension__ ({ \