Skip to content

System Requirements

WangBin edited this page Sep 11, 2024 · 46 revisions

All SDKs depends on FFmpeg 4.0+, which is included in SDK package except for linux desktop.

Android

sdk package: mdk-sdk-android.7z

  • 32 bit: API level >= 19, i.e. android 4.4+
  • 64 bit: API level >= 21, i.e. android 5.0+

Optional:

iOS

sdk package: mdk-sdk-iOS.tar.xz (including dSYMs) or mdk-sdk-apple.tar.xz (contains all apple platforms)

iOS >= 8.0, arm64

Optional:

visionOS

sdk package: mdk-sdk-visionOS.tar.xz (including dSYMs) or mdk-sdk-apple.tar.xz (contains all apple platforms, only iOS and macOS have dSYMS)

Optional:

tvOS

sdk package: mdk-sdk-tvOS.tar.xz (including dSYMs) or mdk-sdk-apple.tar.xz (contains all apple platforms, only iOS and macOS have dSYMS)

tvOS >= 11.0, arm64

Optional:

macOS

sdk package: mdk-sdk-macOS.tar.xz (including dSYMs) or mdk-sdk-apple.tar.xz (contains all apple platforms)

x86_64 macOS 10.9+, arm64 macOS 11.0+

Optional:

Windows Desktop

sdk package: windows-desktop-vs2022.7z

Vista~Win10.

  • vcrt 14.0+, ucrt, vcruntime140_1.dll(x64 only), msvcp140 14.38+(win10 19041/22h2, vs build only, std::mutex breaks): required by default build, not LTL build. If not exists or version is too low to run, download and install They can also be installed via install.bat in mdk-sdk
  • xaudio2 driver (windows <= 7 only) if no sound and wrong playback speed

Optional:

UWP

sdk package: uwp-vs2022.7z

Optional:

Linux Desktop, Raspberry Pi OS

sdk package: mdk-sdk-linux.tar.xz

ubuntu>=14.04(or glibc >= 2.14). may run on ubuntu12.04(glibc 2.15)

  • libc++1, libc++abi1: not using gnu stl because libc++ has better compatibility, tested with libc++ 3~18
  • libva version 2: libva2, libva-x11-2, libva-drm2. Running apt install vainfo will install these
  • libasound2, libpulse0: audio
  • libdrm2
  • libgbm1: gbm surface for egl context
  • libwayland-client0
  • libgl1-mesa-glx, libegl1-mesa: glx, egl context
  • libxcb-dri3, libx11-xcb1
  • ffmpeg>=4.0: system ffmpeg(recommended for raspberry pi) or the one in sdk. you may need to build yourself to run on old OSes because of linux dso and symbol versioning

Optional:

  • libmfx1, libvpl2: QSV decoder
  • libvdpau1: vdpau rendering. (and required by ffmpeg decoder)
  • libwayland-egl1: wayland surface and egl context support
  • libopenal1
  • cuda
  • libass9: to support text subtitles. compatible with libass5 and above
  • libdav1d: to support av1. compatible with libdav1d.so, libdav1d.so.[5-7]

Legacy Raspberry Pi

**NOT RECOMMNEDED, NOT MAINTAINTED. Only for legacy brcm firmware environment(fully support hardware decode + 0-copy rendering) or VC4 environment**

sdk package: mdk-sdk-raspberry-pi.tar.xz

all devices (or glibc >= 2.4)

  • libc++: included in sdk
  • libasound2: audio
  • libdrm2
  • libgbm1: gbm surface for egl context (VC4)
  • libwayland-client0
  • ffmpeg>=4.0: you may need to build yourself to run on old OSes because of F*** linux dso and symbol versioning

Optional:

  • libwayland-egl1: wayland surface and egl context support (VC4)
  • x11 egl, glx (VC4)
  • libass9: to support text subtitles. compatible with libass5 and above

SUNXI

**NOT MAINTAINED**

sdk package: mdk-sdk-sunxi.tar.xz

Same as Linux Desktop, plus

Clone this wiki locally