Skip to content

Releases: Javernaut/MediaFile

v2.0.0

29 Nov 15:04
ce4a23a
Compare
Choose a tag to compare

Major release is here with new APIs and breaking changes.

As of now there is a single entry point (MediaFileFactory) and clear and distinct requests (MediaSource), which support multiple input types: files, file descriptors and content Uris. No more attempts to reconstruct the file path behind a Uri, client apps are welcome to implement it on their side. See PathUtil that was used before.

The 2.0 release makes use of fd protocol (FFmpeg 6) and content protocol (FFmpeg 7), along with the good old file. The pipe was dropped in the favour of fd. This is just an implementation detail.

No more filtering of the available media streams by MediaType. It is up to a client to do such a thing. The MediaInfo class is media type agnostic.

The FrameLoader still serves the purpose of being an example of how one can extend the library and be able to work with an opened AVFormatContext* really fast.

MediaFile and FrameLoader are AutoClosable, so don’t forget to clean up after you are done.

Forwarding of the FFmpeg's logs into LogCat was added. It is disabled by default.

The MediaFile and ffmpeg-android-maker (as a dependency) projects were updated to produce shared libraries compatible with 16 kb page size systems (Android 15+).

See the README for more datails.

v1.1.0

12 Nov 07:17
Compare
Choose a tag to compare

Changes in this release:

  • The ffmpeg-android-maker is updated to v2.9 (which uses FFmpeg 6.1 and libdav1d 1.3.0);
  • The compilation of both ffmpeg-android-maker and MediaFile is done with Android NDK r26b, which supports only Android API Level 21 and above. That is why the minSdk for MediaFile was increased to 21 as well.

v1.0.3

26 Mar 13:25
Compare
Choose a tag to compare

Minor release featuring:

  • Defining a common MediaStream interface for media streams of all kinds that exposes basic info;
  • The ffmpeg-android-maker is updated to v2.7 (which uses FFmpeg 5.0 and libdav1d 1.0.0);

v1.0.2

25 Oct 15:49
Compare
Choose a tag to compare

Minor release featuring:

  • New API for getting the guessed frame rate of a video stream;
  • The ffmpeg-android-maker is updated to v2.6.1 (which uses FFmpeg 4.4.1 and libdav1d 0.9.2);
  • Native libraries size reduction.

v1.0.1

23 Aug 16:08
Compare
Choose a tag to compare

Version naming correction. No other diff from 1.0.0.

Initial release

23 Aug 13:17
Compare
Choose a tag to compare

The library was extracted from WhatTheCodec app.
It is based on ffmpeg-android-maker v2.5.2.