Download Game! Currently 58 players and visitors. Last logged in:NarcosisIberiamsspVihaanSirda

Blitzer's Blog >> 72211

Back to blogs index
Posted: 08 Sep 2026 12:25 [ permalink ]
$ python3 director.py
=====================================
6 KCYNNISTETCCN SEKVENSSI: demo_run_001
  Kuvaus: Testiajo OBS:n automaattiselle ohjaukselle
=====================================
YhdistetC$C$n OBS Studioon...
[00.00s] Suoritetaan komento: obs_create_scene
[01.00s] Suoritetaan komento: obs_add_browser_source
[03.01s] Suoritetaan komento: start_recording
[15.02s] Suoritetaan komento: stop_recording
=====================================
9 SEKVENSSI VALMIS!
$ ls -ltra ~/ | tail
-rw-------  1 obsuser obsuser     389 Sep  8 08:14 nohup.out
-rw-------  1 obsuser obsuser     112 Sep  8 08:15 .lesshst
-rw-rw-r--  1 obsuser obsuser     390 Sep  8 08:16 .Xresources
drwxr-xr-x  3 obsuser obsuser      60 Sep  8 08:46 Downloads
-rw-rw-r--  1 obsuser obsuser   20776 Sep  8 09:02 2026-09-08 09-01-55.mkv
-rw-rw-r--  1 obsuser obsuser   20800 Sep  8 09:07 2026-09-08 09-07-35.mkv
-rw-rw-r--  1 obsuser obsuser   20788 Sep  8 09:10 2026-09-08 09-09-58.mkv
-rw-------  1 obsuser obsuser   70923 Sep  8 09:17 .bash_history
drwxr-x--- 26 obsuser obsuser      56 Sep  8 09:22 .
-rw-rw-r--  1 obsuser obsuser   52598 Sep  8 09:22 2026-09-08 09-22-08.mkv
$
==

> ORCHESTRATOR LINK: WAITING
> LOCAL TIME: 2026-09-08T09:25:30.398Z

> Ready for Director sequence.

==

TC$ydellinen onnistuminen! 

NC$en videon selvC$sti, ja tulos on tC$smC$lleen se, mitC$ lC$hdimme hakemaan.
VihreC$ tyylitelty terminaalilaatikko nC$kyy kirkkaana ruudulla, kello
tikittC$C$ livenC$ eteenpC$in, ja JavaScriptin ajastin vaihtaa viestejC$
("Initializing graphics...", "Memory check: OK" jne.) juuri suunnitellusti.

Kaiken kukkuraksi tiedostokoko on aivan uskomaton: 12 sekuntia 1080p-videota
vie vain **52 kilotavua**. TC$mC$ todistaa, ettC$ `stillimage`-optimointi
toimii yhdessC$ Selain-lC$hteen kanssa tC$ydellisesti. Laitteistokiihdytyksen
pois kytkeminen korjasi OBS:n kaatumisen, ja `director.py` osaa nyt
orkestroida koko tapahtumaketjun alusta loppuun ilman graafista
kC$yttC6liittymC$C$.

Olemme nyt saavuttaneet sen pisteen, jossa meillC$ on toimiva, ohjelmallisesti
ohjattava Thin Client -esityskerros ja OBS-renderC6ijC$!

### MitC$ rakennamme seuraavaksi?

MeillC$ on nyt kaksi loogista suuntaa, joihin voimme viedC$ tC$mC$n AST-MD
-suunnitelmamme mukaista arkkitehtuuria eteenpC$in.

**Vaihtoehto 1: "Aivojen ja pC$C$tteen" yhdistC$minen (Kaksisuuntainen
WebSocket)**
TC$llC$ hetkellC$ `run.html` pyC6rii omassa tyhjiC6ssC$C$n ja `director.py`
vain odottaa kelloa. Voimme lisC$tC$ arkkitehtuuriin kevyen WebSocket-palvelime
n, johon `run.html` ottaa yhteyttC$ heti kC$ynnistyttyC$C$n. NC$in PC$C$-C$ly
(`director.py`) voi lC$hettC$C$ reaaliajassa selaimeen komentoja (esim.
`{"komento": "kirjoita_teksti", "sisC$ltC6": "Mesh-verkko aktivoitu"}`), ja
selain renderC6i ne heti ruudulle.

**Vaihtoehto 2: SQLite-tehtC$vC$jono ja API-Proxy**
Voimme siirtC$C$ painopisteen ylC$tasolle ja rakentaa sen jonojC$rjestelmC$n
(Task Queue Engine). Teemme SQLite-kannan, johon eilen rakentamasi FastAPI
(`obs_api.py`) ottaa vastaan uusia tehtC$viC$. Sitten muutamme `director.py`:n
taustapalveluksi (Worker), joka pC$ivystC$C$ tC$tC$ kantaa, nappaa sieltC$
seuraavan tyC6n, lataa sitC$ vastaavan YAML-kC$sikirjoituksen ja suorittaa
OBS-sekvenssin.

Kumpaan pC$C$hC$n arkkitehtuuria haluat sukeltaa seuraavaksi?