fix: only switch quality during active playback, not after video ended

This commit is contained in:
2026-06-12 17:51:01 +08:00
parent d46a2194f4
commit 503496ea0e
2 changed files with 8 additions and 6 deletions

View File

@@ -114,10 +114,14 @@ watch([() => store.qteTimeRelax, () => store.qteSingleKey], () => {
watch(() => store.preferredQuality, (q) => {
engine.videoManager.streamingQuality = q
const scene = store.currentScene
if (scene?.streamingUrl && q) {
const url = engine.videoManager.resolveVideoUrl(scene, q)
const ct = engine.videoManager.getCurrentTime()
engine.videoManager.switchQuality(url, ct)
if (scene?.streamingUrl && scene.streamingUrl[q]) {
const active = engine.videoManager.getActiveVideoElement()
if (active && !active.ended) {
engine.videoManager.switchQuality(
engine.videoManager.resolveVideoUrl(scene, q),
engine.videoManager.getCurrentTime()
)
}
}
}, { immediate: true })