Q.O.L updates #33
Open
SunnyVishnu3 wants to merge 3 commits into
Open
Conversation
…ngelog
changelog
1. AV1 Support via dav1d
Integrated dav1d (v1.5.3) for high-performance AV1 video decoding.
Updated setup.sh to handle meson and ninja dependencies for the build environment.
Added comprehensive cross-compilation support for all Android architectures (arm64, armeabi-v7a, x86, x86_64).
Configured FFmpeg build to natively link against libdav1d via --enable-libdav1d.
Updated documentation in README.md to reflect AV1 format support.
2. Expanded Codec Support
Vastly extended the FFmpeg build scope to support a wide range of legacy and modern formats:
Audio: MP2, APE, WavPack, TTA, Nellymoser, ATRAC3/ATRAC3+, MS ADPCM, IMA WAV ADPCM, WMA Lossless, WMA Pro, and Cook.
Video: MPEG-1, Theora, FFV1, DNxHD, H.263, WMV2, WMV3, VC-1, ProRes, RV40, MPEG-4, and MJPEG.
Implemented advanced FLAC metadata parsing to ensure proper initialization of the FLAC decoder.
3. Dolby Vision Handling
Introduced dynamic routing for Dolby Vision MIME types. The system now correctly identifies the underlying stream (H.264, HEVC, or AV1) to route it through the appropriate FFmpeg decoder while delegating metadata handling to the ExoPlayer layer.
Enhanced getExtraData logic to accurately combine initialization data blocks for Dolby Vision and other complex codecs (H.264, VC-1).
4. Renderer Optimization & Conflict Resolution
Modified NextRenderersFactory.kt to explicitly remove standard Media3 extension renderers (Libdav1dVideoRenderer, Av1VideoRenderer, etc.). This resolves conflicts by prioritizing the internal FfmpegVideoRenderer for superior handling of demanding content like 4K 60fps AV1.
Removed the redundant and unused FFmpegOnlyRenderersFactory.java.
5. Build System & Structural Refactoring
Library Versioning: Implemented --build-suffix=-exo in the FFmpeg build config. Updated CMake to link against lib<name>-exo.so, preventing namespace collisions with external FFmpeg libraries.
updated libs version and added more libs and deps for stability
added decoder section with filters support
added about library support
thumbnail generation and av1 thumbnail generate now delete thumbnail cache option added
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
updated nextlib with extended audio video codecs support with aar changelog changelog
Integrated dav1d (v1.5.3) for high-performance AV1 video decoding.
Updated setup.sh to handle meson and ninja dependencies for the build environment.
Added comprehensive cross-compilation support for all Android architectures (arm64, armeabi-v7a, x86, x86_64).
Configured FFmpeg build to natively link against libdav1d via --enable-libdav1d.
Updated documentation in README.md to reflect AV1 format support.
Vastly extended the FFmpeg build scope to support a wide range of legacy and modern formats: extended formats:-
Audio: MP2, APE, WavPack, TTA, Nellymoser, ATRAC3/ATRAC3+, MS ADPCM, IMA WAV ADPCM, WMA Lossless, WMA Pro, and Cook.
Video: MPEG-1, Theora, FFV1, DNxHD, H.263, WMV2, WMV3, VC-1, ProRes, RV40, MPEG-4, and MJPEG.
Implemented advanced FLAC metadata parsing to ensure proper initialization of the FLAC decoder.
Introduced dynamic routing for Dolby Vision MIME types. The system now correctly identifies the underlying stream (H.264, HEVC, or AV1) to route it through the appropriate FFmpeg decoder while delegating metadata handling to the ExoPlayer layer.
Enhanced getExtraData logic to accurately combine initialization data blocks for Dolby Vision and other complex codecs (H.264, VC-1).
Modified NextRenderersFactory.kt to explicitly remove standard Media3 extension renderers (Libdav1dVideoRenderer, Av1VideoRenderer, etc.). This resolves conflicts by prioritizing the internal FfmpegVideoRenderer for superior handling of demanding content like 4K 60fps AV1.
Removed the redundant and unused FFmpegOnlyRenderersFactory.java.
Library Versioning: Implemented --build-suffix=-exo in the FFmpeg build config. Updated CMake to link against lib-exo.so, preventing namespace collisions with external FFmpeg libraries.
updated libs version and added more libs and deps for stability and features
added decoder section with filters support
added about library support
Audio and Subtitle section added with many options
Thumbnail Generation added
Fixed av1 thumbnail not getting generate
Option added Delete thumbnail cache