I'm preparing several sandboxed macOS apps (macOS 26 and later) for the Mac App Store and would like to add Matroska/WebM support through a Media Extension format reader. Before implementing it, I'd like to clarify a few points.
The apps work only with local video files the user opens or adds: a player for many videos at once (video wall), a practice player with loops and markers, an app for precise trimming and export, and a catalog of the user's video library with thumbnails and duplicate detection. None of them is network-facing.
Plan: one format reader for Matroska and WebM (own implementation of RFC 9559, no third-party code), embedded as an ExtensionKit bundle. Video is decoded by the system decoders (H.264, HEVC, VP9 after VTRegisterSupplementalVideoDecoderIfAvailable, AV1 where available); no own video decoder. Each app calls MTRegisterProfessionalVideoWorkflowFormatReaders() and VTRegisterProfessionalVideoWorkflowVideoDecoders() at launch and shows a notice with a link to System Settings when the extension is disabled (AVErrorMediaExtensionDisabled).
Questions:
-
MTProfessionalVideoWorkflow.h and VTProfessionalVideoWorkflow.h say the registration functions are intended for applications supporting professional video workflows. Is it acceptable to call them from apps like these, which serve video editing, review and library management, but not a broadcast or camera workflow?
-
Users may buy only one of the apps, so I'd embed the same format reader (same ClassImplementationID and CFBundleVersion, bundle identifier prefixed by each host app) in every app. Is that supported? When are AVErrorMediaExtensionConflict and kVTExtensionConflictErr returned, and how can they be avoided?
-
Does the enable switch in System Settings apply per ClassImplementationID or per host app? Would a user who installs a second app have to enable the extension again?
-
Is there a supported way to open System Settings directly at General > Login Items & Extensions > Media Extensions from an app?
-
Are there App Review requirements specific to apps that embed Media Extensions, beyond guidelines 2.4.5 and 4.4?
Thanks in advance.