Skip to content

Commit

Permalink
Version 1.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
izzytwosheds committed Sep 16, 2020
1 parent 43d6040 commit 48225b3
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 6 deletions.
13 changes: 9 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@ In its current iteration LiTr supports:
- changing resolution and/or bitrate of a video track(s)
- changing bitrate of an audio track(s)
- overlaying bitmap watermark onto video track(s)
- applying different effects (brightness/contrast, saturation/hue, blur, etc.) to video pixels
- including/excluding tracks, which allows muxing/demuxing tracks
- transforming tracks individually (e.g. apply overlay to one video track, but not the other)
- positioning source video frame arbitrarily onto target video frame

By default, LiTr uses Android MediaCodec stack for hardware accelerated decoding/encoding and OpenGL for rendering. It also uses MediaExtractor and MediaMuxer to read/write media.

Expand All @@ -16,15 +18,15 @@ By default, LiTr uses Android MediaCodec stack for hardware accelerated decoding
Simply grab via Gradle:

```groovy
implementation 'com.linkedin.android.litr:litr:1.3.2'
implementation 'com.linkedin.android.litr:litr:1.4.0'
```
...or Maven:

```xml
<dependency>
<groupId>com.linkedin.android.litr</groupId>
<artifactId>litr</artifactId>
<version>1.3.2</version>
<version>1.4.0</version>
</dependency>

```
Expand Down Expand Up @@ -130,16 +132,18 @@ This API allows defining components and parameters per media track, thus allowin

You can use custom filters to modify video frames. Write your own in OpenGL as an implementation of `GlFilter` interface when you need to make extra draw operations which do not need access to source video frames. If you need to change how source video frame is rendered onto a target video frame, implement `GlFrameRender` interface. There are several filters already available from "filter pack" library, which is available via Gradle:

LiTr now has 40 new GPU accelerated video filters ported from [Mp4Composer-android](https://github.com/MasayukiSuda/Mp4Composer-android) and [android-gpuimage](https://github.com/cats-oss/android-gpuimage) projects. You can also create your own filter simply by configuring VideoFrameRenderFilter with your custom shader, with no extra coding!

```groovy
implementation 'com.linkedin.android.litr:litr-filters:1.3.2'
implementation 'com.linkedin.android.litr:litr-filters:1.4.0'
```
...or Maven:

```xml
<dependency>
<groupId>com.linkedin.android.litr</groupId>
<artifactId>litr-filters</artifactId>
<version>1.3.2</version>
<version>1.4.0</version>
</dependency>

```
Expand Down Expand Up @@ -180,6 +184,7 @@ This project is licensed under the BSD 2-Clause License - see the [LICENSE](LICE

* A huge thank you to [ypresto](https://github.com/ypresto/) for his pioneering work on [android-transcoder](https://github.com/ypresto/android-transcoder) project, which was an inspiration and heavy influence on LiTr
* A special thank you to [MasayukiSuda](https://github.com/MasayukiSuda) for his work on [Mp4Composer-android](https://github.com/MasayukiSuda/Mp4Composer-android) project, whose filters now power LiTr
* A special thank you to [android-gpuimage](https://github.com/cats-oss/android-gpuimage) project for amazing filter collection, which is now being migrated into LiTr
* A thank you to Google's AOSP CTS team for writing Surface to Surface rendering implementation in OpenGL, which became a foundation for GlRenderer in LiTr
* A shout out to my awesome colleagues Amita Sahasrabudhe, Long Peng and Keerthi Korrapati for contributions and code reviews
* A shout out to our designer Mauroof Ahmed for giving LiTr a visual identity
Expand Down
4 changes: 2 additions & 2 deletions constants.gradle
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
project.ext {
releaseVersion = '1.3.2'
releaseVersionCode = 10030002
releaseVersion = '1.4.0'
releaseVersionCode = 10040000
minSdkVersion = 18
targetSdkVersion = 28
compileSdkVersion = 29
Expand Down

0 comments on commit 48225b3

Please sign in to comment.