chore: remove VorbisSPI dependency

This commit is contained in:
Antoine Jaury
2026-09-30 11:18:54 +02:00
parent 705e9d32f7
commit eb94d55d69
4 changed files with 1 additions and 11 deletions
+1 -1
View File
@@ -64,7 +64,7 @@ First public release of **Chom Bev e Brezhoneg**.
- Targets Android, iOS, Desktop (JVM) and Web (JS + Wasm), all sharing the same - Targets Android, iOS, Desktop (JVM) and Web (JS + Wasm), all sharing the same
Compose Multiplatform UI. Only Android has been deeply tested for this version. Compose Multiplatform UI. Only Android has been deeply tested for this version.
- Audio playback backed by ExoPlayer (Android), AVFoundation (iOS), the browser - Audio playback backed by ExoPlayer (Android), AVFoundation (iOS), the browser
audio APIs (Web) and VorbisSPI (Desktop). audio APIs (Web).
- Light and dark themes; interface localised in French and Breton. - Light and dark themes; interface localised in French and Breton.
- Modular architecture: `core`, `data` and `feature` modules glued by a thin - Modular architecture: `core`, `data` and `feature` modules glued by a thin
`shared` module, with Koin dependency injection validated at build time. `shared` module, with Koin dependency injection validated at build time.
-4
View File
@@ -13,10 +13,6 @@ kotlin {
implementation(libs.media3.exoplayer) implementation(libs.media3.exoplayer)
implementation(libs.media3.common) implementation(libs.media3.common)
} }
jvmMain.dependencies {
// Desktop audio: Ogg Vorbis SPI so javax.sound.sampled can decode .ogg
implementation(libs.vorbisspi)
}
// webMain is the js + wasmJs intermediate source set from the default hierarchy template. // webMain is the js + wasmJs intermediate source set from the default hierarchy template.
webMain.dependencies { webMain.dependencies {
// Browser audio (HTMLAudioElement, document) for js + wasmJs // Browser audio (HTMLAudioElement, document) for js + wasmJs
@@ -17,10 +17,6 @@ import kotlin.time.Duration.Companion.microseconds
/** /**
* Desktop [AudioPlayer] backed by [javax.sound.sampled]. * Desktop [AudioPlayer] backed by [javax.sound.sampled].
*
* The Ogg Vorbis recordings are decoded to PCM by the VorbisSPI providers on the classpath, which
* the JDK [AudioSystem] discovers automatically, so loading works the same as any natively
* supported format.
*/ */
internal class JvmAudioPlayer : AudioPlayer { internal class JvmAudioPlayer : AudioPlayer {
private var clip: Clip? = null private var clip: Clip? = null
-2
View File
@@ -23,7 +23,6 @@ media3 = "1.11.0"
navigation3 = "1.1.1" navigation3 = "1.1.1"
okio = "3.18.1" okio = "3.18.1"
sentry = "0.27.0" sentry = "0.27.0"
vorbisspi = "1.0.3.3"
[libraries] [libraries]
# Gradle plugin artifacts, used by build-logic convention plugins only # Gradle plugin artifacts, used by build-logic convention plugins only
@@ -63,7 +62,6 @@ lifecycle-viewmodelNavigation3 = { module = "org.jetbrains.androidx.lifecycle:li
media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "media3" } media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "media3" }
media3-common = { module = "androidx.media3:media3-common", version.ref = "media3" } media3-common = { module = "androidx.media3:media3-common", version.ref = "media3" }
navigation3 = { module = "org.jetbrains.androidx.navigation3:navigation3-ui", version.ref = "navigation3" } navigation3 = { module = "org.jetbrains.androidx.navigation3:navigation3-ui", version.ref = "navigation3" }
vorbisspi = { module = "com.googlecode.soundlibs:vorbisspi", version.ref = "vorbisspi" }
wrappers-browser = { module = "org.jetbrains.kotlin-wrappers:kotlin-browser", version.ref = "kotlinWrappers" } wrappers-browser = { module = "org.jetbrains.kotlin-wrappers:kotlin-browser", version.ref = "kotlinWrappers" }
[plugins] [plugins]