22[ ![ Release] ( https://img.shields.io/github/release/natario1/Transcoder.svg )] ( https://github.com/natario1/Transcoder/releases )
33[ ![ Issues] ( https://img.shields.io/github/issues-raw/natario1/Transcoder.svg )] ( https://github.com/natario1/Transcoder/issues )
44
5+ ⠀ ; <!-- Hack to add whitespace -->
6+
7+ <p align =" center " >
8+ <img src =" static/banner.png " width =" 100% " >
9+ </p >
10+
11+ * Looking for a powerful camera library to take videos? Take a look at our [ CameraView] ( https://github.com/natario1/CameraView ) .*
12+
513# Transcoder
614
715Transcodes and compresses video files into the MP4 format, with audio support, using hardware accelerated Android codecs available on the device. Works on API 18+.
@@ -10,6 +18,22 @@ Transcodes and compresses video files into the MP4 format, with audio support, u
1018implementation 'com.otaliastudios:transcoder:0.7.0'
1119```
1220
21+ - Fast transcoding to AAC/AVC
22+ - Hardware accelerated
23+ - Multithreaded
24+ - Convenient, fluent API
25+ - Concatenate multiple video and audio tracks [[ docs]] ( #video-concatenation )
26+ - Choose output size, with automatic cropping [[ docs]] ( #video-size )
27+ - Choose output rotation [[ docs]] ( #video-rotation )
28+ - Choose output speed [[ docs]] ( #video-speed )
29+ - Choose output frame rate [[ docs]] ( #other-options )
30+ - Choose output audio channels [[ docs]] ( #audio-strategies )
31+ - Choose output audio sample rate [[ docs]] ( #audio-strategies )
32+ - Override frames timestamp, e.g. to slow down the middle part of the video [[ docs]] ( #time-interpolation )
33+ - Error handling [[ docs]] ( #listening-for-events )
34+ - Configurable validators to e.g. avoid transcoding if the source is already compressed enough [[ docs]] ( #validators )
35+ - Configurable video and audio strategies [[ docs]] ( #track-strategies )
36+
1337⠀ ; <!-- Hack to add whitespace -->
1438
1539<p align =" center " >
@@ -18,6 +42,12 @@ implementation 'com.otaliastudios:transcoder:0.7.0'
1842
1943⠀ ; <!-- Hack to add whitespace -->
2044
45+ * This project started as a fork of [ ypresto/android-transcoder] ( https://github.com/ypresto/android-transcoder ) .
46+ With respect to the source project, which misses most of the functionality listed above,
47+ we have also fixed a huge number of bugs and are much less conservative when choosing options
48+ that might not be supported. The source project will always throw - for example, accepting only 16:9,
49+ AVC Baseline Profile videos - we prefer to try and let the codec fail if it wants to* .
50+
2151Using Transcoder in the most basic form is pretty simple:
2252
2353``` java
@@ -36,33 +66,19 @@ Transcoder.into(filePath)
3666
3767Take a look at the demo app for a real example or keep reading below for documentation.
3868
39- ## Features
69+ ## Sponsors
4070
41- - Fast transcoding to AAC/AVC
42- - Hardware accelerated
43- - Multithreaded
44- - Convenient, fluent API
45- - Concatenate multiple video and audio tracks [[ docs]] ( #video-concatenation )
46- - Choose output size, with automatic cropping [[ docs]] ( #video-size )
47- - Choose output rotation [[ docs]] ( #video-rotation )
48- - Choose output speed [[ docs]] ( #video-speed )
49- - Choose output frame rate [[ docs]] ( #other-options )
50- - Choose output audio channels [[ docs]] ( #audio-strategies )
51- - Choose output audio sample rate [[ docs]] ( #audio-strategies )
52- - Override frames timestamp, e.g. to slow down the middle part of the video [[ docs]] ( #time-interpolation )
53- - Error handling [[ docs]] ( #listening-for-events )
54- - Configurable validators to e.g. avoid transcoding if the source is already compressed enough [[ docs]] ( #validators )
55- - Configurable video and audio strategies [[ docs]] ( #track-strategies )
71+ Transcoder is trusted and supported by [ ShareChat] ( https://sharechat.com/ ) , a social media app with over 14 million daily active users.
5672
57- * This project started as a fork of [ ypresto/android-transcoder ] ( https://github.com/ypresto/android-transcoder ) .
58- With respect to the source project, which misses most of the functionality listed above,
59- we have also fixed a huge number of bugs and are much less conservative when choosing options
60- that might not be supported. The source project will always throw - for example, accepting only 16:9,
61- AVC Baseline Profile videos - we prefer to try and let the codec fail if it wants to * .
73+ < p align = " center " >
74+ < img src = " static/sharechat.png " width = " 100% " >
75+ </ p >
76+
77+ Feel free to
< a href = " mailto:[email protected] " >contact me</ a > for support, consulting or any other business-related question .
6278
6379## Setup
6480
65- This library requires API level 18 (Android 4.3, JELLY_BEAN_MR2 ) or later.
81+ This library requires API level 18 (Android 4.3) or later.
6682If your app targets older versions, you can override the minSdkVersion by
6783adding this line to your manifest file:
6884
0 commit comments