{
 "id": "composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret",
 "title": "Type a long prompt into a wide composer, push the camera in on the caret and let it track the typing",
 "family": "composer",
 "status": "rendered-draft",
 "edition": "studies-300",
 "gaps": [
  "Visual fidelity is an authored draft judgement from sampled source frames; no independent blind review or native Resolve execution."
 ],
 "intervalKey": [
  "PFsOUNfBhzI",
  "101101/6000",
  "1001/48"
 ],
 "source": {
  "filmId": "PFsOUNfBhzI",
  "film": "Character Consistency with 4o Image Generation",
  "url": "https://www.youtube.com/watch?v=PFsOUNfBhzI",
  "frames": [
   404,
   500
  ],
  "fps": {
   "numerator": 24000,
   "denominator": 1001
  },
  "startSeconds": 16.850166666666667,
  "endSeconds": 20.854166666666668,
  "publicationDate": "2025-03-25",
  "masterSha256": "cb963e3a78d4ed4f02d1db48eccad2f1a39632eec5fdfa12313bf38ac5e6c81f",
  "clockBasis": "Downloaded 1920x1080 rendition at 24000/1001 fps; excerpt frame i = master frame 404+i, re-encoded to 960x540 without omitted positions."
 },
 "sourceHash": "4f3f618c3b4e466f17e9f515dbc3e68019d79f0b47ac1a7ab25142c4f6680f8e",
 "classification": "vector-code-approximation",
 "bindingLevel": "full-render-manifest",
 "observation": "Hard cut from an interview to a huge light-grey composer filling most of a white frame: a 40px prompt begins typing at the top-left with a caret (~f2), and a row of small tool icons and a model label sit along the bottom. At ~f46 the camera starts to push in to roughly 2.2x, centring on the caret, and settles by ~f58; from then on the framing drifts right so the caret stays right of centre while the sentence continues to type to the end of the interval.",
 "mechanism": "Caret-driven type-on with a delayed camera push-in that then pans continuously to keep the moving caret in frame.",
 "phases": [
  {
   "frame": 0,
   "label": "Hard cut to wide composer"
  },
  {
   "frame": 2,
   "label": "Prompt types with caret"
  },
  {
   "frame": 46,
   "label": "Camera push-in starts"
  },
  {
   "frame": 58,
   "label": "Settles at 2.2x, caret right of centre"
  },
  {
   "frame": 95,
   "label": "Pan keeps tracking the caret"
  }
 ],
 "checks": {
  "recipeSha256": "dd9bc9bb81e0876fc17f6ab072edde0bbc82df8dedfe6b1151260ed00012ed82",
  "renderManifestSha256": "53842c24fe6edff323e7aa5cffc3c2818986b8c78d61e3305ffdd99e86e6cdeb",
  "adaptationManifestSha256": "d61d34b7a9bae52f6a5afd494c11e7e6ae1d64d5ee028e80d9af3306cb584640",
  "implementationFiles": 15,
  "movies": {
   "source": {
    "sha256": "4f3f618c3b4e466f17e9f515dbc3e68019d79f0b47ac1a7ab25142c4f6680f8e",
    "bytes": 56712,
    "width": 960,
    "height": 540,
    "fps": "24000/1001",
    "frames": 96,
    "duration": 4.004,
    "codec": "h264",
    "pixelFormat": "yuv420p",
    "audioStreams": 0
   },
   "original": {
    "sha256": "c2cc407b6bb0416163a44542069f066bdb55db4fb381b5bf8a4349e349efca8d",
    "bytes": 112348,
    "width": 1920,
    "height": 1080,
    "fps": "24000/1001",
    "frames": 96,
    "duration": 4.003989,
    "codec": "h264",
    "pixelFormat": "yuv420p",
    "audioStreams": 0
   },
   "adaptation": {
    "sha256": "fab589324f385e05cd9123b8160c330ca5da970ac0fafef0e2be8d864014cb4d",
    "bytes": 119106,
    "width": 1920,
    "height": 1080,
    "fps": "24000/1001",
    "frames": 96,
    "duration": 4.003989,
    "codec": "h264",
    "pixelFormat": "yuv420p",
    "audioStreams": 0
   }
  },
  "preparedArchive": {
   "sha256": "a234216b9eafc38088448263a55cbd1c8f3f807d770b86ec67e7434042621dfa",
   "bytes": 146766,
   "members": 20,
   "crc": "pass"
  },
  "selectedSvg": {
   "sha256": "c6d9f1953d83038c5ee4f6a9bdcca7118b4f2d436734ed04ea0eaed6549b92fa",
   "bytes": 2291,
   "drawableElements": 11,
   "rasterEmbedded": false,
   "frame": 72,
   "meaningful": true
  },
  "contentDiffers": true,
  "renderSeconds": 43.8
 },
 "assets": {
  "source.mp4": {
   "path": "items/composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret/source.mp4",
   "sha256": "4f3f618c3b4e466f17e9f515dbc3e68019d79f0b47ac1a7ab25142c4f6680f8e",
   "bytes": 56712
  },
  "remake.mp4": {
   "path": "items/composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret/remake.mp4",
   "sha256": "c2cc407b6bb0416163a44542069f066bdb55db4fb381b5bf8a4349e349efca8d",
   "bytes": 112348
  },
  "adaptation.mp4": {
   "path": "items/composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret/adaptation.mp4",
   "sha256": "fab589324f385e05cd9123b8160c330ca5da970ac0fafef0e2be8d864014cb4d",
   "bytes": 119106
  },
  "editable.svg": {
   "path": "items/composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret/editable.svg",
   "sha256": "c6d9f1953d83038c5ee4f6a9bdcca7118b4f2d436734ed04ea0eaed6549b92fa",
   "bytes": 2291
  },
  "resolve.txt": {
   "path": "items/composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret/resolve.txt",
   "sha256": "ccd23e52ec54355963c061b76a2fe1c890462a8bd700a7ef1973783143fd4fd9",
   "bytes": 4355
  },
  "package.zip": {
   "path": "items/composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret/package.zip",
   "sha256": "a234216b9eafc38088448263a55cbd1c8f3f807d770b86ec67e7434042621dfa",
   "bytes": 146766
  },
  "recipe.json": {
   "path": "items/composer-prompt-types-as-camera-pushes-in-and-tracks-the-caret/recipe.json",
   "sha256": "dd9bc9bb81e0876fc17f6ab072edde0bbc82df8dedfe6b1151260ed00012ed82",
   "bytes": 5163
  }
 },
 "builtAt": "2026-09-18T05:50:11Z"
}