Skip to content

Commit 4e670ed

Browse files
committed
Update JUCE to 8.0.11
This update allows building with ASIO support using the ASIO sources bundled with JUCE. The documentation regarding a special build for ASIO support is no longer needed. The dual-licensing will remain for two reasons: 1. Any licensing change is always annoying. 2. The flexibility was valuable in the past, so it might also be worth it again in the future.
1 parent af3844d commit 4e670ed

File tree

4 files changed

+6
-27
lines changed

4 files changed

+6
-27
lines changed

CMakeLists.txt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -143,14 +143,9 @@ target_compile_definitions(MStarPlayer PRIVATE
143143
JUCE_APPLICATION_VERSION_STRING="$<TARGET_PROPERTY:MStarPlayer,JUCE_VERSION>"
144144
)
145145

146-
if (ASIO_PATH)
147146
target_compile_definitions(MStarPlayer PRIVATE
148147
JUCE_ASIO=1
149148
)
150-
target_include_directories(MStarPlayer PRIVATE
151-
${ASIO_PATH}
152-
)
153-
endif()
154149

155150
juce_add_binary_data(BinaryData SOURCES
156151
Icons/oxygen/media-eject.png

Changelog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1010
### Changed
1111

1212
* **Breaking Change**: Respect `XDG_CONFIG_HOME` on Linux.
13+
* Official version built with ASIO support.
1314

1415
## [1.2.0] - 2025-04-15
1516

JUCE

Submodule JUCE updated 1493 files

README.md

Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@ Multi-*channel*, multi-*track*, multi-*player* player for audio files.
33

44
## Features
55
* Supports basic audio file types like WAV and MP3
6-
* Output to ASIO devices\*
6+
* Output to ASIO devices
77
* Freely configure output channels
88
* Play multi-track recordings consisting of one file per track
99

10-
\* Requires a custom build, see [below](#how-to-compile).
11-
1210
## Download
1311
Precompiled binaries are available for download:
1412
* [Windows](http://serviushack.space/MStarPlayer/MStarPlayer.zip)
@@ -25,8 +23,7 @@ Pull requests are always welcome to improve the current code or add new features
2523
1. Get [CMake](https://cmake.org/).
2624
2. Get [Visual Studio 2022](https://www.visualstudio.com/downloads/).
2725
3. Clone this repository, including its submodule.
28-
4. Download the [ASIO SDK](https://www.steinberg.net/de/company/developer.html) and extract it.
29-
5. Call cmake like this: `cmake -S . -B build_dir -DASIO_PATH=path/to/asio/sdk/common`
26+
5. Call cmake like this: `cmake -S . -B build_dir`
3027
6. Build: `cmake --build build_dir`
3128

3229
### Format Source Code
@@ -37,28 +34,14 @@ The format the source code according to the .clang-format file:
3734

3835
## License
3936

40-
M\*Player's own code is dual-licensed. This makes licensing a bit complicated but allows building it with ASIO.
37+
M\*Player's own code is historically dual-licensed for ASIO support (see 603bbf4d1aad276f95919fe6f122a1f1b213fb41).
38+
This makes licensing a bit complicated but keeps the flexibility that was beneficial in the past.
4139

4240
Component | License
4341
---------------|--------
4442
Icons | LGPL
4543
JUCE | see https://github.com/WeAreROLI/JUCE
4644
M\*Player code | GPL and ISC
4745

48-
The ISC version of the code can be used together with a JUCE license and an ASIO SDK license to build M\*Player with ASIO support.
49-
50-
51-
### Why is there no ASIO support anymore?
52-
53-
The ASIO SDK and open source code are not compatible. To make it short this would have been the options:
54-
55-
M\*Player license | ASIO SDK | JUCE restriction
56-
------------------|----------|-----------------
57-
GPL | no | none
58-
proprietary | yes | forced splashscreen
59-
60-
The dual-licensing still allows everyone to build M\*Player with ASIO support given they have a proper license for the ASIO SDK and JUCE.
61-
62-
6346
## Notes
6447
Unnecessary binary data and the ASIO framework have been removed from the commit history. This means older revisions might not compile.

0 commit comments

Comments
 (0)