Skip to content

Commit f01fa4d

Browse files
committed
version 0.11.1
- Deprecate Player.setState(State), use Player.set(State) - Add VideoFrame.save() to encode and save as a file - Buffer range for realtime streams(rtsp, rtp etc.) is unlimited by default - Unify pixel format channel map algorithm. Fix incorrect color for some formats(e.g. nv21) - Ignore incorrect hdr metadata - Allow renderVideo() in RenderCallback - VT decoder: - Support jpeg, more prores profiles - Support h264, hevc GBRP 8bit input pixel format - MFT: - Fix h264 profile check - Add property "blacklist", default is "mpeg4", mpeg4 is not well supported so disabled for now - FFmpeg: - continue to decode by default if error ocurrs. can stop decoding by setting property "error=0" - Use 4.4 instead of master because of abi break - Auto reset log handler to fix potential crash when exiting - Fix seek on pause may never be executed forever without resume playback - Fix endless wait if seek near EOF in loop mode - Fix license check, appid is utf8. License generator and validator is opensource now as [appke](https://github.com/wang-bin/appkey) - Fix crash if snapshot failed
1 parent bcd9d05 commit f01fa4d

File tree

3 files changed

+83
-32
lines changed

3 files changed

+83
-32
lines changed

Changelog.md

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

3+
0.11.1 - 2021-05-16
4+
5+
- Deprecate Player.setState(State), use Player.set(State)
6+
- Add VideoFrame.save() to encode and save as a file
7+
- Buffer range for realtime streams(rtsp, rtp etc.) is unlimited by default
8+
- Unify pixel format channel map algorithm. Fix incorrect color for some formats(e.g. nv21)
9+
- Ignore incorrect hdr metadata
10+
- Allow renderVideo() in RenderCallback
11+
- VT decoder:
12+
- Support jpeg, more prores profiles
13+
- Support h264, hevc GBRP 8bit input pixel format
14+
- MFT:
15+
- Fix h264 profile check
16+
- Add property "blacklist", default is "mpeg4", mpeg4 is not well supported so disabled for now
17+
- FFmpeg:
18+
- continue to decode by default if error ocurrs. can stop decoding by setting property "error=0"
19+
- Use 4.4 instead of master because of abi break
20+
- Auto reset log handler to fix potential crash when exiting
21+
- Fix seek on pause may never be executed forever without resume playback
22+
- Fix endless wait if seek near EOF in loop mode
23+
- Fix license check, appid is utf8. License generator and validator is opensource now as [appke](https://github.com/wang-bin/appkey)
24+
- Fix crash if snapshot failed
25+
26+
327
0.11.0 - 2021-03-31
428

529
- API changes:

README.md

Lines changed: 58 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,27 @@
22

33
[![Build Status](https://dev.azure.com/kb137035/mdk/_apis/build/status/mdk-CI-yaml?branchName=master)](https://dev.azure.com/kb137035/mdk/_build/latest?definitionId=2&branchName=master)
44

5-
**Download **[Nightly Build SDK](https://sourceforge.net/projects/mdk-sdk/files/nightly/)
5+
**Download** [Nightly Build SDK](https://sourceforge.net/projects/mdk-sdk/files/nightly/)
66

77
[Changelog](https://github.com/wang-bin/mdk-sdk/blob/master/Changelog.md)
88

99
## Features
10-
- Simple and powerful API set
11-
- Cross platform: Windows, UWP, Linux, macOS, Android, iOS, Raspberry Pi
12-
- Hardware accelerated decoding and 0-copy GPU rendering for all platforms
13-
- OpenGL, D3D11, Vulkan and Metal rendering w/ or w/o user provided context
14-
- Integrated with any gui toolkits or apps via OpenGL, D3D11, Vulkan and Metal (OBS, Qt, SDL, glfw, SFML etc.) easily
15-
- Seamless/Gapless media and bitrate switch for any media
10+
11+
- [Simple and powerful API set](https://github.com/wang-bin/mdk-sdk/wiki/Player-APIs)
12+
- [Cross platform: Windows, UWP, Linux, macOS, Android, iOS, Raspberry Pi](https://github.com/wang-bin/mdk-sdk/wiki/System-Requirements)
13+
- [Hardware accelerated decoders](https://github.com/wang-bin/mdk-sdk/wiki/Decoders)
14+
- [0-copy GPU rendering for all platforms and all renderers(Vulkan is WIP.)](https://github.com/wang-bin/mdk-sdk/wiki/Zero-Copy-Renderer)
15+
- [Dynamic OpenGL](https://github.com/wang-bin/mdk-sdk/wiki/OpenGL-Support-Matrix)
16+
- [OpenGL, D3D11, Vulkan and Metal rendering w/ or w/o user provided context](https://github.com/wang-bin/mdk-sdk/wiki/Render-API)
17+
- Integrated with any platform native ui apps, gui toolkits or other apps via [OpenGL, D3D11, Vulkan and Metal](https://github.com/wang-bin/mdk-sdk/wiki/Render-API) ([OBS](https://github.com/wang-bin/obs-mdk), [Qt](https://github.com/wang-bin/mdk-examples/tree/master/Qt), [SDL](https://github.com/wang-bin/mdk-examples/tree/master/SDL), [GLFW](https://github.com/wang-bin/mdk-examples/tree/master/GLFW), [SFML](https://github.com/wang-bin/mdk-examples/tree/master/SFML) etc.) easily
18+
- [Seamless/Gapless media and bitrate switch for any media](https://github.com/wang-bin/mdk-sdk/wiki/Player-APIs)
1619
- HDR rendering in GPU
17-
- Optimized Continuous seeking. As fast as mpv, but much lower cpu, memory and gpu load. Suitable for timeline preview
18-
- Smart FFmpeg runtime. See https://github.com/wang-bin/mdk-sdk/wiki/FFmpeg-Runtime
20+
- Optimized Continuous seeking. As fast as mpv, but much lower cpu, memory and gpu load. Suitable for [timeline preview](https://github.com/wang-bin/mdk-sdk/wiki/Typical-Usage#timeline-preview)
21+
- [Smart FFmpeg runtime](https://github.com/wang-bin/mdk-sdk/wiki/FFmpeg-Runtime)
1922

2023
## [API Levels](https://github.com/wang-bin/mdk-sdk/wiki/%E9%80%9A%E7%94%A8ABI%E7%9A%84CPP%E5%BA%93API%E8%AE%BE%E8%AE%A1)
21-
- ABI level APIs(not public): the implementation, in abi namespace. depends on c++ abi. build and runtime abi must be matched.
24+
25+
- ABI level APIs(not public): the implementation, in abi namespace. depends on c++ abi. build and runtime abi must be matched. Used internally and for plugins.
2226
- C APIs: No C++ ABI restriction.
2327
- C++ APIs: a header only thin wrapper for C APIs. No C++ ABI restriction. No user code change to switch between ABI level APIs and C++ APIs.
2428

@@ -27,6 +31,7 @@
2731
## Install
2832

2933
### CMake
34+
3035
```
3136
include(mdk-sdk-dir/lib/cmake/FindMDK.cmake)
3237
target_link_libraries(your_target PRIVATE mdk)
@@ -38,42 +43,64 @@
3843
3944
` pod 'mdk'`
4045

46+
Optionally you can use [mdk.xcframework](https://sourceforge.net/projects/mdk-sdk/files/nightly/mdk-sdk-apple.tar.xz/download)
47+
48+
If fail to code sign: In `Build Phase`, add a `New Run Script Phase` with content `[ -n "$CODE_SIGN_IDENTITY" ] && find "$BUILT_PRODUCTS_DIR" -depth -name "libffmpeg*.dylib" -exec codesign -i mdk.framework.ffmpeg -f -vvvv -s"${EXPANDED_CODE_SIGN_IDENTITY}" ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements,flags {} \;`
49+
4150
### Nuget
4251

4352
Install via [NuGet](https://www.nuget.org/packages/mdk) in Visual Studio for both Windows desktop and UWP
4453

4554

46-
47-
# Documents
55+
## Documents
4856

4957
- [wiki](https://github.com/wang-bin/mdk-sdk/wiki)
5058
- sdk headers
5159

5260

5361

54-
## TODO:
62+
## Open Source
63+
### Modules and Dependencies
64+
- [License generator and validator](https://github.com/wang-bin/appkey)
65+
- [Android java wrapper and example](https://github.com/wang-bin/mdk-android)
66+
- [MediaFoundation decoder module](https://github.com/wang-bin/mdk-mft)
67+
- [av1 software decoder module](https://github.com/wang-bin/mdk-dav1d)
68+
- [sunxi decoder + renderer](https://github.com/wang-bin/mdk-sunxi)
69+
- [GFX surface and render loop](https://github.com/wang-bin/ugs)
70+
- [Java support](https://github.com/wang-bin/JMI)
71+
- [Android java and jni APIs in C++](https://github.com/wang-bin/AND)
72+
- [C++ TLS](https://github.com/wang-bin/ThreadLocal)
73+
- [C++ compatibility layer](https://github.com/wang-bin/cppcompat)
74+
- [cmake tools](https://github.com/wang-bin/cmake-tools)
75+
76+
### Examples and Plugins for Other Frameworks
77+
- [examples for different platforms and gui toolkits](https://github.com/wang-bin/mdk-examples)
78+
- [Swift player for macOS](https://github.com/wang-bin/SPV)
79+
- [obs-studio video source plugin](https://github.com/wang-bin/obs-mdk)
80+
- [as a qtmultimedia plugin](https://github.com/wang-bin/qtmultimedia-plugins-mdk)
5581

56-
https://github.com/wang-bin/mdk-sdk/wiki/TODO
82+
### Language Bindings
83+
- [swift binding](https://github.com/wang-bin/mdkSwift)
84+
85+
## Users
86+
87+
<a href="https://bigringvr.com"><img src="https://bigringvr.com/images/BR_Logo_only.svg" width=140 height=120 alt="BigRingVR"/></a>
88+
<a herf="http://1218.io"><img src="https://avatars.githubusercontent.com/u/15963166?v=4" width=120 height=120 alt="Seer"/></a>
89+
<a href="https://www.heavym.net/en"><img alt="HeavyM" src="https://eadn-wc04-3624428.nxedge.io/cdn/wp-content/uploads/2020/09/Logo-Verticale-Base-Sans-signature-Small-border.svg" height=120 ></a>
90+
<a href="https://sureyyasoft.com"><img class="logo" src="http://sureyyasoft.com/images/s_images/logo_title.png" height=70 alt="SureyyaSoft"></a>
91+
[![Flyability](https://www.flyability.com/hs-fs/hubfs/Brand_Identity/Flyability%20Logo%20Package/2%20-%20Horizontal/flyability_logo_horizontal_color_trimmed-1.png)](https://www.flyability.com)
92+
93+
[金嵘达科技](http://www.kingroda.com)
94+
95+
[爱玩宝](https://www.aiwanbao.com)
5796

5897

5998

60-
## Open Source Modules and Examples
61-
- swift: https://github.com/wang-bin/swiftMDK
62-
- Android java wrapper and example: https://github.com/wang-bin/mdk-android
63-
- MFT decoder module: https://github.com/wang-bin/mdk-mft
64-
- av1 decoder module: https://github.com/wang-bin/mdk-dav1d
65-
- sunxi decoder + renderer: https://github.com/wang-bin/mdk-sunxi
66-
- obs plugin: https://github.com/wang-bin/obs-mdk
67-
- examples for different platforms and gui toolkits: https://github.com/wang-bin/mdk-examples
68-
- as a qtmultimedia plugin: https://github.com/wang-bin/qtmultimedia-plugins-mdk
69-
- GFX surface: https://github.com/wang-bin/ugs
70-
- Java support: https://github.com/wang-bin/JMI
71-
- Android APIs in C++: https://github.com/wang-bin/AND
72-
- C++ TLS: https://github.com/wang-bin/ThreadLocal
73-
- C++ compatibility layer: https://github.com/wang-bin/cppcompat
74-
- cmake: https://github.com/wang-bin/cmake-tools
7599

76100
## License
101+
77102
- Use for free: make sure your sdk is updated, otherwise you may see an QR image in the last frame. sdk will be released every month.
78-
- Free for GPL softwares, opensource projects, QtAV donors and contributors, no commercial softwares: you can acquire a key from me.
79-
- Commercial license: a key for an app for a single platform or multiple platforms.
103+
- Free for opensource projects, QtAV donors and contributors, non-commercial softwares: you can acquire a key from me.
104+
- Commercial license: a key for an app for a single platform or multiple platforms.
105+
106+
License key generator and validator is [open source](https://github.com/wang-bin/appkey)

nuget/mdk.nuspec

Lines changed: 1 addition & 1 deletion
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.11.0.0</version>
5+
<version>0.11.1.0</version>
66
<title>MDK</title>
77
<authors>Wang Bin</authors>
88
<owners>Wang Bin</owners>

0 commit comments

Comments
 (0)