Skip to content
zt64Public

About

Kotlin Multiplatform wrapper for FFmpeg

Resources

Stars

61 stars

Watchers

1 watching

Forks

Repository files navigation

ffmpeg-kt

Maven Central Version GitHub License

Kotlin multiplatform wrapper for FFmpeg. This library aims to provide a Kotlin-friendly API for FFmpeg to make it easier to work with multimedia files. It is designed to be modular, so you can use only the parts of FFmpeg that you need.

Supported Platforms

  • Linux (x86_64)
  • Windows (x86_64)
  • macOS (x86_64)
  • Android (armeabi-v7a, arm64-v8a, x86, x86_64)
  • JVM

Setup

Note

FFmpegKt is not yet published. Development is ongoing, but progress is currently slow due to limited free time.

FFmpegKt is split up into multiple modules to keep modularization and dependencies clean.

Gradle

Version Catalog
[versions]
ffmpeg-kt = "x.y.z"

[libraries]
# Required
ffmpeg-kt-core = { module = "dev.zt64:ffmpeg-kt-core", version.ref = "ffmpeg-kt" } # Core media handling: encoding, decoding, and container format support

# Optional
ffmpeg-kt-filter = { module = "dev.zt64:ffmpeg-kt-filter", version.ref = "ffmpeg-kt" } # Audio/Video filtering
ffmpeg-kt-device = { module = "dev.zt64:ffmpeg-kt-device", version.ref = "ffmpeg-kt" } # Multimedia device input/output
ffmpeg-kt-swscale = { module = "dev.zt64:ffmpeg-kt-swscale", version.ref = "ffmpeg-kt" } # Image scaling and format conversion
ffmpeg-kt-swresample = { module = "dev.zt64:ffmpeg-kt-swresample", version.ref = "ffmpeg-kt" } # Audio resampling

Usage

As of now, the API is still in development and is subject to change. See tests for examples on how to use the different modules. Documentation will be added in the future.

Contributing

Contributions are welcome and appreciated

Acknowledgments

  • PyAV - For serving as inspiration in designing a user-friendly API

License

This project is licensed under the GNU GPL v3.0 License - see the LICENSE file for details

About

Kotlin Multiplatform wrapper for FFmpeg

Resources

Stars

61 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages