openVideo method

  1. @override
Future<WinVideoPlayerValue?> openVideo(
  1. WinVideoPlayerController player,
  2. int textureId,
  3. String path,
  4. Map<String, String> httpHeaders,
)
override

Implementation

@override
Future<WinVideoPlayerValue?> openVideo(WinVideoPlayerController player,
    int textureId, String path, Map<String, String> httpHeaders) async {
  var arguments = await methodChannel.invokeMethod<Map>('openVideo',
      {"textureId": -1, "path": path, "httpHeaders": httpHeaders});
  if (arguments == null) return null;
  if (arguments["result"] == false) return null;

  int width = arguments["videoWidth"];
  int height = arguments["videoHeight"];
  double volume = arguments["volume"];
  int textureId = arguments["textureId"];
  var value = WinVideoPlayerValue(
    textureId: textureId,
    position: Duration.zero,
    duration: Duration(milliseconds: arguments["duration"]),
    size: Size(width.toDouble(), height.toDouble()),
    isPlaying: false,
    isInitialized: true,
    volume: volume,
  );

  playerMap[value.textureId] =
      WeakReference<WinVideoPlayerController>(player);
  return value;
}