media-blocks-sdk-net-macos

Integrate VisioForge Media Blocks SDK into native .NET macOS apps with MediaBlocksPipeline graph setup.

Updated May 29, 2025
One-click install
npx skills add https://github.com/visioforge/help --skill media-blocks-sdk-net-macos
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: media-blocks-sdk-net-macos
Source: https://github.com/visioforge/help/tree/main/dotnet/agent-skills/media-blocks-sdk-net-macos
Command: npx skills add https://github.com/visioforge/help --skill media-blocks-sdk-net-macos

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

It solves the challenge of integrating VisioForge Media Blocks SDK into a native .NET for macOS app by helping you correctly assemble a graph-based capture/encode/render/stream pipeline while avoiding common macOS permission, entitlements, and deployment pitfalls.

Core Features & Use Cases

  • Native .NET for macOS pipeline composition: Build a MediaBlocksPipeline from sources, transform blocks, and sinks, connect pads, and start/stop reliably.
  • macOS-specific requirements: Ensure Info.plist permission usage descriptions are present and non-empty, and trigger permission prompts via AVCaptureDevice access requests.
  • Hardened runtime & signing readiness: Provide Entitlements.plist guidance for camera, microphone, and USB capture devices to prevent silent denials under signed/notarized builds.
  • Practical scenarios: Preview + record to MP4/MOV, custom transcode graphs, network streaming sinks, and handling Apple Silicon vs Intel native libraries using the correct NuGet redist model.

Quick Start

Use the media-blocks-sdk-net-macos skill as a copy-paste template by creating a net10.0-macos project, wiring a macOS Storyboard with a VideoView host and Start/Stop buttons, then implementing the pipeline with SystemVideoSourceBlock, VideoRendererBlock, and (optionally) SystemAudioSourceBlock and AudioRendererBlock.

Frequently Asked Questions about media-blocks-sdk-net-macos

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a native .NET for macOS video pipeline using a graph-based SDK?

To build a native .NET for macOS video pipeline, assemble a MediaBlocksPipeline by connecting source, transform, and sink blocks via Connect(), then call StartAsync() to run and StopAsync()/DisposeAsync() for safe teardown. Use SystemVideoSourceBlock and VideoRendererBlock for capture and preview.

Why does my .NET macOS camera capture app fail silently after notarization?

Your .NET macOS camera capture app fails silently under notarization if hardened runtime entitlements are missing. You must provide an Entitlements.plist granting camera, microphone, and USB capture access to prevent silent denials in signed builds.

What Info.plist permissions do I need for .NET macOS microphone and camera access?

For .NET macOS microphone and camera access, your Info.plist must contain non-empty usage description strings. Additionally, you must trigger runtime permission prompts by requesting access via AVCaptureDevice before activating the capture pipeline.

Does the VisioForge Media Blocks SDK support Apple Silicon and Intel native libraries?

Yes, the VisioForge Media Blocks SDK supports Apple Silicon and Intel native libraries through a version-pinned NuGet wrapper and redist model. You must ensure the correct macOS redist package is referenced in your .NET project.

What is the correct way to stop and dispose of a MediaBlocksPipeline in a macOS app?

The correct way to stop and dispose of a MediaBlocksPipeline in a macOS app is calling StopAsync() to safely halt the graph, followed by DisposeAsync() to release unmanaged resources and prevent memory leaks.