Commit Graph

3954 Commits

Author SHA1 Message Date
David Reid ed2c5270c8 Fix a typo. 2025-09-14 07:36:30 +10:00
Michael Müller 3dfcefc75b Fix access to miniaudio in ma_context_uninit__webaudio. 2025-09-14 07:26:31 +10:00
David Reid f40cf03f80 Version 0.11.23 0.11.23 2025-09-11 06:46:45 +10:00
David Reid 7f2cd5b8d5 Fix an error in the splitting script. 2025-09-11 06:42:16 +10:00
David Reid 3afbdef285 Update dr_libs. 2025-09-10 18:56:36 +10:00
David Reid 9a091f73aa Fix an undefined behavior error in the s16 to s32 conversion routine. 2025-09-10 15:06:34 +10:00
David Reid 4de39a8a37 Update change history. 2025-09-10 14:55:00 +10:00
David Reid 7c8574210d Update gitignore. 2025-09-10 13:49:58 +10:00
David Reid 6648ed005a Initial commit of the documentation generation tool. 2025-09-10 13:47:00 +10:00
David Reid 87bae56937 Fix typos in the documentation. 2025-09-10 13:18:58 +10:00
David Reid 293f5de18f Minor fixes to the readme. 2025-09-10 13:11:34 +10:00
David Reid 233b9b69c4 Reinstate the Twitter badge. 2025-09-10 12:58:20 +10:00
David Reid db514e813f Add splitting script. 2025-09-10 12:45:06 +10:00
David Reid 8130543730 Update fs. 2025-09-10 10:04:27 +10:00
David Reid b306c6a270 Use pkg-config for libvorbis and libopus detection. 2025-09-10 09:51:13 +10:00
spevnev 9e1f02b12a Fix unsigned offset overflow 2025-09-10 06:44:31 +10:00
David Reid fa84240364 Fix a typo. 2025-09-09 17:27:25 +10:00
David Reid 70eb06d3bd CMake: Minor fix for pthread and m. 2025-08-23 09:54:32 +10:00
Marcin Serwin 959283f244 Ignore missing library dependencies in CMake
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-23 09:45:49 +10:00
David Reid ea59076ba9 Try fixing a warning with MA_FALLTHROUGH. 2025-08-23 08:33:53 +10:00
David Reid 1d7d8dfba0 Fix some CMake errors with the Emscripten build. 2025-08-23 08:09:03 +10:00
David Reid f48d903526 WASAPI: Add a missing field to ma_AudioClientProperties.
Public issue https://github.com/mackron/miniaudio/issues/1028
2025-08-23 06:46:09 +10:00
David Reid 3bdd39fd2c Make some sound functions const.
Public issue https://github.com/mackron/miniaudio/issues/990
2025-08-23 06:20:08 +10:00
David Reid e75a053908 Update CMake script to extract the version from miniaudio.h. 2025-08-23 05:50:15 +10:00
David Reid 346d86ffa1 Update gitignore. 2025-08-23 05:45:05 +10:00
Marcin Serwin a2f92095dc Expose compile defines in pkg-config file
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-23 05:41:27 +10:00
Marcin Serwin badf36a378 Generate and install pkg-config file
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-23 05:41:27 +10:00
Marcin Serwin c9d288c3dc Link linux backends if NO_RUNTIME_LINKING is enabled
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-23 05:41:27 +10:00
David Reid 825d2c4466 Update fs. 2025-08-22 11:27:45 +10:00
David Reid 6fd62e6bbc Update fs. 2025-08-22 07:12:34 +10:00
David Reid b1893aa8f1 Minor C89 compatibility fix. 2025-08-21 14:33:52 +10:00
David Reid df4baf8d40 Fix some errors. 2025-08-21 14:24:21 +10:00
David Reid 21237008df Silence some errors in the Steam Audio headers. 2025-08-21 14:23:31 +10:00
David Reid 587bd83cbb Update fs and fix some build errors with -std=c89. 2025-08-21 13:57:57 +10:00
David Reid b7e5451ef4 Try fixing a compilation error when pthread does not exist. 2025-08-20 18:07:59 +10:00
David Reid ba84e61a18 Try fixing a compilation error when libatomic does not exist. 2025-08-20 18:03:12 +10:00
David Reid a7ab58259e Don't try building C++ tests when forcing C89. 2025-08-20 17:36:07 +10:00
David Reid 18055f34bb voclib: Fix a compilation error. 2025-08-20 16:40:46 +10:00
David Reid f6bae251bd verblib: Try fixing a compilation error on macOS. 2025-08-20 16:09:44 +10:00
David Reid 3567d5cfef Fix compilation error with MA_NO_SSE2. 2025-08-20 16:04:15 +10:00
David Reid 4e3b778c62 Silence some warnings about unused functions. 2025-08-20 15:56:43 +10:00
David Reid 6315130ec6 Make ma_lcg.state uint32 to avoid UB on signed arthimethic overflow 2025-08-19 08:32:06 +10:00
David Reid 6e1cd41622 tests: fix memory leak in filtering and generation tests 2025-08-19 08:26:22 +10:00
David Reid 78cdb9c1cb Add batch file for setting up DJGPP environment. 2025-08-07 17:44:55 +10:00
David Reid 1ea69211ad Fix some errors with the DJGPP build.
This forces `MA_NO_THREADING` and `MA_NO_RUNTIME_LINKING`.

The DOS/DJGPP build currently requires `MA_NO_DEVICE_IO`.
2025-08-07 17:44:19 +10:00
David Reid e9e8f90137 Fix an error when setting loop points.
Public issue https://github.com/mackron/miniaudio/issues/1019
2025-08-07 16:20:00 +10:00
David Reid d93552283f Unify MA_NX and MA_SWITCH platform macros. 2025-08-07 16:17:51 +10:00
David Reid 61a85dca42 Fix NXDK build for Xbox.
This disables the WASAPI, DirectSound and WinMM backends which means
you will not get any actual audio output working. An Xbox backend will
need to come later. The main purpose of this commit is to get the main
library compiling.

The main complication arises from the fact that both _WIN32 and
_MSC_VER are defined which makes miniaudio think it's using a normal
desktop Windows build. In practice it mostly works, but there's a few
things needing to be changed specifically for NXDK:

  - `fopen_s()` is not a thing with NXDK. It always uses `fopen()`.
  - There is no `_wfopen()`, nor `wcsrtombs()`, so attempting to open
    a file from a wide character string will fail.
  - There is also no `CreateFileW()`, so this code path will also
    result in an error if you attempt to open a file from a wide
    character path.
  - `CoInitialize()` is not a thing with NXDK and has therefore been
    excluded from the build.
  - `GetFileInformationByHandle()` does not exist, and neither does
    `struct stat` or `stat()`. Since the only file information miniaudio
    attempts to retrieve is the file size, I've implemented a fall back
    which uses the seek/tell/seek pattern when info retrieval is
    unavailable.
  - A fall back has been implemented for comparing wide character path
    extensions which performs a case-sensitive compare instead. This
    means that if you are using wide character paths, miniaudio will not
    detect an extension like "wav" and "WAV" as the same thing. This
    might be made more robust later if there is enough demand.

Public issue https://github.com/mackron/miniaudio/issues/1023
2025-08-07 13:45:11 +10:00
David Reid c87f207f4e Win32: Use CreateSemaphore() instead of CreateSemaphoreW()
This should improve compiler compatibility for those that do not
define `CreateSemaphoreW()`, such as NXDK.
2025-08-07 13:23:35 +10:00
David Reid 02ae7e41f0 Update dr_libs. 2025-08-07 13:18:56 +10:00