Restore Video workspace and route native video API through shared endpoint

This commit is contained in:
Mikei386
2026-09-29 16:58:36 +02:00
parent badc7701fa
commit 67cf57a5b7
15 changed files with 166 additions and 20 deletions
+3 -3
View File
@@ -36,7 +36,7 @@ class Video:
with self.lock:
if self.state=='switching':raise ValueError('Moduswechsel läuft bereits.')
self.refresh()
if not self.service:raise ValueError('Zuerst einen eingerichteten Videodienst unter Weitere Dienste aktivieren.')
if not self.service:raise ValueError('Zuerst einen eingerichteten Videodienst im Bereich Video aktivieren.')
with self.scheduler.cv:self.scheduler.gpu_mode='switching';self.scheduler.cv.notify_all()
self.state='switching';self.error=None;self.target_mode=mode;self.switch_started_at=time.time();self.switch_phase='Deck-GPU-Aufträge beenden' if mode=='video' else 'Videodienst beenden und GPU-Speicher freigeben'
self.thread=threading.Thread(target=self._switch,args=(mode,),daemon=True);self.thread.start()
@@ -51,13 +51,13 @@ class Video:
if time.monotonic()>deadline:raise ValueError('Deck-Aufträge konnten noch nicht beendet werden.')
self.scheduler.cv.wait(.2)
self.scheduler.key=None
self.switch_phase='Freie GPUs prüfen und Videodienst-Dienst starten'
self.switch_phase='Freie GPUs prüfen und Videodienst starten'
self.helper.call('video-start',self.selected);self.switch_phase='Auf Original-API des Dienstes warten'
deadline=time.monotonic()+240
while True:
service=next(s for s in self.helper.call('video-status')['services'] if s['id']==self.selected)
if service.get('ready'):break
if not service.get('running'):raise ValueError('Videodienst-Dienst wurde beendet. Installation prüfen.')
if not service.get('running'):raise ValueError('Videodienst wurde beendet. Installation prüfen.')
if time.monotonic()>deadline:raise ValueError('Videodienst läuft, seine API ist noch nicht bereit. Erneut prüfen oder auf LLM zurückschalten.')
time.sleep(2)
else: