Plik ten sam, film inny
Wyobraź sobie plik video, który ma ten sam hash.
Te same bajty.
Ten sam zapis bazowy.
A jednak przy drugim odtworzeniu widzisz trochę inny film.
Nie dlatego, że ktoś po cichu podmienił plik.
Dlatego, że część obrazu powstaje dopiero w chwili projekcji.
To jest rdzeń konceptu Quax Video.
Plik się nie zmienił, ale film się zmienił.
Status: KONCEPT / ROZWIJAMY.
Nie jest to jeszcze zamrożony format ani gotowa specyfikacja kontenera.
Dwa poziomy: zapis i projekcja
W zwykłym video łatwo myśleć o pliku jak o gotowym filmie.
Odtwarzacz ma tylko go pokazać.
Quax Video rozdziela te dwie rzeczy mocniej.
Mamy:
- zapis bazowy;
- program transformacji;
- kontekst odtworzenia;
- wyświetloną projekcję.
Schematycznie:
decodedFrame → contextualTransform → displayedFrame
Czyli frame po dekodowaniu nie musi być jeszcze tym, co ostatecznie zobaczy widz.
Co może być zapisane w pliku?
Potencjalna struktura może zawierać więcej niż zwykły stream video i audio.
Na przykład:
- standardowy stream video;
- audio;
- maski obiektów;
- tracking;
- segmentation / depth;
- timed metadata;
- programy transformacji;
- deklaracje źródeł zewnętrznego stanu.
Nie wszystko musi być widoczne w każdej projekcji.
Część może istnieć po to, żeby umożliwić późniejsze przeliczenie obrazu w zależności od kontekstu.
Zegar, który nie ma jednej godziny
Najprostszy przykład to zegar w filmie.
Można wyobrazić sobie kilka czasów:
- czas lokalny urządzenia;
- Quax network time;
- timestamp aktualnego bloku;
- czas oryginalnego nagrania.
Ten sam materiał bazowy może więc pokazać inną wartość w zależności od tego, kiedy i w jakim kontekście jest odtwarzany.
Nie oznacza to, że historia nagrania została fizycznie zmieniona.
To nie jest automatycznie A-002.
To programowalna projekcja zależna od kontekstu.
Type Discipline znowu oszczędza nam metafizycznego zamieszania.
Hash czego właściwie sprawdzamy?
Quax Video od razu tworzy ciekawe pytanie:
czy hash pliku jest też hashem tego, co zobaczył widz?
Nie musi być.
Jeżeli displayedFrame zależy od kontekstu, możemy mieć dwa różne poziomy integralności:
- integralność źródłowego pliku;
- integralność konkretnej projekcji / konkretnego wykonania transformacji.
To jest ważne także poza sztuką.
Bo zdanie:
„mamy ten sam plik”
nie musi już oznaczać:
„zobaczyliśmy dokładnie ten sam obraz”.
Quax Video jako demonstracja projekcji
Ten koncept jest bardzo quaxowy nie dlatego, że film magicznie „żyje”.
Jest quaxowy dlatego, że technicznie rozdziela:
nośnik → transformację → projekcję.
To pozwala pokazać coś, co w filozofii Quaxa jest stale obecne:
reprezentacja nie jest po prostu biernym oknem.
Warunki projekcji mają znaczenie.
Można więc zbudować film, w którym różni widzowie albo różne momenty odtworzenia dostają różne R_V, mimo wspólnego źródłowego artefaktu.
To nadal nie znaczy, że każda projekcja jest równie dobra dla każdego claimu.
Dynamiczność nie usuwa problemu kalibracji.
Możliwy związek z chainem
Jednym ze źródeł kontekstu może być stan Quax network.
Na przykład:
- block timestamp;
- block hash;
- aktualny stan wskazanego Quax Object;
- określony publiczny event.
Wtedy film może wchodzić w relację z aktualnym stanem Protocolu.
Ale trzeba zachować ważną granicę:
film zależny od chaina ≠ chain jako autor całej treści filmu
oraz:
stan chaina ≠ Prawda o całej rzeczywistości
Quax Video może czytać dane Protocolu.
Nie dostaje przez to metafizycznego oracle.
Proceduralność nie musi być przypadkowością
Dynamiczny obraz nie musi oznaczać losowego generatora efektów.
Transformacja może być:
- deterministyczna dla danego kontekstu;
- częściowo deterministyczna;
- zależna od wskazanych danych;
- jawnie generatywna;
- interaktywna.
Istotne jest, żeby autor mógł określić reguły.
Wtedy Quax Video może być nie tyle „filmem, który zawsze robi coś innego”, ile:
artefaktem, którego finalna projekcja jest funkcją źródła i kontekstu.
Autorstwo robi się ciekawsze
Jeżeli część wyświetlonego obrazu powstaje dopiero podczas projekcji, autor nie komponuje tylko gotowych kadrów.
Komponuje również przestrzeń możliwych kadrów i reguły ich powstawania.
To przypomina różnicę między:
- napisaniem jednego obrazu;
- napisaniem programu, który może tworzyć rodzinę obrazów.
Ale Quax Video nadal może zachować bardzo silną intencję artystyczną.
Proceduralność nie oznacza braku autora.
Bezpieczeństwo nie jest dodatkiem
Jeżeli plik video zaczyna zawierać programy transformacji albo odwołania do zewnętrznych źródeł stanu, pojawia się problem bezpieczeństwa.
Dlatego do opracowania pozostają między innymi:
- sandbox dla transformacji;
- zakres dozwolonego kodu;
- dostęp do sieci;
- prywatność;
- deterministyczność;
- możliwość reprodukcji konkretnej projekcji;
- podpisywanie transform programs;
- rozróżnienie treści autora od danych zewnętrznych.
„Film uruchamia kod” brzmi artystycznie dopóki nie okazuje się, że kod chce katalogu domowego.
WebGPU czy natywnie?
Otwarte pozostaje również wykonanie techniczne:
- format kontenera;
- bazowy kodek;
- authoring tools;
- WebGPU;
- player natywny;
- sposób pakowania masek, depth i metadanych;
- relacja hash pliku ↔ hash projekcji.
Nie zamrażamy dziś rozwiązania tylko dlatego, że koncept jest atrakcyjny.
Quax Video nie jest dowodem A-002
To granica szczególnie ważna.
Film, który wygląda inaczej w dwóch odtworzeniach, może być świetnym modelem doświadczenia zmienności projekcji.
Nie jest empirycznym dowodem, że fizyczna przeszłość została przepisana.
MODELUJEMY techniczną zmienność projekcji.
A-002 pozostaje osobnym USTANAWIAMY / SPEKULUJEMY o naturze rzeczywistości.
Nie używamy jednej rzeczy do przemycania drugiej.
Po co to robić?
Bo zwykły film łatwo udaje obiekt zamknięty.
Quax Video może jawnie pokazać, że istnieje różnica między:
- artefaktem źródłowym;
- warunkami odtworzenia;
- operacją transformacji;
- tym, co finalnie zobaczył konkretny widz.
I może zrobić z tej różnicy część samego dzieła.
Plik może pozostać ten sam. Projekcja nie musi.