CLIENT/SERVER
STREAMING SERVER
CAPTURE
PLAYBACK
PROTOCOLS
RTMP
RTP/RTSP
HLS
MPEG-DASH
WEBRTC
SRT
MORE
FILES
MP4
TS
TOOLS
PROCESSING
VIDEO
AUDIO
CODEC
All the extensions described below operate exclusively under Windows, because .NET Framework 4.5 is intended only for Windows applications.
MFAudioCaptureSource implements interface IAudioCaptureSource and uses Media Foundation, DirectShow or WASAPI for capturing audio. It is user who decides which framework to apply for capturing. For encoding audio, the library uses Media Foundation by default, but user can set FFmpeg as an alternative.
MFVideoCaptureSource implements interface IVideoCaptureSource and captures video through Media Foundation or DirectShow. For encoding video, the library uses Media Foundation by default, but user can set FFmpeg as an alternative.
WasapiMonitor provides a possibility to perform:
If user changes device set by default, then WasapiMonitor provides information about new device. User can use new device for switching a capture or for signal monitoring.
VAST.MediaFoundation.Decoder implements interface IDecoder. It is an implementation of decoder with Media Foundation. Accordingly, it supports only those codecs which are implemented in Media Foundation. Hardware acceleration is supported.
VAST.MediaFoundation.Encoder implements interface IEncoder. It is an implementation of encoder with Media Foundation. Accordingly, it supports only those codecs which are implemented in Media Foundation. Hardware acceleration is supported.
VAST.MediaFoundation.FileSink implements interface IMediaSink. It is a simple alternative for VAST.File.ISO.IsoSink. The class contains less functionality, but it is a part of the common library, so it is available for every customer. The list of supported file formats is limited by the Media Foundation supported ones.
VAST.MediaFoundation.FileSource implements interface IMediaSource. It is a simple alternative for VAST.File.ISO.IsoSource. The class contains less functionality, but it is a part of common library, so it is available for every customer. The list of supported file formats is limited by the Media Foundation supported ones.
OpenGL context creation. The class for OpenGL context initialization is internal, but user should know that there is such functionality existing for Windows. Reminder: OpenGL context is needed for VAST.OpenGL.OpenGlImageProcessor.
Media Foundation specific extensions to MediaType and VersatileBuffer. These extensions are also internal, but they are mentioned here to let user know that VASTreaming library contains some optimizations for closer integration with Media Foundation e.g., minimization of memory copy and allowing direct usage of native Media Foundation buffers when possible, including GPU bound buffers.