https://github.com/wang-bin/mdk-examples
media player examples based on mdk sdk. runs on all platforms. sdk download:
https://github.com/wang-bin/mdk-examples
cpp11 mediaplayer
Last synced: about 1 year ago
JSON representation
media player examples based on mdk sdk. runs on all platforms. sdk download:
- Host: GitHub
- URL: https://github.com/wang-bin/mdk-examples
- Owner: wang-bin
- License: apache-2.0
- Created: 2018-01-21T11:59:37.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2025-02-18T06:12:42.000Z (over 1 year ago)
- Last Synced: 2025-03-31T12:05:58.949Z (over 1 year ago)
- Topics: cpp11, mediaplayer
- Language: C++
- Homepage: https://sourceforge.net/projects/mdk-sdk/files/nightly
- Size: 779 KB
- Stars: 63
- Watchers: 7
- Forks: 19
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
media player examples based on mdk sdk. runs on all platforms. [Download the latest sdk](https://sourceforge.net/projects/mdk-sdk/files/nightly/)
About libmdk sdk: https://github.com/wang-bin/mdk-sdk
## Flutter
https://github.com/wang-bin/fvp
## GLFW
### glfwplay
- has the most features
- use glfw context as foreign context mode
- use glfw window to create render loop and gl/d3d11/metal/vulkan context internally
### multiplayers
1 player per window
### multiwindows
many windows as render targets sharing the same player
### PlayListAsOne
Gapless play/seek multiple videos like a single video
### simple
minimal glfw example
## macOS
- use `CAOpenGLLayer` as foreign context
- use NSView to create render loop and gl context internally
## iOS
Legacy Obj-C OpenGLES2 example
## Apple
- HelloTriangle: Using mdk sdk to play video in Apple's official example https://developer.apple.com/documentation/metal/using_a_render_pipeline_to_render_primitives?language=objc
- OCPlayer: macOS only. via cocoapods
- SwiftMdkExample: supports macOS, iOS, macCatalyst. via submodule [swiftMDK](https://github.com/wang-bin/swiftMDK). requires mdk.xcframeworks
- SwiftPlayer: macOS only. via cocoapods
## Native
examples without platform specific code
- mdkplay: a mininal player with internally created platform dependent window/surface and opengl context, also create render loop and gl context
- DecodeFps: a tool to test decoder performance. `./DecodeFps [-c:v DecoderName] file"
- offscreen: offscreen rendering guide
## Qt
- Integrate with QOpenGLWindow and QOpenGLWidget. Use gl context provided by Qt.
- Render on QOpenGLWindow and QOpenGLWidget via gl context provided by Qt
- QML example via QOpenGLFrameBuffer
- RHI example: vulkan, d3d11, metal, opengl
## SDL
Use gl context provided by SDL
## SFML
- Use gl context provided by SFML
- Render to SFML texture
## WindowsStore
UWP example, supports D3D11, and ANGLE GLES2
### CoreWindowCx
- use `Windows::UI::Core::CoreWindow` as platform dependent surface to create render loop and gl context internally
- use App provided gl context
### XamlCx
- Use `Windows::UI::Xaml::Controls::SwapChainPanel` as platform dependent surface to create render loop and gl context internally
- Switch between 2 render targets
## Avalonia
use gl to render, (Only test on Windows x64).