mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-06 09:13:48 +08:00
feat: danmaku chart (#192)
Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
@@ -1004,6 +1004,7 @@ class VideoDetailController extends GetxController
|
||||
vttSubtitles: _vttSubtitles,
|
||||
vttSubtitlesIndex: vttSubtitlesIndex,
|
||||
showVP: showVP,
|
||||
dmTrend: dmTrend,
|
||||
// 硬解
|
||||
enableHA: enableHA.value,
|
||||
hwdec: hwdec.value,
|
||||
@@ -1037,6 +1038,10 @@ class VideoDetailController extends GetxController
|
||||
_getSubtitle();
|
||||
}
|
||||
|
||||
if (showDmChart && dmTrend == null) {
|
||||
_getDmTrend();
|
||||
}
|
||||
|
||||
/// 开启自动全屏时,在player初始化完成后立即传入headerControl
|
||||
plPlayerController.headerControl = headerControl;
|
||||
|
||||
@@ -1970,6 +1975,7 @@ class VideoDetailController extends GetxController
|
||||
audioUrl = null;
|
||||
|
||||
// danmaku
|
||||
dmTrend = null;
|
||||
savedDanmaku = null;
|
||||
|
||||
// subtitle
|
||||
@@ -1985,4 +1991,31 @@ class VideoDetailController extends GetxController
|
||||
segmentList.clear();
|
||||
_segmentProgressList = null;
|
||||
}
|
||||
|
||||
late final showDmChart = GStorage.showDmChart;
|
||||
List? dmTrend;
|
||||
|
||||
void _getDmTrend() async {
|
||||
dmTrend = [];
|
||||
try {
|
||||
dynamic res = await Request().get(
|
||||
'https://bvc.bilivideo.com/pbp/data',
|
||||
queryParameters: {
|
||||
'bvid': bvid,
|
||||
'cid': cid.value,
|
||||
},
|
||||
);
|
||||
|
||||
int stepSec = (res.data['step_sec'] as num?)?.toInt() ?? 0;
|
||||
late List events = (res.data['events']['default'] as List?) ?? [];
|
||||
if (stepSec != 0 && events.isNotEmpty) {
|
||||
dmTrend = events;
|
||||
if (plPlayerController.dmTrend.isEmpty) {
|
||||
plPlayerController.dmTrend.value = events;
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
debugPrint('_getDmTrend: $e');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user