Skip to content

Commit f58425c

Browse files
committed
Add miniaudio example, update README
1 parent a779f0a commit f58425c

8 files changed

Lines changed: 4609 additions & 10 deletions

File tree

Makefile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,14 @@ $(BUILD_DIR)/$(EXAMPLE_DIR)/uprintf: $(EXAMPLE_DIR)/uprintf.c uprintf.h
7474
@mkdir -p $(@D)
7575
$(CC) $(EXAMPLE_CFLAGS) -o $@ $<
7676

77+
$(BUILD_DIR)/$(EXAMPLE_DIR)/miniaudio: $(EXAMPLE_DIR)/miniaudio.c $(LIB_DIR)/miniaudio.h uprintf.h
78+
@mkdir -p $(@D)
79+
$(CC) $(EXAMPLE_CFLAGS) -I $(LIB_DIR) -o $@ $< -lm -lpthread
80+
81+
$(LIB_DIR)/miniaudio.h:
82+
@mkdir -p $(@D)
83+
wget https://raw.githubusercontent.com/mackron/miniaudio/refs/heads/master/miniaudio.h -O $@
84+
7785

7886
readme: README.md.in $(EXAMPLE_OUTS)
7987
cp README.md.in README.md

README.md

Lines changed: 2290 additions & 4 deletions
Large diffs are not rendered by default.

README.md.in

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,29 +9,37 @@ Examples and their outputs can be found in [examples](examples), and can be buil
99
### Example outputs
1010

1111
<details>
12-
<summary>avl</summary>
12+
<summary>avl (<a href="https://github.com/etherealvisage/avl">src</a>)</summary>
1313

1414
```c
1515
!examples/avl.out
1616
```
1717
</details>
1818

1919
<details>
20-
<summary>sqlite</summary>
20+
<summary>sqlite (<a href="https://www.sqlite.org">src</a>)</summary>
2121

2222
```c
2323
!examples/sqlite.out
2424
```
2525
</details>
2626

2727
<details>
28-
<summary>vorbis</summary>
28+
<summary>vorbis (<a href="https://github.com/nothings/stb/blob/master/stb_vorbis.c">src</a>)</summary>
2929

3030
```c
3131
!examples/vorbis.out
3232
```
3333
</details>
3434

35+
<details>
36+
<summary>miniaudio (<a href="https://github.com/mackron/miniaudio">src</a>)</summary>
37+
38+
```c
39+
!examples/miniaudio.out
40+
```
41+
</details>
42+
3543
<details>
3644
<summary>uprintf</summary>
3745

examples/data/sample.flac

1.71 MB
Binary file not shown.

examples/miniaudio.c

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#define MINIAUDIO_IMPLEMENTATION
2+
#include "miniaudio.h" // https://github.com/mackron/miniaudio
3+
#include <stdlib.h>
4+
5+
#define UPRINTF_IMPLEMENTATION
6+
#include "uprintf.h"
7+
8+
int main(void) {
9+
ma_engine engine;
10+
ma_result result = ma_engine_init(NULL, &engine);
11+
if (result != MA_SUCCESS) return EXIT_FAILURE;
12+
13+
ma_engine_play_sound(&engine, "./examples/data/sample.flac", NULL);
14+
uprintf("Miniaudio engine: %S\n", &engine);
15+
16+
ma_engine_uninit(&engine);
17+
return EXIT_SUCCESS;
18+
}

0 commit comments

Comments
 (0)