8000 Fix #365. · next-coder/flutter-webrtc@975a9f0 · GitHub
[go: up one dir, main page]

Skip to content

Commit 975a9f0

Browse files
committed
1 parent fbefb88 commit 975a9f0

File tree

4 files changed

+20
-25
lines changed

4 files changed

+20
-25
lines changed

lib/src/media_recorder.dart

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
1-
import 'package:flutter_webrtc/flutter_webrtc.dart';
2-
import 'package:flutter_webrtc/src/interface/media_stream_track.dart';
3-
4-
import 'package:flutter_webrtc/src/interface/media_stream.dart';
5-
6-
import 'package:flutter_webrtc/src/interface/enums.dart';
7-
1+
import '../flutter_webrtc.dart';
2+
import 'interface/enums.dart';
83
import 'interface/media_recorder.dart' as _interface;
4+
import 'interface/media_stream.dart';
5+
import 'interface/media_stream_track.dart';
96

107
class MediaRecorder extends _interface.MediaRecorder {
118
MediaRecorder() : _delegate = mediaRecorder();

lib/src/native/rtc_video_view_impl.dart

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import 'package:flutter/material.dart';
44

55
import '../interface/enums.dart';
66
import '../interface/rtc_video_renderer.dart';
7+
import '../rtc_video_renderer.dart';
78
import 'rtc_video_renderer_impl.dart';
89

910
class RTCVideoView extends StatelessWidget {
@@ -16,12 +17,12 @@ class RTCVideoView extends StatelessWidget {
1617
assert(mirror != null),
1718
super(key: key);
1819

19-
final VideoRenderer _renderer;
20+
final RTCVideoRenderer _renderer;
2021
final RTCVideoViewObjectFit objectFit;
2122
final bool mirror;
2223

2324
RTCVideoRendererNative get videoRenderer =>
24-
_renderer as RTCVideoRendererNative;
25+
_renderer.delegate as RTCVideoRendererNative;
2526

2627
@override
2728
Widget build(BuildContext context) {
@@ -41,7 +42,7 @@ class RTCVideoView extends StatelessWidget {
4142
: BoxFit.cover,
4243
child: Center(
4344
child: ValueListenableBuilder<RTCVideoValue>(
44-
valueListenable: _renderer,
45+
valueListenable: videoRenderer,
4546
builder:
4647
(BuildContext context, RTCVideoValue value, Widget child) {
4748
return SizedBox(

lib/src/rtc_video_renderer.dart

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,28 @@
1-
import 'package:flutter_webrtc/flutter_webrtc.dart';
2-
31
import '../flutter_webrtc.dart';
42
import 'interface/rtc_video_renderer.dart';
53

6-
class RTCVideoRenderer extends VideoRenderer {
4+
class RTCVideoRenderer {
75
RTCVideoRenderer() : _delegate = videoRenderer();
86

97
final VideoRenderer _delegate;
108

11-
@override
9+
VideoRenderer get delegate => _delegate;
10+
1211
Future<void> initialize() => _delegate.initialize();
1312

14-
@override
1513
bool get renderVideo => _delegate.renderVideo;
1614

17-
@override
1815
bool get muted => _delegate.muted;
1916

20-
@override
2117
MediaStream get srcObject => _delegate.srcObject;
2218

23-
@override
2419
set muted(bool mute) => _delegate.muted = mute;
2520

26-
@override
2721
set srcObject(MediaStream stream) => _delegate.srcObject = stream;
2822

29-
@override
3023
int get textureId => _delegate.textureId;
24+
25+
Future<void> dispose() async {
26+
return _delegate.dispose();
27+
}
3128
}

lib/src/web/rtc_video_view_impl.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import 'package:flutter/material.dart';
2-
import 'package:flutter_webrtc/src/web/rtc_video_renderer_impl.dart';
32

43
import '../interface/enums.dart';
5-
import '../interface/rtc_video_renderer.dart';
4+
import '../rtc_video_renderer.dart';
5+
import '../web/rtc_video_renderer_impl.dart';
66

77
class RTCVideoView extends StatefulWidget {
88
RTCVideoView(
@@ -14,7 +14,7 @@ class RTCVideoView extends StatefulWidget {
1414
assert(mirror != null),
1515
super(key: key);
1616

17-
final VideoRenderer _renderer;
17+
final RTCVideoRenderer _renderer;
1818
final RTCVideoViewObjectFit objectFit;
1919
final bool mirror;
2020
@override
@@ -24,11 +24,11 @@ class RTCVideoView extends StatefulWidget {
2424
class _RTCVideoViewState extends State<RTCVideoView> {
2525
_RTCVideoViewState();
2626
RTCVideoRendererWeb get videoRenderer =>
27-
widget._renderer as RTCVideoRendererWeb;
27+
widget._renderer.delegate as RTCVideoRendererWeb;
2828
@override
2929
void initState() {
3030
super.initState();
31-
widget._renderer?.addListener(() => setState(() {}));
31+
widget._renderer?.delegate?.addListener(() => setState(() {}));
3232
}
3333

3434
Widget buildVideoElementView(RTCVideoViewObjectFit o 3796 bjFit, bool mirror) {

0 commit comments

Comments
 (0)
0