Skip to content

Commit

Permalink
chore: bump version 1.5.2
Browse files Browse the repository at this point in the history
  • Loading branch information
lambiengcode committed Nov 2, 2024
1 parent d988c14 commit ea2f6d3
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 27 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -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
Expand Down
2 changes: 2 additions & 0 deletions lib/flutter_waterbus_sdk.dart
Original file line number Diff line number Diff line change
Expand Up @@ -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<WaterbusWebRTCManager>()) {
await BaseLocalData.initialize();
Expand Down
32 changes: 8 additions & 24 deletions lib/types/models/media_source.dart
Original file line number Diff line number Diff line change
Expand Up @@ -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,
}) {
Expand All @@ -30,8 +28,8 @@ class MediaSource {
objectFit: objectFit,
mirror: mirror,
onViewReady: (controller) {
viewController = controller;
viewController?.srcObject = stream;
renderer = controller;
renderer?.srcObject = stream;
},
);
}
Expand All @@ -41,25 +39,19 @@ class MediaSource {
}

return RTCVideoView(
renderer!,
renderer as RTCVideoRenderer,
key: textureId == null ? null : Key(textureId!.toString()),
objectFit: objectFit,
mirror: mirror,
filterQuality: FilterQuality.none,
);
}

void setPlatformView(RTCVideoPlatformViewController controller) {
viewController = controller;
viewController?.srcObject = stream;
}

Future<void> dispose() async {
renderer?.srcObject = null;
await renderer?.dispose();
await viewController?.dispose();
await stream?.dispose();
renderer = null;
viewController = null;
stream = null;
}

Expand All @@ -72,11 +64,7 @@ class MediaSource {

this.stream = stream;

if (WebRTC.platformIsIOS) {
viewController?.srcObject = stream;
} else {
renderer?.srcObject = stream;
}
renderer?.srcObject = stream;
}

Future<void> _initRendererIfNeeded() async {
Expand All @@ -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,
Expand All @@ -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
Expand All @@ -128,7 +114,6 @@ class MediaSource {

return other.stream == stream &&
other.renderer == renderer &&
other.viewController == viewController &&
other.hasFirstFrameRendered == hasFirstFrameRendered &&
other.onFirstFrameRendered == onFirstFrameRendered;
}
Expand All @@ -137,7 +122,6 @@ class MediaSource {
int get hashCode {
return stream.hashCode ^
renderer.hashCode ^
viewController.hashCode ^
hasFirstFrameRendered.hashCode ^
onFirstFrameRendered.hashCode;
}
Expand Down
6 changes: 3 additions & 3 deletions pubspec.yaml
Original file line number Diff line number Diff line change
@@ -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
Expand Down Expand Up @@ -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
Expand Down

0 comments on commit ea2f6d3

Please sign in to comment.