Max2000DualVideoPlatform class abstract

Inheritance
  • Object
  • PlatformInterface
  • Max2000DualVideoPlatform
Implementers

Constructors

Max2000DualVideoPlatform()
Constructs a Max2000DualVideoPlatform.

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
stateStream → Stream<Map<String, dynamic>>
Raw state events pushed from the native EventChannel. This is the sole source of ongoing engine/playback state -- no Dart-side polling, no Dart-side timers, no Dart-side drift correction. Typed parsing of each event happens once, in DualVideoEngineState.fromMap (see max2000_dual_video.dart).
no setter

Methods

dispose() → Future<void>
Releases the native players and their texture surfaces. Terminal for the currently mounted pair of Max2000DualVideoPlayerView widgets -- see INTEGRATION_GUIDE.md ("dispose() lifecycle").
getMediaDir() → Future<String>
Directory (app-scoped external files dir) where local test videos should be pushed for manual testing.
getPlatformVersion() → Future<String?>
getState() → Future<Map<String, dynamic>>
One-shot raw state pull.
load({required String pathA, required String pathB, int initialOffsetMs = 0}) → Future<void>
Loads local file pathA into player A and pathB into player B. Forces LINKED mode.
loadPlayer(String player, String path) → Future<void>
Loads path into a single player (player is the raw wire value 'A' or 'B'), leaving the other player untouched. Forces UNLINKED mode.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
nudgeOffsetMs(int deltaMs) → Future<void>
Relative alignment calibration between A and B. LINKED/master control.
pause() → Future<void>
Pauses both players. LINKED/master control.
pausePlayer(String player) → Future<void>
Pauses a single player independently. Valid only while unlinked.
play() → Future<void>
Starts both players. LINKED/master control.
playPlayer(String player) → Future<void>
Starts a single player independently. Valid only while unlinked.
seekPlayerTo(String player, int positionMs) → Future<void>
Seeks a single player independently (no offset mapping). Valid only while unlinked.
seekTo(int masterPositionMs) → Future<void>
Explicit coordinated seek of both players via the alignment offset. LINKED/master control.
setLinked(bool linked) → Future<void>
Switches between LINKED (A-master synchronized) and UNLINKED (independent A/B) synchronization mode. Does not itself start playback or drift correction.
setOffsetMs(int offsetMs) → Future<void>
Absolute alignment calibration between A and B. LINKED/master control.
setPlayerVolume(String player, double volume) → Future<void>
Sets a single player's volume (0.0-1.0). Available in either mode -- volume never affects synchronization.
setSpeed(double speed) → Future<void>
Shared playback rate applied to both players. LINKED/master control.
stepFrame(String direction) → Future<void>
Coordinated single-frame step of the master (A) timeline. direction is the raw wire value: 'forward' or 'backward'. LINKED/master control.
stepPlayerFrame(String player, String direction) → Future<void>
Steps a single player by one of its own frames independently. direction is the raw wire value: 'forward' or 'backward'. Valid only while unlinked.
stop() → Future<void>
Pauses both players and rewinds to 0. Stays loaded/resumable -- does NOT release the native decoders. LINKED/master control.
stopPlayer(String player) → Future<void>
Pauses and rewinds a single player to 0 independently. Valid only while unlinked.
toString() → String
A string representation of this object.
inherited

Operators

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

Static Properties

instance ↔ Max2000DualVideoPlatform
The default instance of Max2000DualVideoPlatform to use.
getter/setter pair