{"id":19602527,"url":"https://github.com/wang-bin/mdk-examples","last_synced_at":"2025-04-07T13:08:58.700Z","repository":{"id":41544945,"uuid":"118330737","full_name":"wang-bin/mdk-examples","owner":"wang-bin","description":"media player examples based on mdk sdk. runs on all platforms. sdk download:","archived":false,"fork":false,"pushed_at":"2025-02-18T06:12:42.000Z","size":798,"stargazers_count":63,"open_issues_count":0,"forks_count":19,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-31T12:05:58.949Z","etag":null,"topics":["cpp11","mediaplayer"],"latest_commit_sha":null,"homepage":"https://sourceforge.net/projects/mdk-sdk/files/nightly","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wang-bin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-21T11:59:37.000Z","updated_at":"2025-03-26T17:08:32.000Z","dependencies_parsed_at":"2024-04-17T06:38:54.609Z","dependency_job_id":"23b2a276-e584-4caf-a26e-b2ea864651ce","html_url":"https://github.com/wang-bin/mdk-examples","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wang-bin%2Fmdk-examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wang-bin%2Fmdk-examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wang-bin%2Fmdk-examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wang-bin%2Fmdk-examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wang-bin","download_url":"https://codeload.github.com/wang-bin/mdk-examples/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247657281,"owners_count":20974345,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp11","mediaplayer"],"created_at":"2024-11-11T09:24:44.514Z","updated_at":"2025-04-07T13:08:58.670Z","avatar_url":"https://github.com/wang-bin.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"media player examples based on mdk sdk. runs on all platforms. [Download the latest sdk](https://sourceforge.net/projects/mdk-sdk/files/nightly/)\n\nAbout libmdk sdk: https://github.com/wang-bin/mdk-sdk\n\n## Flutter\nhttps://github.com/wang-bin/fvp\n\n## GLFW\n### glfwplay\n- has the most features\n- use glfw context as foreign context mode\n- use glfw window to create render loop and gl/d3d11/metal/vulkan context internally\n\n### multiplayers\n1 player per window\n\n### multiwindows\nmany windows as render targets sharing the same player\n\n### PlayListAsOne\n\nGapless play/seek multiple videos like a single video\n\n### simple\nminimal glfw example\n\n## macOS\n- use `CAOpenGLLayer` as foreign context\n- use NSView to create render loop and gl context internally\n\n## iOS\nLegacy Obj-C OpenGLES2 example\n\n## Apple\n- 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\n- OCPlayer: macOS only. via cocoapods\n- SwiftMdkExample: supports macOS, iOS, macCatalyst. via submodule [swiftMDK](https://github.com/wang-bin/swiftMDK). requires mdk.xcframeworks\n- SwiftPlayer: macOS only. via cocoapods\n\n## Native\nexamples without platform specific code\n- mdkplay: a mininal player with internally created platform dependent window/surface and opengl context, also create render loop and gl context\n- DecodeFps: a tool to test decoder performance. `./DecodeFps [-c:v DecoderName] file\"\n- offscreen: offscreen rendering guide\n\n## Qt\n- Integrate with QOpenGLWindow and QOpenGLWidget. Use gl context provided by Qt.\n- Render on QOpenGLWindow and QOpenGLWidget via gl context provided by Qt\n- QML example via QOpenGLFrameBuffer\n- RHI example: vulkan, d3d11, metal, opengl\n\n## SDL\nUse gl context provided by SDL\n\n## SFML\n- Use gl context provided by SFML\n- Render to SFML texture\n\n## WindowsStore\nUWP example, supports D3D11, and ANGLE GLES2\n\n### CoreWindowCx\n- use `Windows::UI::Core::CoreWindow` as platform dependent surface to create render loop and gl context internally\n- use App provided gl context\n\n### XamlCx\n- Use `Windows::UI::Xaml::Controls::SwapChainPanel` as platform dependent surface to create render loop and gl context internally\n- Switch between 2 render targets\n\n## Avalonia\n\nuse gl to render, (Only test on Windows x64).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwang-bin%2Fmdk-examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwang-bin%2Fmdk-examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwang-bin%2Fmdk-examples/lists"}