Table of Contents

Assemblies

This section provides detailed documentation for each VASTreaming assembly. For a quick overview of all available libraries, see List of VASTreaming Libraries.

Assembly Organization

VASTreaming assemblies are organized into several categories:

Category Assemblies Purpose
Core VAST.Common Fundamental functionality used by all applications
Streaming Protocols VAST.RTSP, VAST.RTMP, VAST.HLS, VAST.DASH, VAST.SRT, VAST.TS, VAST.WebRTC, VAST.Web, VAST.NDI Protocol-specific client, server, and publisher implementations
Network Infrastructure VAST.Network, VAST.ICE, VAST.ONVIF Multi-protocol server, NAT traversal, device integration
File Formats VAST.File, VAST.File.ISO File reading, writing, and container format support
Media Processors VAST.Audio, VAST.Codec, VAST.Image Audio/video processing, decoding, encoding
Platform Extensions VAST.Common.Ext.* Platform-specific hardware acceleration and native features
User Interface VAST.UI Video rendering controls for desktop and mobile applications

Choosing Assemblies

Most applications require only a subset of VASTreaming assemblies. Here are common scenarios:

Playing an RTSP Stream

VAST.Common
VAST.Common.Ext.Win32 (or other platform extension, necessary for decoding)
VAST.RTSP
VAST.UI (for rendering)

Recording to MP4

VAST.Common
VAST.RTSP (or other source protocol)
VAST.File.ISO

Building a Streaming Server

VAST.Common
VAST.Network
VAST.HLS (and/or other input/output protocols)

WebRTC Application

VAST.Common
VAST.Common.Ext.Win32 (or other platform extension, necessary for transcoding)
VAST.WebRTC
VAST.ICE (optional, you can use 3rd party STUN/TURN server instead)

Assembly Documentation

Select an assembly from the navigation menu to view its detailed documentation, including:

  • Purpose and overview
  • Key classes and interfaces
  • Configuration options
  • Code examples
  • Best practices

Platform Extension Selection

Choose the appropriate platform extension based on your target environment:

Target Platform Extension Assembly
Windows VAST.Common.Ext.Win32
ASP.NET Core on Windows VAST.Common.Ext.ASP.Win32
ASP.NET Core on Linux VAST.Common.Ext.ASP.Linux
ASP.NET Core on macOS VAST.Common.Ext.ASP.macOS
Linux Desktop VAST.Common.Ext.Linux
macOS Desktop VAST.Common.Ext.macOS
Mac Catalyst VAST.Common.Ext.MacCatalyst
iOS VAST.Common.Ext.iOS
Android VAST.Common.Ext.Android

For ASP.NET Core applications, the VAST.Common.Ext.ASP.* packages combine the base ASP.NET integration with platform-specific functionality.

See Also