{"id":"c1027","filename":"c1027_dual_kamera_track_f_zakon42_hologram.dok.json","weise3_id":"","tip":"arhitektura","naziv":"FLF Dual Kamera — Track F + ZAKON 42 + Hologramski Kompozitor","kreator":"genesis","datum":"2026-05-21","snippet":"","status":"DONE","prev_weise3":"","bunker_l":"#00d4ff","full":{"tip":"arhitektura","naziv":"FLF Dual Kamera — Track F + ZAKON 42 + Hologramski Kompozitor","chain":"c1025","datum":"2026-05-21","sesija":"sesija-2026-05-21-dual-cam","status":"DONE","prioritet":"P1","filozofija":"Dvije kamere = dva kuta gledanja = parallax = prava 3D informacija = hologram. Jedna kamera je fotografija. Dvije kamere su prostor.","sto_napravljeno":["DB migracija: ALTER TABLE flf_sessions ADD COLUMN atom_count_f INTEGER DEFAULT 0","DB migracija: ALTER TABLE flf_atoms ALTER COLUMN track TYPE VARCHAR(2)","Backend: dodano 'F' u allowed tracks: if track not in ('A','B','C','T','F')","Backend: atom_count_f ORM kolona na FLFSessionORM","enumerateDevices() identificira kamere po deviceId (ne facingMode — pouzadanije)","Dual-stream: _backStream (scena) + _frontStream (lice) — dva getUserMedia poziva","Track B = stražnja kamera (ploča, profesor, scena) → 1280×720, 200kbps","Track F = prednja kamera (lice, reakcija, dubina) → 640×480, 200kbps, 15fps","makeVideoRec() — zajednička funkcija za oba MediaRecorder","PIP overlay: camFront apsolutno pozicioniran bottom:8px right:8px, width:28%","live.html: MediaSource B (scena) + MediaSource F (lice) — dva neovisna bufffera","Hologram kompozitor — dual-source rendering:","  - Track B: RGB disperzija scene (baza hologramskog efekta)","  - Track F: lice lebdi u gornjem desnom kutu scene","  - Parallax lica je OBRNUT od scene (tX neg) → mozak percipira dubinu","  - Lice ima 2.2× saturaciju (protagonist nad pozadinom)","  - Radijalni glow oko lica (hologramski okvir)","Torch (bljeskalica): applyConstraints({advanced:[{torch:true}]}) na stražnjoj kameri","Graceful degradation: ako OS blokira dual → radi s jednom kamerom, dugme 📷","toggleDual(): korisnik može ručno uključiti/isključiti prednju kameru","Mobitel default: stražnja kamera (/Mobi|Android|iPhone|iPad/ → facingMode=environment)","PWA: beforeinstallprompt → btnInstall, manifest orientation='any'","Web Share API: navigator.share() na mobitelu, wa.me fallback na desktopu","holo-core.js: universalni HoloRenderer class za sve module"],"zakon_42":{"naziv":"ZAKON 42 — Dual Kamera Hologram Protokol","datum":"2026-05-21","pravila":["UVIJEK koristiti enumerateDevices() za identifikaciju kamera — ne facingMode direktno","Track B = stražnja kamera (scena/ploča/sadrzaj) — UVIJEK","Track F = prednja kamera (lice/reakcija/dubina) — UVIJEK kad dostupno","Oba streama koriste isti MediaRecorder pattern: 5s atomi, 200kbps, VP9→VP8→WebM fallback","Graceful degradation: jedan stream je validan snimak, dva su hologram","Parallax lica mora biti OBRNUT od parallax scene (prava 3D percepcija)","Nikad ne zaustavljaj _camStream pri stopRec() — samo _backRec i _frontRec stopirati"],"citacija":"Jedna kamera snima. Dvije kamere razumiju prostor. — Ivan Seki, 2026-05-21"},"holografska_matematika":{"opis":"Dva kuta gledanja = stereoskopska slika = prava 3D informacija","back_camera":"scena, 1280×720, parallax +tX","front_camera":"lice, 640×480, parallax -tX (obrnut = dubinska separacija)","percepcija":"mozak vidi lice ispred scene jer ima suprotan parallax","usporedba":"isto što VR headset kamere — ali u browseru, W3C standardima"},"fajlovi":["/var/www/genesis/nolimit-static/flf/genesis_record.html","/var/www/genesis/nolimit-static/flf/live.html","/var/www/genesis/api/flf.py","/var/www/genesis/nolimit-static/flf/manifest.json"],"db_promjene":["flf_sessions.atom_count_f INTEGER DEFAULT 0","flf_atoms.track VARCHAR(2) (bilo VARCHAR(1))"],"buducnost":["P1: Integracija holo-core.js u DokArh /view/{id} — hologram button","P1: Integracija u Digigraf (QR scan viewer)","P2: Memio Farm/Pet/World — sve slike postaju 4D hologramski dokumenti","P2: Baustela — dual panel (mapa + hologram)","P2: iOS Safari HLS fallback (MediaSource limitiran na iPhoneu)","P3: WebXR exit — GET /view/{id}?xr=1 → AR naočale → lice lebdi u prostoru","P3: NeRF iz dual-cam streama → 3D rekonstrukcija scene iz dva pogleda"],"zakoni":["ZAKON 41","ZAKON 38","ZAKON 3","ZAKON 42 (NOVO)"],"weise3_formula":"SHA3-256('WEISE3::{session_id}::F::{t_ms}::genesis-rec::atom::FENIX2026')"}}