feat: loudnorm (#1358)

* feat: loudnorm

* fix

* fix: android only

* fix: toString
This commit is contained in:
My-Responsitories
2025-09-28 22:16:33 +08:00
committed by GitHub
parent 046412b709
commit 22c57bf468
14 changed files with 307 additions and 199 deletions

View File

@@ -1056,6 +1056,7 @@ class VideoDetailController extends GetxController
Duration? seekToTime,
Duration? duration,
bool? autoplay,
Volume? volume,
}) async {
await plPlayerController.setDataSource(
DataSource(
@@ -1095,6 +1096,7 @@ class VideoDetailController extends GetxController
},
width: firstVideo.width,
height: firstVideo.height,
volume: volume ?? this.volume,
);
if (plPlayerController.enableSponsorBlock) {
@@ -1125,6 +1127,8 @@ class VideoDetailController extends GetxController
queryVideoUrl(defaultST: playedTime);
}
Volume? volume;
// 视频链接
Future<void> queryVideoUrl({
Duration? defaultST,
@@ -1164,6 +1168,8 @@ class VideoDetailController extends GetxController
languages.value = data.language?.items;
currLang.value = data.curLanguage;
volume = data.volume;
if (data.acceptDesc?.contains('试看') == true) {
SmartDialog.showToast(
'该视频为专属视频,仅提供试看',

View File

@@ -43,7 +43,6 @@ import 'package:get/get.dart';
import 'package:hive/hive.dart';
import 'package:intl/intl.dart' show DateFormat;
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
import 'package:media_kit/media_kit.dart';
class HeaderControl extends StatefulWidget {
const HeaderControl({
@@ -446,8 +445,9 @@ class HeaderControlState extends State<HeaderControl> {
SmartDialog.showToast('播放器未初始化');
return;
}
final hwdec = await (player.platform as NativePlayer)
.getProperty('hwdec-current');
final hwdec = await player.platform!.getProperty(
'hwdec-current',
);
if (!context.mounted) return;
showDialog(
context: context,