- Notifications
You must be signed in to change notification settings - Fork178
🎞 Hardware-accelerated video transcoding using Android MediaCodec APIs. Supports cropping, concatenation, clipping, audio processing, video speed and much more.
License
deepmedia/Transcoder
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Transcodes and compresses video files into the MP4 format, with audio support, using hardware-acceleratedAndroid codecs available on the device. Works on API 21+.
- Fast transcoding to AAC/AVC
- Hardware accelerated
- Convenient, fluent API
- Thumbnails support
- Concatenate multiple video and audio tracks[docs]
- Clip or trim video segments[docs]
- Choose output size, with automatic cropping[docs]
- Choose output rotation[docs]
- Choose output speed[docs]
- Choose output frame rate[docs]
- Choose output audio channels[docs]
- Choose output audio sample rate[docs]
- Override frames timestamp, e.g. to slow down the middle part of the video[docs]
- Error handling[docs]
- Configurable validators to e.g. avoid transcoding if the source is already compressed enough[docs]
- Configurable video and audio strategies[docs]
// build.gradle.ktsdependencies { implementation("io.deepmedia.community:transcoder-android:0.11.2")}
This project started as a fork ofypresto/android-transcoder.With respect to the source project, which misses most of the functionality listed above,we have also fixed a huge number of bugs and are much less conservative when choosing optionsthat might not be supported. The source project will always throw - for example, accepting only 16:9,AVC Baseline Profile videos - we prefer to try and let the codec fail if it wants to.
Transcoder is trusted and supported byShareChat, a social media app withover 100 million downloads.
Please check outthe official website for setup instructions and documentation.You may also check the demo app (under/demo) for a complete example.
Transcoder.into(filePath) .addDataSource(context, uri)// or... .addDataSource(filePath)// or... .addDataSource(fileDescriptor)// or... .addDataSource(dataSource) .setListener(object:TranscoderListener {overridefunonTranscodeProgress(progress:Double)=UnitoverridefunonTranscodeCompleted(successCode:Int)=UnitoverridefunonTranscodeCanceled()=UnitoverridefunonTranscodeFailed(exception:Throwable)=Unit }).transcode()
About
🎞 Hardware-accelerated video transcoding using Android MediaCodec APIs. Supports cropping, concatenation, clipping, audio processing, video speed and much more.
Topics
Resources
License
Code of conduct
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
