Skip to main content

SoftwareDecoder

Defined in: livelink.js/sources/rendering/decoders/SoftwareDecoder.ts:76

Software decoder that uses Broadway.js to decode h264 encoded frames.

This decoder is not recommended for production use. It is not optimized for performance. It is mainly provided as a reference implementation.

As a last resort, it can be used as a fallback when hardware decoding is not available.

See

https://github.com/mbebenita/Broadway

Extends

Constructors

new SoftwareDecoder()

new SoftwareDecoder(params: {
decoded_frame_consumer: DecodedFrameConsumer;
}): SoftwareDecoder

Defined in: livelink.js/sources/rendering/decoders/SoftwareDecoder.ts:98

Create a new software decoder.

Parameters

ParameterTypeDescription
params{ decoded_frame_consumer: DecodedFrameConsumer; }
params.decoded_frame_consumerDecodedFrameConsumerThe decoded frame consumer that will receive the decoded frames

Returns

SoftwareDecoder

Overrides

EncodedFrameConsumer.constructor

Methods

configure()

configure(params: {
codec: CodecType;
frame_dimensions: Vec2;
}): Promise<EncodedFrameConsumer>

Defined in: livelink.js/sources/rendering/decoders/SoftwareDecoder.ts:112

Configure the decoder with the codec and frame dimensions. This method replaces the constructor to allow for async initialization.

Parameters

ParameterTypeDescription
params{ codec: CodecType; frame_dimensions: Vec2; }
params.codecCodecTypeThe codec used to encode the frames
params.frame_dimensionsVec2The dimensions of the frame

Returns

Promise<EncodedFrameConsumer>

Returns a promise to this so that the method can be chained to the constructor.

Overrides

EncodedFrameConsumer.configure


resize()

resize(__namedParameters: {
frame_dimensions: Vec2;
}): void

Defined in: livelink.js/sources/rendering/decoders/SoftwareDecoder.ts:139

Parameters

ParameterType
__namedParameters{ frame_dimensions: Vec2; }
__namedParameters.frame_dimensionsVec2

Returns

void

Overrides

EncodedFrameConsumer.resize


release()

release(): void

Defined in: livelink.js/sources/rendering/decoders/SoftwareDecoder.ts:154

Release any resources used by the decoder.

Returns

void

Overrides

EncodedFrameConsumer.release


consumeEncodedFrame()

consumeEncodedFrame(params: {
encoded_frame: DataView;
meta_data: FrameMetaData;
}): void

Defined in: livelink.js/sources/rendering/decoders/SoftwareDecoder.ts:164

Consume an encoded frame. Called as soon as a frame is received.

Parameters

ParameterTypeDescription
params{ encoded_frame: DataView; meta_data: FrameMetaData; }
params.encoded_frameDataViewThe encoded frame data
params.meta_dataFrameMetaDataThe frame meta data

Returns

void

Overrides

EncodedFrameConsumer.consumeEncodedFrame