Skip to content

Commit 19580c8

Browse files
committed
version 0.10.4
- Support macCatalyst - Support vulkan on apple sillicon - VT decoder: - Support VP9 on macOS 11+. Profile 0 and 2 are confirmed - Support more(all) semi-planar formats, output a format with the same chroma subsample size as original format, e.g. 'p410' for hevc yuv444p10le. - Fix high depth channel formats output error on apple sillicon. It's r10g10a10a2 for 10bit Y plane, but not support yet in renderer, so use p010('x420') - Add "hardware" property to enable/disable hardware acceleration - Add "width" and "height" property - Support HDR in mkv - Reduce compressed packet copy - VAAPI, VDPAU: fix not work since 0.10.2 - MFT video decoder: fix h264 constrained baseline profile check - CUDA decoder: fix chroma format - FFmpeg: - Fix a crash if avio open error - Fix "drop" option does not work correctly - Improve decoder switch in paused state - Fix can't switch to a new decoder via setVideoDecoders() since 0.10.0 - Fix a blank frame in gapless playback - Fix 2 crashes in player dtor, 1 race in setNextMedia(), 1 race/crash if faile to open a media - Examples: - Enable glfw for apple sillicon
1 parent 2d25908 commit 19580c8

11 files changed

+60
-32
lines changed

.github/workflows/build.yml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: Build
2-
2+
# TODO: nuget, vcpkg on macOS, $(brew --prefix llvm)/bin/clang (llvm11), llvm12 is default
33
on:
44
push:
55
schedule:
@@ -17,7 +17,7 @@ env:
1717
jobs:
1818
macOS:
1919
# See: https://docs.github.com/en/actions/configuring-and-managing-workflows/configuring-a-workflow#configuring-a-build-matrix
20-
runs-on: macos-11.0
20+
runs-on: macos-latest
2121
env:
2222
TARGET_OS: 'macOS'
2323
TARGET_ARCH: ${{ matrix.arch }}
@@ -36,8 +36,8 @@ jobs:
3636
fetch-depth: 1
3737
token: ${{ secrets.CLONE_PAT }}
3838
submodules: 'recursive'
39-
- name: Setup Xcode
40-
run: sudo xcode-select -s /Applications/Xcode_12.3.app
39+
# - name: Setup Xcode
40+
# run: sudo xcode-select -s /Applications/Xcode_12.4.app
4141
- name: 'Restore External Dep cache'
4242
id: external-dep-cache
4343
uses: actions/cache@v2
@@ -94,7 +94,7 @@ jobs:
9494
9595
9696
macCatalyst:
97-
runs-on: macos-11.0
97+
runs-on: macos-latest
9898
env:
9999
TARGET_OS: 'macCatalyst'
100100
strategy:
@@ -111,8 +111,8 @@ jobs:
111111
fetch-depth: 1
112112
token: ${{ secrets.CLONE_PAT }}
113113
submodules: 'recursive'
114-
- name: Setup Xcode
115-
run: sudo xcode-select -s /Applications/Xcode_12.3.app
114+
# - name: Setup Xcode
115+
# run: sudo xcode-select -s /Applications/Xcode_12.4.app
116116
- name: 'Restore External Dep cache'
117117
id: external-dep-cache
118118
uses: actions/cache@v2
@@ -716,6 +716,7 @@ jobs:
716716
shell: bash
717717
run: sshpass -p ${SF_PW} scp -o StrictHostKeyChecking=no mdk-sdk-${TARGET_OS}.tar.xz ${SF_USER}@frs.sourceforge.net:/home/frs/project/mdk-sdk/nightly/
718718

719+
# TODO: use macos-11.0 to use the latest ndk ANDROID_NDK_LATEST_HOME, ANDROID_SDK_ROOT
719720
Android:
720721
runs-on: ubuntu-latest
721722
env:

Changelog.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,32 @@
11
Change log:
22

3+
4+
0.10.4 - 2021-02-17
5+
6+
- Support macCatalyst
7+
- Support vulkan on apple sillicon
8+
- VT decoder:
9+
- Support VP9 on macOS 11+. Profile 0 and 2 are confirmed
10+
- Support more(all) semi-planar formats, output a format with the same chroma subsample size as original format, e.g. 'p410' for hevc yuv444p10le.
11+
- Fix high depth channel formats output error on apple sillicon. It's r10g10a10a2 for 10bit Y plane, but not support yet in renderer, so use p010('x420')
12+
- Add "hardware" property to enable/disable hardware acceleration
13+
- Add "width" and "height" property
14+
- Support HDR in mkv
15+
- Reduce compressed packet copy
16+
- VAAPI, VDPAU: fix not work since 0.10.2
17+
- MFT video decoder: fix h264 constrained baseline profile check
18+
- CUDA decoder: fix chroma format
19+
- FFmpeg:
20+
- Fix a crash if avio open error
21+
- Fix "drop" option does not work correctly
22+
- Improve decoder switch in paused state
23+
- Fix can't switch to a new decoder via setVideoDecoders() since 0.10.0
24+
- Fix a blank frame in gapless playback
25+
- Fix 2 crashes in player dtor, 1 race in setNextMedia(), 1 race/crash if faile to open a media
26+
- Examples:
27+
- Enable glfw for apple sillicon
28+
29+
330
0.10.3 - 2020-12-31
431

532
- Player.setMedia() will stop previous media

README.Android.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,5 @@ MediaCodec/AMediaCodec decoder will not be destroyed if app go to background, an
6363
- libmediandk and other java classes implemented in C++: https://github.com/wang-bin/AND
6464
- JNI Modern Interface: https://github.com/wang-bin/JMI
6565

66-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
66+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
6767
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

README.Linux.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ If ffmpeg any module is not set, it's searched in the following order
2020

2121

2222
## About SDK for Linux
23-
SDK is built by clang 11.0 with
23+
SDK is built by clang 12.0 with
2424
- ffmpeg: https://sourceforge.net/projects/avbuild/files/linux/ffmpeg-master-linux-clang-lite.tar.xz/download
2525
- libc++ 10.0.0
2626

@@ -89,5 +89,5 @@ N videos renderers for 1 player: multiwidnows url
8989
- OBS Studio plugin: https://github.com/wang-bin/obs-mdk
9090
- QtMultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
9191

92-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
92+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
9393
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

README.WinRT.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ If ffmpeg any module is not set, it's searched in the following order
2020

2121

2222
## About SDK for Windows Store
23-
SDK is built by clang-cl 11.0 + lld with
23+
SDK is built by clang-cl 12.0 + lld with
2424
- FFmpeg: https://sourceforge.net/projects/avbuild/files/windows-store/ffmpeg-master-windows-store-clang-static-lite.tar.xz/download
2525
- Windows SDK 10.0.19041.0
2626
- MSVC CRT 14.26.28801
@@ -62,5 +62,5 @@ Optional:
6262
- OBS Studio plugin: https://github.com/wang-bin/obs-mdk
6363
- QtMultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
6464

65-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
65+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
6666
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

README.Windows.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ If ffmpeg any module is not set, it's searched in the following order
2020

2121

2222
## About SDK for Windows Desktop
23-
SDK is built by clang-cl 11.0 + lld with
23+
SDK is built by clang-cl 12.0 + lld with
2424
- FFmpeg: https://sourceforge.net/projects/avbuild/files/windows-desktop/ffmpeg-master-windows-desktop-clang-static-lite.tar.xz/download
2525
- Windows SDK 10.0.19041.0
2626
- MSVC CRT 14.26.28801
@@ -84,5 +84,5 @@ N videos renderers for 1 player: multiwidnows url
8484
- OBS Studio plugin: https://github.com/wang-bin/obs-mdk
8585
- QtMultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
8686

87-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
87+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
8888
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

README.iOS.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ If ffmpeg any module is not set, it's searched in the following order
2323
https://github.com/wang-bin/swiftMDK
2424

2525
## About SDK for iOS
26-
SDK is built by Xcode 12.3 with
26+
SDK is built by Xcode 12.4 with
2727
- ffmpeg: https://sourceforge.net/projects/avbuild/files/iOS/ffmpeg-master-iOS-lite.tar.xz/download
2828
- Minimal system: iOS 8.0
2929
- Support Metal renderer
@@ -34,7 +34,7 @@ SDK is built by Xcode 12.3 with
3434

3535
### Supported Video Decoders:
3636
- FFmpeg. Direct rendering via property "pool=CVPixelBuffer"
37-
- VT: videotoolbox hardware decoder. avcC, hvcC support. propertyes: threads, realTime, async, format. e.g. `player.setVideoDecoders({"VT:format=nv12:async=1", "FFmpeg"})`
37+
- VT: videotoolbox hardware decoder. h264, hevc support. propertyes: threads, realTime, async, format, hardware, width, height. e.g. `player.setVideoDecoders({"VT:format=nv12:async=1", "FFmpeg"})`
3838
- VideoToolbox: via ffmpeg
3939

4040
### Use in CMake Projects
@@ -58,5 +58,5 @@ Choose any of
5858
- OBS Studio plugin: https://github.com/wang-bin/obs-mdk
5959
- QtMultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
6060

61-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
61+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
6262
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

README.macOS.md

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,14 @@ If ffmpeg any module is not set, it's searched in the following order
2323
https://github.com/wang-bin/swiftMDK
2424

2525
## About SDK for macOS
26-
SDK is built by Xcode 12.3 with
27-
- ffmpeg: https://sourceforge.net/projects/avbuild/files/macOS/ffmpeg-master-macOS-lite.tar.xz/download
28-
29-
SDK can be used by any C or C++11 compiler, e.g. g++, clang
3026

31-
Support Apple sillicon
27+
- Support Apple sillicon
28+
- Support Metal and Vulkan renderer
29+
- Support VP9 on macOS 11+
30+
- Support X11 if runtime libraries exist
3231

33-
Support Metal and Vulkan renderer.
34-
35-
Support X11 if runtime libraries exist.
32+
SDK is built by Xcode 12.4 with
33+
- ffmpeg: https://sourceforge.net/projects/avbuild/files/macOS/ffmpeg-master-macOS-lite.tar.xz/download
3634

3735
### macOS 10.15+
3836
Executables download from internet are not able to run. Try
@@ -55,7 +53,7 @@ Optional:
5553

5654
### Supported Video Decoders:
5755
- FFmpeg. Direct rendering via property "pool=CVPixelBuffer"
58-
- VT: videotoolbox hardware decoder. avcC, hvcC support. propertyes: threads, realTime, async, format. e.g. -c:v VT:format=nv12:async=1
56+
- VT: videotoolbox hardware decoder. h264, hevc, vp9 support. propertyes: threads, realTime, async, format, hardware, width, height. e.g. `player.setVideoDecoders({"VT:format=nv12:async=1", "FFmpeg"})`
5957
- VideoToolbox: via ffmpeg
6058

6159
VT default use async mode, and the performance is better performance then FFmpeg's sync VideoToolbox
@@ -91,5 +89,5 @@ Choose any of
9189
- OBS Studio plugin: https://github.com/wang-bin/obs-mdk
9290
- QtMultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
9391

94-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
92+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
9593
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

README.rpi.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ In mesa vc4/6 driver environment(fake/full kms), hardware decoder is available,
5858

5959
Tested on rpi1 and rpi3.
6060

61+
> Note: the latest sdk links against libGL.so.1, so no need to set LD_PRELOAD.
62+
6163
### Use in CMake Projects
6264
```
6365
include(mdk-sdk-dir/lib/cmake/FindMDK.cmake)
@@ -69,5 +71,5 @@ Tested on rpi1 and rpi3.
6971
- OBS Studio plugin: https://github.com/wang-bin/obs-mdk
7072
- QtMultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
7173

72-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
74+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
7375
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

README.sunxi.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ If ffmpeg any module is not set, it's searched in the following order
2323

2424
mdk sdk for linux sunxi, with allwinner cedarv and vdpau decoder support
2525

26-
SDK is cross built by clang 11.0 with
26+
SDK is cross built by clang 12.0 with
2727
- cmake toolchain file https://github.com/wang-bin/cmake-tools/blob/master/sunxi.clang.cmake
2828
- sysroot: https://sourceforge.net/projects/avbuild/files/sunxi/sunxi-sysroot.tar.xz/download
2929
- ffmpeg: https://sourceforge.net/projects/avbuild/files/sunxi/ffmpeg-master-sunxi-clang-lite.tar.xz/download
@@ -77,5 +77,5 @@ if default audio device does not sound correctly, try to change the device name
7777
- OBS Studio plugin: https://github.com/wang-bin/obs-mdk
7878
- QtMultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
7979

80-
Copyright (c) 2016-2020 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
80+
Copyright (c) 2016-2021 WangBin(the author of QtAV) <wbsecg1 at gmail.com>
8181
Free for opensource softwares, non-commercial softwares, QtAV donors and contributors.

nuget/mdk.nuspec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
33
<metadata>
44
<id>mdk</id>
5-
<version>0.10.3.0</version>
5+
<version>0.10.4.0</version>
66
<title>MDK</title>
77
<authors>Wang Bin</authors>
88
<owners>Wang Bin</owners>
@@ -14,7 +14,7 @@
1414
<description>C/C++ Multimedia Development Kit</description>
1515
<summary>Cross platform multimedia development kit in C/C++</summary>
1616
<releaseNotes>https://github.com/wang-bin/mdk-sdk/releases</releaseNotes>
17-
<copyright>Copyright 2020</copyright>
17+
<copyright>Copyright 2021</copyright>
1818
<tags>Multimedia MediaPlayer VideoPlayer Video Player Playback SDK HDR FFmpeg native CrossPlatform UWP Win32 cross-platform OpenGL OpenGLES D3D11</tags>
1919
</metadata>
2020
<files>

0 commit comments

Comments
 (0)