Skip to content

Latest commit

 

History

History
82 lines (65 loc) · 4.97 KB

README.iOS.md

File metadata and controls

82 lines (65 loc) · 4.97 KB

MDK: Multimedia Development Kit

Features

Swift

https://github.com/wang-bin/swift-mdk

About SDK for iOS

SDK is built by Xcode 15 with

  • 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"})
  • VideoToolbox: via ffmpeg
  • FFmpeg. Direct rendering via property "pool=CVPixelBuffer"

Use in CMake Projects

	include(mdk-sdk-dir/lib/cmake/FindMDK.cmake)
	target_link_libraries(your_target PRIVATE mdk)

Qt qmake project

include($$MDK_SDK_DIR/mdk.pri)

Recommended settings

  • macOS, iOS: player.setDecoders(MediaType::Video, {"VT", "hap", "FFmpeg", "dav1d"});

Live streams (RTSP, RTMP etc.) low latency

    player.setProperty("avformat.fflags", "+nobuffer");
    player.setProperty("avformat.fpsprobesize", "0");

Use in Xcode

Choose any of

  • Add mdk.xcframework to your project(Embed & Sign)
  • install via cocoapods pod 'mdk'

Code Sign

Choose any of

  • In Build Settings add --deep to Other Code Signing Flags
  • (Recommended) 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 {} \;

Source code:

Copyright (c) 2016-2024 WangBin(the author of QtAV) Free for opensource softwares, non-commercial softwares, flutter, QtAV donors and contributors.