media-blocks-sdk-net-android

Integrate VisioForge Media Blocks SDK into .NET for Android apps.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

It solves the challenge of integrating and operating VisioForge Media Blocks SDK in a native .NET for Android app, where the pipeline-based model, runtime permissions, and packaging/licensing pitfalls can block camera preview, recording, or deployment.

Core Features & Use Cases

  • Graph-based pipeline setup on Android: assemble sources, encoders, sinks, and renderers by connecting media block pads and starting the pipeline.
  • Camera preview and recording topologies: support both preview-only graphs and recording graphs using tee + encoder + MP4 muxing.
  • Runtime permission gating: reliably request CAMERA and RECORD_AUDIO at runtime and defer pipeline construction until grants succeed.
  • Live camera switching (with fallback): attempt _videoSource.SwitchCamera(...) and fall back to a full pipeline restart when formats/fps don’t match.
  • Licensing and deployment troubleshooting: register purchased licenses, pin NuGet versions, and handle common Android/AAB failures like missing ABI native libs or MediaCodec availability issues.

Quick Start

Use the media-blocks-sdk-net-android skill to integrate Media Blocks into a net10.0-android app by creating a MediaBlocksPipeline, wiring SystemVideoSourceBlock to a VideoRendererBlock using VideoViewGL, requesting CAMERA/RECORD_AUDIO at runtime, and starting the pipeline after both permissions are granted.

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

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

FAQPage Schema
How do I build a .NET Android camera pipeline for MP4 recording?

To build a .NET Android camera pipeline for MP4 recording, create a MediaBlocksPipeline and wire a SystemVideoSourceBlock through a tee to encoders and an MP4 muxing sink. Start the pipeline only after runtime CAMERA and RECORD_AUDIO permissions are granted.

Why does my .NET Android camera preview fail to start?

Your .NET Android camera preview fails to start when runtime CAMERA permissions are missing or the AndroidManifest lacks required grants. Defer MediaBlocksPipeline construction until runtime permissions succeed, and ensure proper NuGet pairing with your AndroidDependency project reference.

Can I switch cameras live in a .NET Android media pipeline without stopping recording?

You can switch cameras live in a .NET Android media pipeline by calling SwitchCamera on the video source block. If formats or frame rates mismatch, fall back to a full pipeline restart to ensure continuous capture stability.

What's the best way to handle runtime permissions before starting a media pipeline on Android?

The best way to handle runtime permissions before starting an Android media pipeline is to request CAMERA and RECORD_AUDIO at runtime and gate pipeline creation until both grants succeed. This prevents media block initialization failures and ensures reliable capture.

Do I need a specific .NET framework version to use Media Blocks SDK on Android?

You need net10.0-android or compatible Media Blocks 2026.x targets to use the SDK on Android. Proper NuGet deployment requires pairing your project with an AndroidDependency project reference to avoid missing ABI native libs or AAB packaging failures.

How do I apply a license to a Media Blocks pipeline instance on Android?

To apply a license to a Media Blocks pipeline instance on Android, call SetLicenseCertificateAsync per pipeline instance. Register purchased licenses before starting the graph to prevent MediaCodec availability issues and ensure full SDK functionality.