{
  "schema_version": 1,
  "id": "qSHMlduU6Lw",
  "slug": "gpt54-thinking-interruptions",
  "title": "Interrupting and Adding Details in GPT-5.4 Thinking",
  "source_url": "https://www.youtube.com/watch?v=qSHMlduU6Lw",
  "publication_date": "2026-03-05",
  "source_sha256": "bbd79235e848ce6d268ce076c8ede3dd5034088f01bd0cf8a6e0701271aee479",
  "source_frame_count": 771,
  "source_duration_seconds": 25.725,
  "review_status": "Frame-inspected reference; moving-source review pending",
  "inspection": "Two source-first consecutive still-preview traversals of all 771 source frames at one-third scale, followed by selected native-resolution regions. The independent record was sealed before comparison. Informed rechecks corrected the caret and late-logo notes. This is not a completed moving-video or listening review, and not an every-native-pixel claim.",
  "studies": [
    {
      "id": "qsh-title-stagger",
      "title": "A title assembled in uneven steps",
      "category": "Text reveals",
      "native_frame_range": [
        0,
        33
      ],
      "crop_xyxy": [
        0,
        0,
        1920,
        1080
      ],
      "poster_source_frame": 25,
      "phase_source_frames": [
        0,
        1,
        13,
        25
      ],
      "phase_labels": [
        "White lead-in",
        "First word",
        "Second line begins",
        "Complete title"
      ],
      "observation": "A white first frame is followed by whole-word and partial-word states. Interrupting appears at 0.033s; the second line begins at 0.434s; the complete title is present at 0.834s. Each line keeps its left origin instead of recentering as text is added.",
      "choreography": "Lead-in → grouped words → smaller steps through the model name and Thinking → hold. The visible increment sizes and dwell times vary. No insertion caret was resolved in the title.",
      "adaptation": "For original presentation copy, set line breaks first, then reveal deliberate groups. Treat any new duration, font, or spacing as an adaptation choice, not a recovered OpenAI preset.",
      "limit": "This excerpt ends at 1.101s after the title has settled; it does not include the remaining title hold or the cut at 2.636s. Consecutive stills establish these sampled states, not a measured easing function or perceived playback smoothness. No sound claim is made.",
      "related_sections": [
        "videos/openings/",
        "videos/techniques/"
      ],
      "inspection": "Two source-first consecutive still-preview traversals of all 771 source frames at one-third scale, followed by selected native-resolution regions. The independent record was sealed before comparison. Informed rechecks corrected the caret and late-logo notes. This is not a completed moving-video or listening review, and not an every-native-pixel claim.",
      "slug": "gpt54-thinking-interruptions",
      "start": 0.0,
      "end": 1.101,
      "media": {
        "source_sha256": "bbd79235e848ce6d268ce076c8ede3dd5034088f01bd0cf8a6e0701271aee479",
        "source_first_frame": 0,
        "source_last_frame_exclusive": 33,
        "source_start": 0.0,
        "source_end": 1.101,
        "frame_count": 33,
        "fps": 29.97002997002997,
        "frame_times": [
          0.0,
          0.033,
          0.067,
          0.1,
          0.133,
          0.167,
          0.2,
          0.234,
          0.267,
          0.3,
          0.334,
          0.367,
          0.4,
          0.434,
          0.467,
          0.501,
          0.534,
          0.567,
          0.601,
          0.634,
          0.667,
          0.701,
          0.734,
          0.767,
          0.801,
          0.834,
          0.868,
          0.901,
          0.934,
          0.968,
          1.001,
          1.034,
          1.068
        ],
        "duration": 1.101,
        "crop_xyxy": [
          0,
          0,
          1920,
          1080
        ],
        "width": 1920,
        "height": 1080,
        "audio_tracks": 0,
        "sha256": "2621399d3531675bf35d6c14eb200faffa7c01862eaa2bf351f8459dee3fd31d",
        "precision": "All source frames retained; millisecond source PTS preserved exactly after zero-origin normalization. Native crop, no spatial scaling. Nominal fps is descriptive, not the stepping clock."
      },
      "shots": [],
      "sample_step": 0,
      "poster": 0.834,
      "evidence_label": "Frame-inspected reference",
      "edition": "Frame-inspected addition",
      "context_reference": {
        "url": "videos/motion/gpt54-thinking-interruptions/#source",
        "label": "Source, timing and inspection limits"
      },
      "phases": [
        {
          "frame": 0,
          "source_time": 0.0,
          "label": "White lead-in"
        },
        {
          "frame": 1,
          "source_time": 0.033,
          "label": "First word"
        },
        {
          "frame": 13,
          "source_time": 0.434,
          "label": "Second line begins"
        },
        {
          "frame": 25,
          "source_time": 0.834,
          "label": "Complete title"
        }
      ]
    },
    {
      "id": "qsh-caret-reset",
      "title": "The one-frame caret return",
      "category": "Interface feedback",
      "native_frame_range": [
        263,
        285
      ],
      "crop_xyxy": [
        540,
        740,
        1440,
        1020
      ],
      "poster_source_frame": 269,
      "phase_source_frames": [
        268,
        269,
        270,
        279
      ],
      "phase_labels": [
        "Caret absent",
        "34 ms return",
        "Placeholder and plus change",
        "Caret returns again"
      ],
      "native_window_source_frames": [
        267,
        268,
        269,
        270,
        271
      ],
      "observation": "The insertion bar appears for source frame 269 alone, from 8.975 to 9.009s. At frame 270, Follow up replaces Ask anything, the plus becomes lighter, and the caret is absent again. It returns at frame 279, 9.309s.",
      "choreography": "Quiet field → one-frame caret → coordinated placeholder/plus change → nine-frame caret absence → visible caret. The stop, microphone, and Thinking controls remain in the crop. The primary notes initially missed the 34 ms return; both informed rechecks recovered it.",
      "adaptation": "When editing a real interface capture, check the frames immediately around a state change, including the preceding blink cycle. Preserve actual feedback rather than adding a click ring or inventing a keystroke.",
      "limit": "Native bottom-window crop [540,740,1440,1020) from the 1920×1080 source. The extra footer/background context keeps browser playback controls away from the composer; the upper conversation is outside this excerpt. The visible bar does not establish focus loss, mouse versus keyboard input, implementation latency, or sound.",
      "related_sections": [
        "videos/motion/",
        "videos/editing/",
        "videos/lab/",
        "videos/techniques/"
      ],
      "inspection": "Two source-first consecutive still-preview traversals of all 771 source frames at one-third scale, followed by selected native-resolution regions. The independent record was sealed before comparison. Informed rechecks corrected the caret and late-logo notes. This is not a completed moving-video or listening review, and not an every-native-pixel claim.",
      "slug": "gpt54-thinking-interruptions",
      "start": 8.775,
      "end": 9.509,
      "media": {
        "source_sha256": "bbd79235e848ce6d268ce076c8ede3dd5034088f01bd0cf8a6e0701271aee479",
        "source_first_frame": 263,
        "source_last_frame_exclusive": 285,
        "source_start": 8.775,
        "source_end": 9.509,
        "frame_count": 22,
        "fps": 29.97002997002997,
        "frame_times": [
          0.0,
          0.034,
          0.067,
          0.1,
          0.134,
          0.167,
          0.2,
          0.234,
          0.267,
          0.301,
          0.334,
          0.367,
          0.401,
          0.434,
          0.467,
          0.501,
          0.534,
          0.567,
          0.601,
          0.634,
          0.668,
          0.701
        ],
        "duration": 0.734,
        "crop_xyxy": [
          540,
          740,
          1440,
          1020
        ],
        "width": 900,
        "height": 280,
        "audio_tracks": 0,
        "sha256": "bb10250505e77e3aedd963c361627fe1d5e3e19745dd3308dfa44aed2e0bb868",
        "precision": "All source frames retained; millisecond source PTS preserved exactly after zero-origin normalization. Native crop, no spatial scaling. Nominal fps is descriptive, not the stepping clock."
      },
      "shots": [],
      "sample_step": 0,
      "poster": 8.975,
      "evidence_label": "Frame-inspected reference",
      "edition": "Frame-inspected addition",
      "context_reference": {
        "url": "videos/motion/gpt54-thinking-interruptions/#source",
        "label": "Source, timing and inspection limits"
      },
      "phases": [
        {
          "frame": 5,
          "source_time": 8.942,
          "label": "Caret absent"
        },
        {
          "frame": 6,
          "source_time": 8.975,
          "label": "34 ms return"
        },
        {
          "frame": 7,
          "source_time": 9.009,
          "label": "Placeholder and plus change"
        },
        {
          "frame": 16,
          "source_time": 9.309,
          "label": "Caret returns again"
        }
      ],
      "native_window": {
        "frames": [
          4,
          5,
          6,
          7,
          8
        ],
        "source_start": 8.909,
        "source_last_frame": 9.042,
        "observation": "The caret is absent, returns for f269 alone, then disappears at the placeholder replacement. These source crops preserve native pixels; the page may display them at a different size."
      }
    },
    {
      "id": "qsh-wordmark-knot",
      "title": "Drift, remove, morph—then allow the settle",
      "category": "Logo choreography",
      "native_frame_range": [
        678,
        771
      ],
      "crop_xyxy": [
        680,
        410,
        1240,
        680
      ],
      "poster_source_frame": 745,
      "phase_source_frames": [
        682,
        698,
        710,
        720,
        745,
        770
      ],
      "phase_labels": [
        "Wordmark cut",
        "Anticipatory drift",
        "First removed letter",
        "Six-loop mark",
        "Late contour refinement",
        "Source ending"
      ],
      "observation": "The wordmark replaces the interface at 22.756s. A small rightward drift precedes right-to-left character removal, beginning at 23.690s. At 24.024s, the final C is replaced directly by a six-loop mark, which grows and changes its internal geometry into the knot.",
      "choreography": "Cut → initial hold → rightward anticipation → stepped letter removal with continuing translation → loop growth and deformation → small late contour refinements. The frame 744/745 pair still changes; ending the action at the apparent settle near 24.825s would be premature.",
      "adaptation": "For an original mark, separate anticipation, text removal, shape change, and settling. Keep enough ending context to inspect the last small adjustments. Do not reuse OpenAI's mark as a production asset or label a proposed easing curve as measured.",
      "limit": "Native center crop [680,410,1240,680), including four preceding interface frames and the final source frame. The exact subpixel drift onset and final perceptual settle remain unresolved. Small decoded-pixel differences are not automatically intentional animation; no exact motionless-tail duration is claimed.",
      "related_sections": [
        "videos/logos/",
        "videos/lab/",
        "videos/editing/",
        "videos/techniques/"
      ],
      "inspection": "Two source-first consecutive still-preview traversals of all 771 source frames at one-third scale, followed by selected native-resolution regions. The independent record was sealed before comparison. Informed rechecks corrected the caret and late-logo notes. This is not a completed moving-video or listening review, and not an every-native-pixel claim.",
      "slug": "gpt54-thinking-interruptions",
      "start": 22.623,
      "end": 25.725,
      "media": {
        "source_sha256": "bbd79235e848ce6d268ce076c8ede3dd5034088f01bd0cf8a6e0701271aee479",
        "source_first_frame": 678,
        "source_last_frame_exclusive": 771,
        "source_start": 22.623,
        "source_end": 25.725,
        "frame_count": 93,
        "fps": 29.97002997002997,
        "frame_times": [
          0.0,
          0.033,
          0.066,
          0.1,
          0.133,
          0.166,
          0.2,
          0.233,
          0.267,
          0.3,
          0.333,
          0.367,
          0.4,
          0.433,
          0.467,
          0.5,
          0.533,
          0.567,
          0.6,
          0.634,
          0.667,
          0.7,
          0.734,
          0.767,
          0.8,
          0.834,
          0.867,
          0.901,
          0.934,
          0.967,
          1.001,
          1.034,
          1.067,
          1.101,
          1.134,
          1.167,
          1.201,
          1.234,
          1.268,
          1.301,
          1.334,
          1.368,
          1.401,
          1.434,
          1.468,
          1.501,
          1.534,
          1.568,
          1.601,
          1.635,
          1.668,
          1.701,
          1.735,
          1.768,
          1.801,
          1.835,
          1.868,
          1.902,
          1.935,
          1.968,
          2.002,
          2.035,
          2.068,
          2.102,
          2.135,
          2.168,
          2.202,
          2.235,
          2.269,
          2.302,
          2.335,
          2.369,
          2.402,
          2.435,
          2.469,
          2.502,
          2.535,
          2.569,
          2.602,
          2.636,
          2.669,
          2.702,
          2.736,
          2.769,
          2.802,
          2.836,
          2.869,
          2.903,
          2.936,
          2.969,
          3.003,
          3.036,
          3.069
        ],
        "duration": 3.102,
        "crop_xyxy": [
          680,
          410,
          1240,
          680
        ],
        "width": 560,
        "height": 270,
        "audio_tracks": 0,
        "sha256": "6d2bd38f16fba9861b4ee180adadd560a1c933abed0fd9282bc15fcbae74349c",
        "precision": "All source frames retained; millisecond source PTS preserved exactly after zero-origin normalization. Native crop, no spatial scaling. Nominal fps is descriptive, not the stepping clock."
      },
      "shots": [],
      "sample_step": 0,
      "poster": 24.858,
      "evidence_label": "Frame-inspected reference",
      "edition": "Frame-inspected addition",
      "context_reference": {
        "url": "videos/motion/gpt54-thinking-interruptions/#source",
        "label": "Source, timing and inspection limits"
      },
      "phases": [
        {
          "frame": 4,
          "source_time": 22.756,
          "label": "Wordmark cut"
        },
        {
          "frame": 20,
          "source_time": 23.29,
          "label": "Anticipatory drift"
        },
        {
          "frame": 32,
          "source_time": 23.69,
          "label": "First removed letter"
        },
        {
          "frame": 42,
          "source_time": 24.024,
          "label": "Six-loop mark"
        },
        {
          "frame": 67,
          "source_time": 24.858,
          "label": "Late contour refinement"
        },
        {
          "frame": 92,
          "source_time": 25.692,
          "label": "Source ending"
        }
      ]
    }
  ],
  "public_excerpt_seconds": 4.937,
  "moving_review_credit_seconds": 0,
  "clean_pass_credit": 0
}
