Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/anilbeesetti/nextlib
NextLib for Next Player
https://github.com/anilbeesetti/nextlib
exoplayer ffmpeg ffmpeg-android media3 video-decoder
Last synced: about 6 hours ago
JSON representation
NextLib for Next Player
- Host: GitHub
- URL: https://github.com/anilbeesetti/nextlib
- Owner: anilbeesetti
- License: gpl-3.0
- Created: 2023-07-20T05:07:20.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-18T02:16:50.000Z (5 months ago)
- Last Synced: 2024-09-18T05:56:05.542Z (5 months ago)
- Topics: exoplayer, ffmpeg, ffmpeg-android, media3, video-decoder
- Language: C++
- Homepage: https://github.com/anilbeesetti/nextplayer
- Size: 330 KB
- Stars: 65
- Watchers: 4
- Forks: 19
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# NextLib
[![Build nextlib](https://github.com/anilbeesetti/nextlib/actions/workflows/build.yaml/badge.svg)](https://github.com/anilbeesetti/nextlib/actions/workflows/build.yaml) [![](https://jitpack.io/v/anilbeesetti/nextlib.svg)](https://jitpack.io/#anilbeesetti/nextlib)
NextLib is a library for adding ffmpeg codecs to [Media3](https://github.com/androidx/media).
## Currently supported decoders
- **Audio**: Vorbis, Opus, Flac, Alac, pcm_mulaw, pcm_alaw, MP3, Amrnb, Amrwb, AAC, AC3, EAC3, dca, mlp, truehd
- **Video**: H.264, HEVC, VP8, VP9## Setup
NextLib is available at JitPack's Maven repo.
First, you have to add the jitpack's maven repo to your build.gradle
Kotlin DSL:
```kotlin
repositories {
maven { url = uri("https://jitpack.io") }
}
```Groovy DSL:
```gradle
repositories {
maven { url 'https://jitpack.io' }
}
```Now, you have to add the dependency to nextlib in your build.gradle
Kotlin DSL:
```kotlin
dependencies {
implementation("com.github.anilbeesetti.nextlib:nextlib-media3ext:INSERT_VERSION_HERE") // To add media3 software decoders and extensions
implementation("com.github.anilbeesetti.nextlib:nextlib-mediainfo:INSERT_VERSION_HERE") // To get media info through ffmpeg
}
```Groovy DSL:
```gradle
dependencies {
implementation "com.github.anilbeesetti.nextlib:nextlib-media3ext:INSERT_VERSION_HERE" // To add media3 software decoders and extensions
implementation "com.github.anilbeesetti.nextlib:nextlib-mediainfo:INSERT_VERSION_HERE" // To get media info through ffmpeg
}
```## Usage
To use Ffmpeg decoders in your app, Add `NextRenderersFactory` (is one to one compatible with DefaultRenderersFactory) to `ExoPlayer`
```kotlin
val renderersFactory = NextRenderersFactory(applicationContext)ExoPlayer.Builder(applicationContext)
.setRenderersFactory(renderersFactory)
.build()
```