Merge branch 'fix' into alpha

This commit is contained in:
guozhigq
2023-10-21 21:40:09 +08:00
2 changed files with 50 additions and 39 deletions

View File

@ -214,6 +214,8 @@ class PlPlayerController {
late double fontSizeVal;
late double danmakuSpeedVal;
late List speedsList;
// 缓存
double? defaultDuration;
// 播放顺序相关
PlayRepeat playRepeat = PlayRepeat.pause;
@ -575,8 +577,9 @@ class PlPlayerController {
await _videoPlayerController?.setRate(speed);
try {
DanmakuOption currentOption = danmakuController!.option;
defaultDuration ??= currentOption.duration;
DanmakuOption updatedOption = currentOption.copyWith(
duration: (currentOption.duration / speed) * playbackSpeed);
duration: (defaultDuration! / speed) * playbackSpeed);
danmakuController!.updateOption(updatedOption);
} catch (_) {}
// fix 长按倍速后放开不恢复
@ -584,16 +587,16 @@ class PlPlayerController {
}
/// 设置倍速
Future<void> togglePlaybackSpeed() async {
List<double> allowedSpeeds =
PlaySpeed.values.map<double>((e) => e.value).toList();
int index = allowedSpeeds.indexOf(_playbackSpeed.value);
if (index < allowedSpeeds.length - 1) {
setPlaybackSpeed(allowedSpeeds[index + 1]);
} else {
setPlaybackSpeed(allowedSpeeds[0]);
}
}
// Future<void> togglePlaybackSpeed() async {
// List<double> allowedSpeeds =
// PlaySpeed.values.map<double>((e) => e.value).toList();
// int index = allowedSpeeds.indexOf(_playbackSpeed.value);
// if (index < allowedSpeeds.length - 1) {
// setPlaybackSpeed(allowedSpeeds[index + 1]);
// } else {
// setPlaybackSpeed(allowedSpeeds[0]);
// }
// }
/// 播放视频
Future<void> play({bool repeat = false, bool hideControls = true}) async {