Class PreEventRecordingOutput
- Namespace
- VisioForge.Core.Types.X.Output
- Assembly
- VisioForge.Core.dll
Pre-event (circular buffer) recording output configuration for VideoCaptureCoreX. Continuously buffers encoded video/audio in memory and writes to file on trigger.
public class PreEventRecordingOutput : IVideoCaptureXBaseOutput, IXBaseOutput, IOutputVideoProcessor, IOutputAudioProcessorInheritance
Implements
Inherited Members
Constructors
PreEventRecordingOutput(string, PreEventRecordingSettings, IVideoEncoder, IAudioEncoder)
Initializes a new instance of the VisioForge.Core.Types.X.Output.PreEventRecordingOutput class with MP4 container format and default encoders.
public PreEventRecordingOutput(string filename = null, PreEventRecordingSettings settings = null, IVideoEncoder videoEnc = null, IAudioEncoder audioEnc = null)Parameters
filenamestring-
Default output filename template.
settingsPreEventRecordingSettings-
Pre-event recording configuration. Uses defaults if null.
videoEncIVideoEncoder-
Video encoder settings. Uses default H.264 if null.
audioEncIAudioEncoder-
Audio encoder settings. Uses default audio encoder if null.
Properties
Audio
Gets or sets the audio encoder settings.
public IAudioEncoder Audio { get; set; }Property Value
CustomAudioProcessor
Gets or sets the custom audio processor block.
public MediaBlock CustomAudioProcessor { get; set; }Property Value
CustomVideoProcessor
Gets or sets the custom video processor block.
public MediaBlock CustomVideoProcessor { get; set; }Property Value
Filename
Gets or sets the default output filename (used as template). The actual filename is specified when triggering recording.
public string Filename { get; set; }Property Value
MuxFactoryName
Gets or sets the GStreamer muxer factory name for the output container format. Common values: "mp4mux", "matroskamux", "mpegtsmux".
public string MuxFactoryName { get; set; }Property Value
Settings
Gets or sets the pre-event recording configuration.
public PreEventRecordingSettings Settings { get; set; }Property Value
Video
Gets or sets the video encoder settings.
public IVideoEncoder Video { get; set; }Property Value
Methods
CreateMKV(string, PreEventRecordingSettings, IVideoEncoder, IAudioEncoder)
Creates a pre-event recording output with MKV container format.
public static PreEventRecordingOutput CreateMKV(string filename = null, PreEventRecordingSettings settings = null, IVideoEncoder videoEnc = null, IAudioEncoder audioEnc = null)Parameters
filenamestring-
Default output filename template.
settingsPreEventRecordingSettings-
Pre-event recording configuration.
videoEncIVideoEncoder-
Video encoder settings.
audioEncIAudioEncoder-
Audio encoder settings.
Returns
- PreEventRecordingOutput
-
A new PreEventRecordingOutput configured for MKV.
CreateMPEGTS(string, PreEventRecordingSettings, IVideoEncoder, IAudioEncoder)
Creates a pre-event recording output with MPEG-TS container format. MPEG-TS is recommended for crash safety (no finalization step required).
public static PreEventRecordingOutput CreateMPEGTS(string filename = null, PreEventRecordingSettings settings = null, IVideoEncoder videoEnc = null, IAudioEncoder audioEnc = null)Parameters
filenamestring-
Default output filename template.
settingsPreEventRecordingSettings-
Pre-event recording configuration.
videoEncIVideoEncoder-
Video encoder settings.
audioEncIAudioEncoder-
Audio encoder settings.
Returns
- PreEventRecordingOutput
-
A new PreEventRecordingOutput configured for MPEG-TS.
GetAudioEncoders()
Gets the available audio encoders.
public Tuple<string, Type>[] GetAudioEncoders()Returns
GetFilename()
Gets the filename.
public string GetFilename()Returns
GetVideoEncoders()
Gets the available video encoders.
public Tuple<string, Type>[] GetVideoEncoders()Returns
SetFilename(string)
Sets the filename.
public void SetFilename(string filename)Parameters
filenamestring