mdk-compose

Wraps MDK player for Compose Multiplatform, supporting various rendering methods. Features include media playback, but is still under development with pending platform support and API enhancements.

Android JVMJVMKotlin/Native
GitHub stars1
Open issues0
LicenseApache License 2.0
Creation dateover 1 year ago

Last activityover 1 year ago
Latest release0.0.2 (over 1 year ago)

mdk-compose

MDK player wrapper for Compose-Multiplatform Under development, not ready at all

Compatibility

  • Android
    • [x] SufaceView
    • [x] Vulkan
    • [x] GL
  • iOS
    • [x] Metal
    • [ ] UIView
  • Desktop
    • [ ] macOS
    • [ ] Windows

TO DO :

  • [ ] Windows
  • [ ] macOS
  • [ ] fix issues
  • [ ] iOS UIView
  • [ ] Expose more APIs
  • [x] Publish artifacts
  • [ ] Subtitles styling configuration

Usage:

val player = rememberPlayer()
PlayerView(
  modifier = Modifier.fillMaxSize(),
  player = player,
)
LaunchedEffect(Unit) {
  player.setMedia(url)
  player.prepare().onSuccess { player.play() }
}
DisposableEffect(Unit) {
  onDispose { player.release() }
}
Android JVMJVMKotlin/Native
GitHub stars1
Open issues0
LicenseApache License 2.0
Creation dateover 1 year ago

Last activityover 1 year ago
Latest release0.0.2 (over 1 year ago)

mdk-compose

MDK player wrapper for Compose-Multiplatform Under development, not ready at all

Compatibility

  • Android
    • [x] SufaceView
    • [x] Vulkan
    • [x] GL
  • iOS
    • [x] Metal
    • [ ] UIView
  • Desktop
    • [ ] macOS
    • [ ] Windows

TO DO :

  • [ ] Windows
  • [ ] macOS
  • [ ] fix issues
  • [ ] iOS UIView
  • [ ] Expose more APIs
  • [x] Publish artifacts
  • [ ] Subtitles styling configuration

Usage:

val player = rememberPlayer()
PlayerView(
  modifier = Modifier.fillMaxSize(),
  player = player,
)
LaunchedEffect(Unit) {
  player.setMedia(url)
  player.prepare().onSuccess { player.play() }
}
DisposableEffect(Unit) {
  onDispose { player.release() }
}