Skip to main content

macOS Installation

Products: Video Capture SDK .Net, Video Edit SDK .Net, Media Player SDK .Net, Media Blocks SDK .Net

SDK is tested with the latest macOS version but can be used in any other version where .Net is supported. You can use x64 or ARM64 architecture.

SDK uses GStreamer for video and audio playback and encoding.

XCode Command Line Tools are required for SDK usage.

macOS app development

Prerequisites installation

Install the Homebrew

Brew is the package manager for macOS. You can install it using the link.

Install GStreamer packages using Homebrew

Update brew packages.

brew update

Install the GStreamer package. It will install all required dependencies. We suggest to use modern GStreamer version 1.20.0 or later.

brew install gstreamer

brew link glib

Update environment variables for your project

In Visual Studio for Mac, you can update the environment variables for your project. Open the project options and navigate to the Run > Configurations > Default page.

Visual Studio for Mac project page

In Rider, you can update the environment variables in the Run/Debug Configurations page.

Rider project page

  • add DYLD_LIBRARY_PATH variable with the value /usr/local/lib/:/usr/local/lib/gio/modules/:/opt/homebrew/lib/:/opt/homebrew/lib/gio/modules/:$DYLD_LIBRARY_PATH
  • optionally add DYLD_PRINT_LIBRARIES variable with the value 1 to see loaded libraries in the console

MAUI project development

MAUI project requires an update for macOS target to provide compatibility with ARM64 anx x64 architectures.

<PropertyGroup Condition="$([MSBuild]::IsOSPlatform('osx')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'">
<RuntimeIdentifier>maccatalyst-x64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup Condition="$([MSBuild]::IsOSPlatform('osx')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'">
<RuntimeIdentifier>maccatalyst-arm64</RuntimeIdentifier>
</PropertyGroup>

PublishTrimmed option should be enabled for macOS.

<PublishTrimmed Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'maccatalyst'">true</PublishTrimmed>

Please check the MAUI page for more information.

iOS app development

iOS app development requires only NuGet package installation. We strongly recommend using real devices because the simulator has many limitations and performance issues.

Add the VisioForge.CrossPlatform.Core.iOS NuGet package to your project as a redist package.

Use the VisioForge.DotNet.Core.UI.Apple NuGet package to add the required controls to your project.

Also add the major package for your project. For example, VisioForge.DotNet.MediaBlocks for Media Blocks SDK.

PublishTrimmed option should be enabled for macOS.

<PublishTrimmed Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'">true</PublishTrimmed>

NuGet packages installation

You can use Rider or Visual Studio for Mac to develop your project in macOS. Please check the Rider and Visual Studio for Mac pages for more information.


Visit our GitHub page to get more code samples.

install using brew

project paths to search