Flutter 2は、パフォーマンスとアーキテクチャの変更に加えて、null safetyなどの機能を備えています。これは、オプションとして定義されていない限り、変数にnullを含められないことを意味します。
Agora Flutter SDKは、macOSとWindowsの2つのプラットフォームをサポートするようになりました。したがって、単一のコードベースを使用して、モバイルおよびデスクトップ用のライブビデオ通話またはライブビデオストリーミングアプリケーションを構築できます。
新しいプラットフォームの追加により、いくつかの非常にエキサイティングな機能が提供され、このリリースでは、画面共有がWindowsおよびmacOS用のFlutter SDKに直接追加されました。 また、教師やオンライン配信者はデュアルストリームを求めていました。現在、Flutter 5.0.0でサポートされており、画面を共有し、同時にカメラストリームをビデオチャンネルにプッシュできます。アプリケーションに画面共有を追加する方法は次のとおりです。
getScreenShareHelper
:子プロセスオブジェクトを取得します。
startScreenCaptureByDisplayId
:表示IDを指定して画面を共有します。
startScreenCaptureByWindowId
:ウィンドウIDを指定して、ウィンドウの全部または一部を共有します。
srartScreenCaptureByScreenRect
:画面の四角形を指定して、画面の全体または一部を共有します。
さらに2つのプラットフォームが導入されたことで、ビデオをレンダリングするためのコアテクノロジーが変更されました。
Androidには2つのレンダリングタイプがあり、SurfaceView
とTextureView
どちらもSDKでサポートされています。
iOSでは、このSurfaceView
はSDKレンダリングであり、TextureView
生データの自己レンダリングです。
WindowsとmacOSのレンダリングタイプはどちらも1つだけ、生データの自己レンダリングです。
プラットフォームの開発アーキテクチャは、IRISフレームワークに基づいてリファクタリングおよび開発されています。このアーキテクチャの変更は、ネイティブSDKと連携するはるかに安定した高度なSDKの構築に役立ちます。
これらは、agora_rtc_enginge
5.0.0リリースに含まれるアップデートのほんの一部です。Flutterリリースノートのすべてのアップデートについては、リリースノート全体を確認してください。 パッケージの詳細については、pub.devをご覧ください。