configureWindow method
Configure the screen context with a window and format.
Implementation
@override
Future<void> configureWindow(
String windowId,
MiniAVVideoInfo format, {
bool captureAudio = false,
}) async {
_ensureNotDestroyed();
final windowIdPtr = windowId.toNativeUtf8();
final nativeFormatPtr = calloc<bindings.MiniAVVideoInfo>();
try {
VideoFormatInfoFFIToPlatform.copyToNative(format, nativeFormatPtr.ref);
final result = bindings.MiniAV_Screen_ConfigureWindow(
_context!,
windowIdPtr.cast(),
nativeFormatPtr,
captureAudio,
);
if (result != bindings.MiniAVResultCode.MINIAV_SUCCESS) {
throw Exception('Failed to configure window: ${result.name}');
}
} finally {
calloc.free(windowIdPtr);
calloc.free(nativeFormatPtr);
}
}