Restore Video workspace and route native video API through shared endpoint
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user