encoder library

Experimental pure-Dart VP8 encoder.

This API is still evolving (rate-distortion phases, trellis quantization, ARNR, multi-thread) and may change in minor releases until 1.0. The bitstream it produces is conformant — Vp8Decoder (and any other RFC 6386 decoder) decodes it byte-exactly — but the rate / quality tradeoffs will keep improving.

Import explicitly:

import 'package:dart_vp8/encoder.dart';

The decoder lives in package:dart_vp8/dart_vp8.dart.

Classes

CbrRateController
EncodedVp8Frame
IvfWriter
TemporalDenoiser
Vp8CumulativeStats
Lifetime-cumulative encoder telemetry. Updated after every non-dropped frame (with droppedFrames bumped on drops). Cleared by Vp8Encoder.reset. Read-only from outside the encoder.
Vp8Encoder
Vp8FrameStats
Per-frame encoder telemetry surfaced on EncodedVp8Frame.stats. Useful for VC operations (bitrate dashboards, ABR drivers, etc.) and for unit tests that need to assert on encoder decisions.