Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/silenium-dev/compose-av
Kotlin Library for AV processing with Compose integration
https://github.com/silenium-dev/compose-av
compose jni kotlin kotlin-library multimedia vaapi zero-copy
Last synced: 13 days ago
JSON representation
Kotlin Library for AV processing with Compose integration
- Host: GitHub
- URL: https://github.com/silenium-dev/compose-av
- Owner: silenium-dev
- License: agpl-3.0
- Created: 2024-07-23T16:51:36.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-12-23T19:29:00.000Z (16 days ago)
- Last Synced: 2024-12-24T23:02:38.445Z (15 days ago)
- Topics: compose, jni, kotlin, kotlin-library, multimedia, vaapi, zero-copy
- Language: Kotlin
- Homepage:
- Size: 8.27 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# compose-av
A kotlin library for audio and video playback in Jetpack Compose.
It is based on [libmpv](https://github.com/mpv-player/mpv) and
[compose-gl](https://github.com/silenium-dev/compose-gl).
**Disclaimer**: This library is in a very early stage of development, so it might not work as expected.## Features
- [ ] Compose video player (🚧)
- [ ] Compose audio player## Platforms
- [x] Linux
- [ ] Windows
- [ ] Android*Note: macOS/iOS support won't be implemented because of lack of development hardware.
If you want to contribute, feel free to do so.*## Usage
Gradle:
```kotlin
repositories {
maven {
name = "silenium-dev releases"
url = uri("https://reposilite.silenium.dev/releases")
}
}dependencies {
implementation("dev.silenium.compose.av:compose-av:0.1.0")
}
```The library currently requires the `libmpv` shared library to be installed on the system.
On Linux, you can install it using your package manager, e.g. on Ubuntu:```shell
sudo apt install libmpv2
```### Example
See the [Main.kt](src/test/kotlin/dev/silenium/multimedia/compose/Main.kt) in the test sources
on how to use the library.