Skip to content

Commit

Permalink
v0.29.1
Browse files Browse the repository at this point in the history
  • Loading branch information
wang-bin committed Aug 30, 2024
1 parent b3c7f16 commit 085dfc3
Show file tree
Hide file tree
Showing 5 changed files with 58 additions and 27 deletions.
54 changes: 31 additions & 23 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -853,7 +853,7 @@ jobs:
sshpass -p ${SF_PW} scp -o StrictHostKeyChecking=no mdk-*.md5 ${SF_USER}@frs.sourceforge.net:/home/frs/project/mdk-sdk/nightly/
Android:
runs-on: macos-latest
runs-on: ubuntu-latest # ndk 25 removed
env:
#FF_VER: 6.1 # 7.0 and master is very slow in avformat_find_stream_info
TARGET_OS: android
Expand Down Expand Up @@ -888,41 +888,20 @@ jobs:
EXTERNAL_DEP_CACHE_HIT: ${{ steps.external-dep-cache.outputs.cache-hit }}
working-directory: mdk
run: ../ci-before-build.sh
- name: Configure for armeabi-v7a
env:
ARCH: armeabi-v7a
MIN_API: 19 # android 4.4. ndk25
shell: bash
working-directory: mdk
run: cmake -DUSE_LTO=1 -DANDROID_LD=lld -DANDROID_ABI=${ARCH} -DANDROID_PLATFORM=android-${MIN_API} -DANDROID_TOOLCHAIN=clang -DANDROID_STL=c++_shared -DANDROID_PIE=ON -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk/25.2.9519653/build/cmake/android.toolchain.cmake -GNinja -H$PWD -B$PWD/build/${TARGET_OS}-${ARCH} -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_INSTALL_PREFIX=$PWD/mdk-sdk-${ARCH} -DCMAKE_VERBOSE_MAKEFILE=1
- name: Build for armeabi-v7a
shell: bash
working-directory: mdk
run: cmake --build build/${TARGET_OS}-armeabi-v7a
- name: Configure for arm64-v8a
env:
ARCH: arm64-v8a
shell: bash
working-directory: mdk
run: |
ls ${ANDROID_HOME}
MIN_API_64=21
[ $MIN_API -gt 21 ] && MIN_API_64=$MIN_API
cmake -DUSE_LTO=1 -DANDROID_LD=lld -DANDROID_ABI=${ARCH} -DANDROID_PLATFORM=android-${MIN_API_64} -DANDROID_TOOLCHAIN=clang -DANDROID_STL=c++_shared -DANDROID_PIE=ON -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -GNinja -H$PWD -B$PWD/build/${TARGET_OS}-${ARCH} -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_INSTALL_PREFIX=$PWD/mdk-sdk-${ARCH} -DCMAKE_VERBOSE_MAKEFILE=1
- name: Build for arm64-v8a
shell: bash
working-directory: mdk
run: cmake --build build/${TARGET_OS}-arm64-v8a
- name: Configure for x86
env:
ARCH: x86
MIN_API: 19 # android 4.4. ndk25
shell: bash
working-directory: mdk
run: cmake -DUSE_LTO=1 -DANDROID_LD=lld -DANDROID_ABI=${ARCH} -DANDROID_PLATFORM=android-${MIN_API} -DANDROID_TOOLCHAIN=clang -DANDROID_STL=c++_shared -DANDROID_PIE=ON -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk/25.2.9519653/build/cmake/android.toolchain.cmake -GNinja -H$PWD -B$PWD/build/${TARGET_OS}-${ARCH} -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_INSTALL_PREFIX=$PWD/mdk-sdk-${ARCH} -DCMAKE_VERBOSE_MAKEFILE=1
- name: Build for x86
shell: bash
working-directory: mdk
run: cmake --build build/${TARGET_OS}-x86
- name: Configure for x86_64
env:
ARCH: x86_64
Expand All @@ -936,6 +915,35 @@ jobs:
shell: bash
working-directory: mdk
run: cmake --build build/${TARGET_OS}-x86_64
- uses: nttld/setup-ndk@v1
id: setup-ndk
with:
ndk-version: r25c
local-cache: true
- name: Configure for armeabi-v7a
env:
ARCH: armeabi-v7a
MIN_API: 19 # android 4.4. ndk25
ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }}
shell: bash
working-directory: mdk
run: cmake -DUSE_LTO=1 -DANDROID_LD=lld -DANDROID_ABI=${ARCH} -DANDROID_PLATFORM=android-${MIN_API} -DANDROID_TOOLCHAIN=clang -DANDROID_STL=c++_shared -DANDROID_PIE=ON -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake -GNinja -H$PWD -B$PWD/build/${TARGET_OS}-${ARCH} -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_INSTALL_PREFIX=$PWD/mdk-sdk-${ARCH} -DCMAKE_VERBOSE_MAKEFILE=1
- name: Build for armeabi-v7a
shell: bash
working-directory: mdk
run: cmake --build build/${TARGET_OS}-armeabi-v7a
- name: Configure for x86
env:
ARCH: x86
MIN_API: 19 # android 4.4. ndk25
ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }}
shell: bash
working-directory: mdk
run: cmake -DUSE_LTO=1 -DANDROID_LD=lld -DANDROID_ABI=${ARCH} -DANDROID_PLATFORM=android-${MIN_API} -DANDROID_TOOLCHAIN=clang -DANDROID_STL=c++_shared -DANDROID_PIE=ON -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake -GNinja -H$PWD -B$PWD/build/${TARGET_OS}-${ARCH} -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_INSTALL_PREFIX=$PWD/mdk-sdk-${ARCH} -DCMAKE_VERBOSE_MAKEFILE=1
- name: Build for x86
shell: bash
working-directory: mdk
run: cmake --build build/${TARGET_OS}-x86
- name: Make SDK
shell: bash
working-directory: mdk
Expand Down
20 changes: 20 additions & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,28 @@
Change log:

# 0.29.1

- Android 64bit is built with 16KB page size support
- Supprt GL_EXT_EGL_image_storage for drm, via global option "eglimage.storage=1"
- VAAPI: prefer x11 display to support both EGL and GLX
- Add privacy manifest for apple platforms
- Improve demuxer cache
- Enable http reconnect
- Fix OpenGL symbols not resolved on android 15 emulator
- Fix snapshot in OpenGL renderers
- Fix snapshot callback not invoked if failed
- Fix muxer write after close
- Fix a decoder crash when stopping playback
- Fix waitFor(State::Stopped)
- Stop demuxer immediately if io is aborted.
- Apply ffmmpeg muxer options
- Prefer ffmpeg dynamic library even if statically linked. mainly used by iOS user provided FFmpeg.framework


# 0.29.0

- Support demuxer cache for http(s), can be enabled via `player.setProperty("demux.buffer.ranges", "8"/*or other positive int*/)`. `{count, "cache.ranges"}` event will be triggered when cached time ranges are created, dropped(via LRU cache) or merged. Other protocols can be enabled via player property `player.setProperty("demux.buffer.ranges", "http,https,proto1,proto2");`.
- Add `Player.bufferedTimeRanges()`
- Dolby vision: support reading metadata from av1 in all decoders, previously only supported by ffmpeg hwaccels and software decoder.
- Support pause/resume rtsp stream in `Player.set(State)`. Enable via `player.setProperty("reader.pause", "1");`.
- Record video from non-key frame if property "reader.starts_with_key" is "0"
Expand Down
2 changes: 1 addition & 1 deletion README.Android.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
## About SDK for Android
SDK is built with
- ffmpeg: https://sourceforge.net/projects/avbuild/files/android/ffmpeg-master-android-clang-lite-lto.tar.xz/download
- ndk r25b for 32bit, ndk 26 for b4bit
- ndk r25b for 32bit, ndk 27 for b4bit
- requires ndk r23 and later because of ndk abi break in r23

SDK can be used by any C or C++11 compiler, e.g. g++, clang
Expand Down
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,10 +150,13 @@ Install via [NuGet](https://www.nuget.org/packages/mdk) in Visual Studio for bot
<a href="https://www.xnview.com/en/xnviewmp"><img class="logo" src="https://www.xnview.com/img/app-xnviewmp-512.png" height=120 alt="XnViewMP"></a>
[![www.connecting-technology](https://static.wixstatic.com/media/85712a_fe1dd2a84e17437e913dcfcdc89f40a4.jpg/v1/fill/w_460,h_240,al_c,q_80,usm_0.66_1.00_0.01,enc_auto/85712a_fe1dd2a84e17437e913dcfcdc89f40a4.jpg)](https://www.connecting-technology.com)
<a href="https://apps.apple.com/us/app/kalismart/id1530155654"><img src="http://www.kalimind.com/assets/images/kalimind_logo.svg" alt="kalismart" height=120></a>
[NOTIONTHEORY](https://www.notiontheory.com/)
<a href="https://smartplayer.ru"><img src="https://static.tildacdn.com/tild3437-3132-4139-b365-373030343131/Group_100.svg" alt="smartplayer" width=120 height=120 style="background-color:black"></a>
<a href="https://smartplayer.ru"><img src="https://static.tildacdn.com/tild3730-3634-4463-a464-333634323465/Group_20.svg" alt="smartplayer" width=400 height=120 style="background-color:black"></a>
<!-- <a href="https://smartplayer.ru"><img src="https://static.tildacdn.com/tild3431-3533-4461-b365-386335306263/Group_101.svg" alt="smartplayer" width=600 height=120 style="background-color:black"></a> -->
[![](https://teleguard.com/images/logo.png)](https://teleguard.com)
[![](https://teleguard.com/images/logo.png)](https://teleguard.com)[!
![DaKanji](https://dakanji.app/wp-content/uploads/thegem-logos/logo_a496404d3d63fd29f344146e428d0992_2x.png)](https://dakanji.app)


[金嵘达科技](http://www.kingroda.com)
[爱玩宝](https://www.aiwanbao.com)
Expand Down
4 changes: 2 additions & 2 deletions nuget/mdk.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>mdk</id>
<version>0.29.0.0</version>
<version>0.29.1.0</version>
<title>MDK</title>
<authors>Wang Bin</authors>
<owners>Wang Bin</owners>
Expand All @@ -15,7 +15,7 @@
<summary>Cross platform multimedia development kit in C/C++</summary>
<releaseNotes>https://github.com/wang-bin/mdk-sdk/releases</releaseNotes>
<copyright>Copyright 2024</copyright>
<tags>Multimedia MediaPlayer VideoPlayer Video Player Playback HDR DolbyVision FFmpeg CrossPlatform UWP WOA WinUI3 OpenGL Vulkan D3D11 D3D12 BRAW Hap R3D</tags>
<tags>Multimedia MediaPlayer VideoPlayer Video Player Playback HDR DolbyVision FFmpeg CrossPlatform UWP WOA WinUI3 OpenGL Vulkan D3D11 D3D12 BRAW Hap R3D DCP</tags>
<readme>README.md</readme>
</metadata>
<files>
Expand Down

0 comments on commit 085dfc3

Please sign in to comment.