WebCodecsBackend class

Inheritance

Constructors

WebCodecsBackend()

Properties

acceptedFrameSources → Set<FrameSourceKind>
Which FrameSource variants this backend can consume directly (without the facade falling back to CPU readback).
no setteroverride
hashCode → int
The hash code for this object.
no setterinherited
name → String
Human-readable backend name, e.g. "ffmpeg", "webcodecs", "minigpu".
no setteroverride
priority → int
Higher value = preferred when multiple backends support the same codec. Backends should default to 0 and let users override via MiniAVToolsPlatform.setBackendPriority.
no setteroverride
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

createAudioDecoder(AudioDecoderConfig config, {BackendContext? context}) → Future<PlatformAudioDecoder?>
Construct an audio decoder. Default implementation returns null — backends without audio support don't need to override.
override
createAudioEncoder(AudioEncoderConfig config, {BackendContext? context}) → Future<PlatformAudioEncoder?>
Construct an audio encoder. Default implementation returns null — backends without audio support don't need to override.
override
createDecoder(DecoderConfig config, {BackendContext? context}) → Future<PlatformDecoder?>
override
createDemuxer(DemuxerConfig config) → Future<PlatformDemuxer?>
override
createEncoder(EncoderConfig config, {BackendContext? context}) → Future<PlatformEncoder?>
override
createMuxer(MuxerConfig config) → Future<PlatformMuxer?>
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
probe(CodecQuery query) → Future<List<CodecCapability>>
Enumerate the concrete CodecCapabilitys this backend offers for query.
inherited
supportsAudioDecode(AudioCodec codec) → bool
override
supportsAudioEncode(AudioCodec codec) → bool
override
supportsDecode(VideoCodec codec, {bool hwAccel = false}) → bool
override
supportsDemux(Container container) → bool
override
supportsEncode(VideoCodec codec, {bool hwAccel = false}) → bool
override
supportsMux(Container container) → bool
No first-party web muxer yet: createMuxer returns null, so advertising mux support would make the negotiator select this backend and then get null. The real fMP4/WebM web muxer (MediaRecorder / a pure-Dart writer) lands in a later phase; flip this back on when createMuxer is real.
override
toString() → String
A string representation of this object.
inherited
warmup() → Stream<WarmupProgress>
Perform any slow early initialisation required by this backend.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Constants

backendName → const String
defaultPriority → const int