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
- List of VASTreaming Libraries - Quick reference of all assemblies
- Supported Platforms - Platform compatibility information
- Basic Principles - Architectural concepts
- Core Primitives - Fundamental interfaces and classes