Skip to content

Commit d04ded8

Browse files
author
kongdywang
committed
Fix some live streaming APIs that lacked instantiation checks, causing errors when calling the APIs directly on a just-initialized player due to "not instantiated" issues.
1 parent a245e83 commit d04ded8

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

Flutter/lib/Core/txliveplayer_controller.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,7 @@ class TXLivePlayerController extends ChangeNotifier implements ValueListenable<T
288288
@override
289289
Future<void> exitPictureInPictureMode() async {
290290
if (_isNeedDisposed) return;
291+
await _initPlayer.future;
291292
if (defaultTargetPlatform == TargetPlatform.android) {
292293
await _livePlayerApi.exitPictureInPictureMode(PlayerMsg()
293294
..playerId = _playerId);
@@ -311,6 +312,7 @@ class TXLivePlayerController extends ChangeNotifier implements ValueListenable<T
311312
///
312313
Future<int> enableReceiveSeiMessage(bool isEnabled, int payloadType) async {
313314
if (_isNeedDisposed) return -1;
315+
await _initPlayer.future;
314316
return await _livePlayerApi.enableReceiveSeiMessage(PlayerMsg(playerId: _playerId),
315317
isEnabled, payloadType);
316318
}
@@ -324,6 +326,7 @@ class TXLivePlayerController extends ChangeNotifier implements ValueListenable<T
324326
///
325327
Future<void> showDebugView(bool isShow) async {
326328
if (_isNeedDisposed) return;
329+
await _initPlayer.future;
327330
await _livePlayerApi.showDebugView(PlayerMsg(playerId: _playerId), isShow);
328331
}
329332

@@ -348,6 +351,7 @@ class TXLivePlayerController extends ChangeNotifier implements ValueListenable<T
348351
///
349352
Future<int> setProperty(String key, Object value) async {
350353
if (_isNeedDisposed) return -1;
354+
await _initPlayer.future;
351355
return await _livePlayerApi.setProperty(PlayerMsg(playerId: _playerId), key, value);
352356
}
353357

@@ -358,6 +362,7 @@ class TXLivePlayerController extends ChangeNotifier implements ValueListenable<T
358362
///
359363
Future<List<FSteamInfo>> getSupportedBitrate() async {
360364
if (_isNeedDisposed) return [];
365+
await _initPlayer.future;
361366
ListMsg listMsg = await _livePlayerApi.getSupportedBitrate(PlayerMsg(playerId: _playerId));
362367
List<FSteamInfo> steamList = [];
363368
if (null != listMsg.value) {
@@ -391,6 +396,7 @@ class TXLivePlayerController extends ChangeNotifier implements ValueListenable<T
391396
///
392397
Future<int> setCacheParams(double minTime, double maxTime) async {
393398
if (_isNeedDisposed) return -1;
399+
await _initPlayer.future;
394400
return await _livePlayerApi.setCacheParams(PlayerMsg(playerId: _playerId), minTime, maxTime);
395401
}
396402

0 commit comments

Comments
 (0)