diff --git a/lib/models/video/play/url.dart b/lib/models/video/play/url.dart index 79b62036e..a879fefb3 100644 --- a/lib/models/video/play/url.dart +++ b/lib/models/video/play/url.dart @@ -78,7 +78,9 @@ class Dash { duration = json['duration']; minBufferTime = json['minBufferTime']; video = json['video'].map((e) => VideoItem.fromJson(e)).toList(); - audio = json['audio'].map((e) => AudioItem.fromJson(e)).toList(); + audio = json['audio'] != null + ? json['audio'].map((e) => AudioItem.fromJson(e)).toList() + : []; dolby = json['dolby']; flac = json['flac'] ?? ''; } diff --git a/lib/pages/video/detail/controller.dart b/lib/pages/video/detail/controller.dart index f90ddc568..06ae6886b 100644 --- a/lib/pages/video/detail/controller.dart +++ b/lib/pages/video/detail/controller.dart @@ -125,7 +125,8 @@ class VideoDetailController extends GetxController PlayUrlModel data = result['data']; // 指定质量的视频 -> 最高质量的视频 String videoUrl = data.dash!.video!.first.baseUrl!; - String audioUrl = data.dash!.audio!.first.baseUrl!; + String audioUrl = + data.dash!.audio!.isNotEmpty ? data.dash!.audio!.first.baseUrl! : ''; playerInit(videoUrl, audioUrl, defaultST: Duration(milliseconds: data.lastPlayTime!)); }