]> git.bts.cx Git - benzene.git/blob - src/bz/audio/ogg.h
Initial version
[benzene.git] / src / bz / audio / ogg.h
1 #ifndef BZ_AUDIO_OGG_H
2 #define BZ_AUDIO_OGG_H
3
4 #include <bz/memory/arena.h>
5 #include <bz/types/common.h>
6
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11 struct BZAudioOGGStreamDetails {
12 uint32_t rate;
13 uint8_t channels;
14 uint32_t maxSamples;
15 };
16 typedef struct BZAudioOGGStreamDetails BZAudioOGGStreamDetails;
17
18 typedef struct BZAudioOGGStream BZAudioOGGStream;
19
20 extern BZAudioOGGStream *bzAudioOpenOGGStream(BZAudioOGGStreamDetails *detailsOut, BZMemoryArenaID arena, const char *identifierFmt, ...);
21 extern void bzAudioCloseOGGStream(BZAudioOGGStream *stream);
22
23 extern void bzAudioResetOGGData(BZAudioOGGStream *stream);
24 extern size_t bzAudioQueryOGGData(BZAudioOGGStream *stream, size_t maxDataSize, float *data);
25
26 #ifdef __cplusplus
27 }
28 #endif
29
30 #endif