Tanoda
NatSuite.Recorders.IMediaRecorder Interface Reference

A recorder capable of recording video frames, and optionally audio frames, to a media output. All recorder methods are thread safe, and as such can be called from any thread. More...

Inheritance diagram for NatSuite.Recorders.IMediaRecorder:
NatSuite.Recorders.GIFRecorder NatSuite.Recorders.HEVCRecorder NatSuite.Recorders.Internal.NativeRecorder NatSuite.Recorders.JPGRecorder NatSuite.Recorders.MP4Recorder NatSuite.Recorders.WAVRecorder

Public Member Functions

void CommitFrame< T > (T[] pixelBuffer, long timestamp)
 Commit a video pixel buffer for encoding. The pixel buffer MUST have an RGBA8888 pixel layout. More...
 
void CommitFrame (IntPtr nativeBuffer, long timestamp)
 Commit a video pixel buffer for encoding. The pixel buffer MUST have an RGBA8888 pixel layout. More...
 
void CommitSamples (float[] sampleBuffer, long timestamp)
 Commit an audio sample buffer for encoding. More...
 
Task< string > FinishWriting ()
 Finish writing and return the path to the recorded media file. More...
 

Public Attributes

int width
 Recording frame size. More...
 

Properties

int int height frameSize [get]
 

Detailed Description

A recorder capable of recording video frames, and optionally audio frames, to a media output. All recorder methods are thread safe, and as such can be called from any thread.

Definition at line 15 of file IMediaRecorder.cs.

Member Function Documentation

◆ CommitFrame()

void NatSuite.Recorders.IMediaRecorder.CommitFrame ( IntPtr  nativeBuffer,
long  timestamp 
)

Commit a video pixel buffer for encoding. The pixel buffer MUST have an RGBA8888 pixel layout.

Parameters
nativeBufferPixel buffer in native memory to commit.
timestampSample buffer timestamp in nanoseconds.

Implemented in NatSuite.Recorders.HEVCRecorder, NatSuite.Recorders.Internal.NativeRecorder, NatSuite.Recorders.MP4Recorder, NatSuite.Recorders.GIFRecorder, NatSuite.Recorders.JPGRecorder, and NatSuite.Recorders.WAVRecorder.

◆ CommitFrame< T >()

void NatSuite.Recorders.IMediaRecorder.CommitFrame< T > ( T[]  pixelBuffer,
long  timestamp 
)

Commit a video pixel buffer for encoding. The pixel buffer MUST have an RGBA8888 pixel layout.

Parameters
pixelBufferPixel buffer to commit.
timestampSample buffer timestamp in nanoseconds.

Implemented in NatSuite.Recorders.HEVCRecorder, NatSuite.Recorders.Internal.NativeRecorder, NatSuite.Recorders.MP4Recorder, NatSuite.Recorders.GIFRecorder, NatSuite.Recorders.JPGRecorder, and NatSuite.Recorders.WAVRecorder.

Type Constraints
T :struct 

◆ CommitSamples()

void NatSuite.Recorders.IMediaRecorder.CommitSamples ( float[]  sampleBuffer,
long  timestamp 
)

Commit an audio sample buffer for encoding.

Parameters
sampleBufferLinear PCM audio sample buffer, interleaved by channel.
timestampSample buffer timestamp in nanoseconds.

Implemented in NatSuite.Recorders.HEVCRecorder, NatSuite.Recorders.Internal.NativeRecorder, NatSuite.Recorders.MP4Recorder, NatSuite.Recorders.WAVRecorder, NatSuite.Recorders.GIFRecorder, and NatSuite.Recorders.JPGRecorder.

◆ FinishWriting()

Task< string > NatSuite.Recorders.IMediaRecorder.FinishWriting ( )

Member Data Documentation

◆ width

int NatSuite.Recorders.IMediaRecorder.width

Recording frame size.

Definition at line 20 of file IMediaRecorder.cs.

Property Documentation

◆ frameSize


The documentation for this interface was generated from the following file: