Presentation Config Field Map
Last reviewed: 2026-06-30
Status values: Consumed, Parsed, Ignored, Planned/partial, Unknown.
| JSON field | C# field/class | Consumer | Status | Notes |
|---|---|---|---|---|
schemaVersion |
PresentationConfig.schemaVersion |
Parse only | Parsed | No strict schema validation found. |
presentation.id |
PresentationMetadata.id |
Capture filename helper | Consumed | Used when naming output. |
presentation.name |
PresentationMetadata.name |
Capture filename helper | Consumed | Sanitized for filenames. |
presentation.language |
PresentationMetadata.language |
None confirmed | Parsed | Unknown runtime effect. |
presentation.timebase |
PresentationMetadata.timebase |
None confirmed | Parsed | Assumed seconds by code. |
audio.background.url |
PresentationBackgroundAudio.url |
Background audio loader | Consumed | HTTP/file path supported via UnityWebRequest. |
audio.background.source |
PresentationBackgroundAudio.source |
None confirmed | Parsed | Unknown runtime effect. |
audio.background.volume |
PresentationBackgroundAudio.volume |
Background audio source/mix | Consumed | Applied as volume. |
render.target.format |
PresentationRenderTarget.format |
Capture path extension indirectly | Planned/partial | Actual extension mostly comes from output path/default MP4. |
render.target.frameRate |
PresentationRenderTarget.frameRate |
Unknown | Planned/partial | Serialized captureFrameRate drives capture. |
render.target.resolution |
PresentationRenderTarget.resolution |
Unknown | Parsed | Serialized width/height drive capture. |
render.target.aspectRatio |
PresentationRenderTarget.aspectRatio |
Unknown | Parsed | No runtime aspect enforcement found. |
render.watermark |
PresentationRenderSettings.watermark |
Unknown | Ignored | No watermark implementation confirmed. |
studio.bot.* |
PresentationBot |
Unknown | Parsed | Dynamic bot loading not confirmed. |
studio.set.* |
PresentationSet |
Unknown | Parsed | Dynamic set loading not confirmed. |
studio.brandKit.* |
PresentationBrandKit |
Unknown | Parsed | Brand application not confirmed. |
scenes[].index |
PresentationScene.index |
Timeline ordering, manual scene methods | Consumed | Used for lookup/order. |
scenes[].sceneId |
PresentationScene.sceneId |
Bot motion plan lookup | Consumed | Also in screen-content schedules. |
scenes[].screen.images[].url |
PresentationImage.url |
Scene image preload | Consumed | First image only. |
scenes[].screen.images[].alt/source/assetId/mimeType/userContext |
PresentationImage fields |
Unknown | Parsed | No runtime behavior confirmed. |
scenes[].screen.reveal.* |
PresentationReveal |
Unknown in main controller | Parsed | Legacy/generated screen paths may use raw JSON markup separately. |
scenes[].screen.caption.* |
PresentationCaption |
Unknown | Parsed | No caption rendering confirmed. |
scenes[].screen.contentMode |
PresentationScreen.contentMode |
Unknown | Parsed | No branching confirmed. |
scenes[].timing.start |
PresentationTiming.start |
Duration/order fallback | Consumed | Used when resolving timeline. |
scenes[].timing.end |
PresentationTiming.end |
Duration fallback | Consumed | Used when audio duration unavailable. |
scenes[].timing.pauseSeconds |
PresentationTiming.pauseSeconds |
Wait after scene | Consumed | Falls back to zero/default. |
scenes[].directing.camera.shot |
PresentationCamera.shot |
Camera transition | Consumed | Taxonomy mismatch with CameraShots.json possible. |
scenes[].voiceover.text |
PresentationVoiceover.text |
Bot/fallback generation context | Planned/partial | Parsed; direct subtitle use not confirmed. |
scenes[].voiceover.audio.url |
PresentationSceneAudio.url |
Scene audio preload | Consumed | Main voiceover audio source. |
scenes[].voiceover.audio.durationSeconds |
PresentationSceneAudio.durationSeconds |
Duration estimate | Consumed | Used if clip length unavailable. |
scenes[].voiceover.words[] |
PresentationWordTiming[] |
Bot animator / virtual screen timing source | Consumed | Main controller binds to bot; screen controller has separate model. |
scenes[].voiceover.timingSource |
PresentationVoiceover.timingSource |
Unknown | Parsed | No validation found. |
scenes[].motion.* |
PresentationSceneMotion |
AnuvaBotAnimator |
Consumed | Fallback when no motion plan beats apply. |
scenes[].explainability.whyThisVisual |
PresentationExplainability.whyThisVisual |
Unknown | Parsed | No runtime effect confirmed. |
scenes[].screenContent |
Separate AnuvaScene.screenContent in virtual-screen script |
Virtual screens | Planned/partial | Not declared in main PresentationConfig. |
screenTemplateSystem |
Not in PresentationConfig.cs |
HTML builder raw JSON only | Planned/partial | Main controller ignores. |