From ea2f6d3361145c44359cf3ae903b37624826b03b Mon Sep 17 00:00:00 2001 From: Kai Date: Sat, 2 Nov 2024 14:17:15 +0700 Subject: [PATCH] chore: bump version 1.5.2 --- CHANGELOG.md | 7 +++++++ lib/flutter_waterbus_sdk.dart | 2 ++ lib/types/models/media_source.dart | 32 ++++++++---------------------- pubspec.yaml | 6 +++--- 4 files changed, 20 insertions(+), 27 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6483241..4cafd0d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## 1.5.2 + +* [Feat] add white board +* [Feat] add record +* [Feat] add raise hand +* [Fix] PlatformView iOS + ## 1.5.1 * [Fix]: Isolate on web diff --git a/lib/flutter_waterbus_sdk.dart b/lib/flutter_waterbus_sdk.dart index ab3e0c5..790f7d2 100644 --- a/lib/flutter_waterbus_sdk.dart +++ b/lib/flutter_waterbus_sdk.dart @@ -68,6 +68,8 @@ class WaterbusSdk { WaterbusSdk.apiKey = apiKey; WaterbusSdk.privateMessageKey = privateMessageKey; + WebRTC.initialize(options: {"bypassVoiceProcessing": true}); + // Init dependency injection if needed if (!getIt.isRegistered()) { await BaseLocalData.initialize(); diff --git a/lib/types/models/media_source.dart b/lib/types/models/media_source.dart index ef4d843..9f3d538 100644 --- a/lib/types/models/media_source.dart +++ b/lib/types/models/media_source.dart @@ -6,14 +6,12 @@ import 'package:waterbus_sdk/flutter_waterbus_sdk.dart'; class MediaSource { MediaStream? stream; - RTCVideoRenderer? renderer; - RTCVideoPlatformViewController? viewController; + VideoRenderer? renderer; bool hasFirstFrameRendered; final Function()? onFirstFrameRendered; MediaSource({ this.stream, this.renderer, - this.viewController, this.hasFirstFrameRendered = false, this.onFirstFrameRendered, }) { @@ -30,8 +28,8 @@ class MediaSource { objectFit: objectFit, mirror: mirror, onViewReady: (controller) { - viewController = controller; - viewController?.srcObject = stream; + renderer = controller; + renderer?.srcObject = stream; }, ); } @@ -41,7 +39,7 @@ class MediaSource { } return RTCVideoView( - renderer!, + renderer as RTCVideoRenderer, key: textureId == null ? null : Key(textureId!.toString()), objectFit: objectFit, mirror: mirror, @@ -49,17 +47,11 @@ class MediaSource { ); } - void setPlatformView(RTCVideoPlatformViewController controller) { - viewController = controller; - viewController?.srcObject = stream; - } - Future dispose() async { + renderer?.srcObject = null; await renderer?.dispose(); - await viewController?.dispose(); await stream?.dispose(); renderer = null; - viewController = null; stream = null; } @@ -72,11 +64,7 @@ class MediaSource { this.stream = stream; - if (WebRTC.platformIsIOS) { - viewController?.srcObject = stream; - } else { - renderer?.srcObject = stream; - } + renderer?.srcObject = stream; } Future _initRendererIfNeeded() async { @@ -102,15 +90,13 @@ class MediaSource { MediaSource copyWith({ MediaStream? stream, - RTCVideoRenderer? renderer, - RTCVideoPlatformViewController? viewController, + VideoRenderer? renderer, bool? hasFirstFrameRendered, Function()? onFirstFrameRendered, }) { return MediaSource( stream: stream ?? this.stream, renderer: renderer ?? this.renderer, - viewController: viewController ?? this.viewController, hasFirstFrameRendered: hasFirstFrameRendered ?? this.hasFirstFrameRendered, onFirstFrameRendered: onFirstFrameRendered ?? this.onFirstFrameRendered, @@ -119,7 +105,7 @@ class MediaSource { @override String toString() { - return 'MediaSource(stream: $stream, renderer: $renderer, viewController: $viewController, hasFirstFrameRendered: $hasFirstFrameRendered, onFirstFrameRendered: $onFirstFrameRendered)'; + return 'MediaSource(stream: $stream, renderer: $renderer, hasFirstFrameRendered: $hasFirstFrameRendered, onFirstFrameRendered: $onFirstFrameRendered)'; } @override @@ -128,7 +114,6 @@ class MediaSource { return other.stream == stream && other.renderer == renderer && - other.viewController == viewController && other.hasFirstFrameRendered == hasFirstFrameRendered && other.onFirstFrameRendered == onFirstFrameRendered; } @@ -137,7 +122,6 @@ class MediaSource { int get hashCode { return stream.hashCode ^ renderer.hashCode ^ - viewController.hashCode ^ hasFirstFrameRendered.hashCode ^ onFirstFrameRendered.hashCode; } diff --git a/pubspec.yaml b/pubspec.yaml index 3eb8b8a..99478d6 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: waterbus_sdk description: Flutter plugin of Waterbus. Build video call or online meeting application with SFU model. Supports iOS, Android. -version: 1.5.1 +version: 1.5.2 homepage: https://docs.waterbus.tech repository: https://github.com/waterbustech/waterbus-flutter-sdk issue_tracker: https://github.com/waterbustech/waterbus-flutter-sdk/issues @@ -42,9 +42,9 @@ dependencies: sdp_transform: ^0.3.2 h264_profile_level_id: ^0.2.1 dart_webrtc_plus: ^1.4.6+2 - flutter_webrtc_plus: ^0.11.2+7 + flutter_webrtc_plus: ^0.12.1+1 # flutter_webrtc_plus: - # path: /Users/lambiengcode/Documents/webrtc/flutter-webrtc + # path: /Users/lambiengcode/Documents/waterbus/flutter-webrtc-plus # Dependency Injection get_it: ^7.6.8