extractFrames abstract method

Future<Map<int, RawFrame>> extractFrames(
  1. Uri source,
  2. Iterable<int> frameIndices, {
  3. required int width,
  4. required int height,
  5. String? decoder,
})

The decoded pixels of source at each index in frameIndices, keyed by index and scaled to width x height — the batch the clip pre-pass uses.

The ffmpeg service extracts each via extractFrame; a platform decoder (WebCodecs, MediaCodec, AVFoundation) overrides this with a single forward-decode pass, because seeking to a keyframe per frame is far slower. decoder carries the same meaning as on extractFrame; a backend that does not choose its decoder by name ignores it.

Implementation

Future<Map<int, RawFrame>> extractFrames(
  Uri source,
  Iterable<int> frameIndices, {
  required int width,
  required int height,
  String? decoder,
});