prepare method
Load the media from position
in milliseconds and decode the first frame, then state will be PlaybackState.paused.
If error occurs, will be PlaybackState.stopped.
Return the result position, or a negative value if failed.
https://github.com/wang-bin/mdk-sdk/wiki/Player-APIs#void-prepareint64_t-startposition--0-functionboolint64_t-position-bool-boost-cb--nullptr-seekflag-flags--seekflagfromstart
Return 0: if mediaInfo.streams == 0, invalid media. otherwise success -1: already loading or loaded -4: requested position out of range -10: internal error
Implementation
Future<int> prepare(
{int position = 0,
SeekFlag flags = const SeekFlag(SeekFlag.defaultFlags),
Future<bool> Function()? callback,
bool reply = false}) async {
_prepared = Completer<int>();
Libfvp.registerType(nativeHandle, 3, reply);
_prepareCb = callback;
if (!Libfvp.prepare(nativeHandle, position, flags.rawValue,
NativeApi.postCObject.cast(), _receivePort.sendPort.nativePort)) {
_prepared.complete(-10);
}
return _prepared.future;
}