{
  "experiment": "FFMPEG-PACKAGING-2026-09-07",
  "recordedAt": "2026-09-07T05:02:52.577047+00:00",
  "execution": "Native local FFmpeg CLI; no browser, network, CDN, WASM, seek latency or adaptive switching measurements.",
  "environment": {
    "system": "Darwin",
    "release": "25.3.0",
    "machine": "x86_64",
    "python": "3.14.6",
    "ffmpeg": "ffmpeg version 8.0.1 Copyright (c) 2000-2025 the FFmpeg developers"
  },
  "source": {
    "origin": "Procedurally generated by FFmpeg lavfi testsrc2 + sine; no external footage or audio",
    "durationSeconds": 8,
    "width": 320,
    "height": 180,
    "fps": 30,
    "audioHz": 660,
    "sampleRate": 48000,
    "channels": 1
  },
  "mp4": {
    "topLevelBoxes": {
      "ordinary-gop90.mp4": [
        {
          "type": "ftyp",
          "offset": 0,
          "size": 32
        },
        {
          "type": "free",
          "offset": 32,
          "size": 8
        },
        {
          "type": "mdat",
          "offset": 40,
          "size": 331088
        },
        {
          "type": "moov",
          "offset": 331128,
          "size": 8278
        }
      ],
      "faststart-gop90.mp4": [
        {
          "type": "ftyp",
          "offset": 0,
          "size": 32
        },
        {
          "type": "moov",
          "offset": 32,
          "size": 8278
        },
        {
          "type": "free",
          "offset": 8310,
          "size": 8
        },
        {
          "type": "mdat",
          "offset": 8318,
          "size": 331088
        }
      ]
    },
    "streamComparison": [
      {
        "stream": "video",
        "inputPacketCount": 240,
        "outputPacketCount": 240,
        "orderedPacketPayloadHashesEqual": true,
        "packetTimingAndFlagsEqual": true
      },
      {
        "stream": "audio",
        "inputPacketCount": 376,
        "outputPacketCount": 376,
        "orderedPacketPayloadHashesEqual": true,
        "packetTimingAndFlagsEqual": true
      }
    ],
    "fileBytes": {
      "ordinary-gop90.mp4": 339406,
      "faststart-gop90.mp4": 339406
    }
  },
  "hls": [
    {
      "source": "ordinary-gop90.mp4",
      "playlist": "hls-gop90/index.m3u8",
      "targetSeconds": 2,
      "sourceVideoKeyframePtsSeconds": [
        0.0,
        3.0,
        6.0
      ],
      "extinfSeconds": [
        3.0,
        3.0,
        2.0
      ],
      "segments": [
        "segment-00.m4s",
        "segment-01.m4s",
        "segment-02.m4s"
      ],
      "declaredTargetDuration": 3,
      "allReferencedAssetsPresent": true,
      "localPlaylistDecodeExitCode": 0
    },
    {
      "source": "aligned-gop60.mp4",
      "playlist": "hls-gop60/index.m3u8",
      "targetSeconds": 2,
      "sourceVideoKeyframePtsSeconds": [
        0.0,
        2.0,
        4.0,
        6.0
      ],
      "extinfSeconds": [
        2.0,
        2.0,
        2.0,
        2.0
      ],
      "segments": [
        "segment-00.m4s",
        "segment-01.m4s",
        "segment-02.m4s",
        "segment-03.m4s"
      ],
      "declaredTargetDuration": 2,
      "allReferencedAssetsPresent": true,
      "localPlaylistDecodeExitCode": 0
    }
  ],
  "checks": {
    "ordinaryMoovAfterMdat": true,
    "faststartMoovBeforeMdat": true,
    "payloadsAndTimingPreserved": true,
    "gop90SegmentsAre3_3_2": true,
    "gop60SegmentsAre2_2_2_2": true,
    "allPlaylistAssetsPresent": true
  },
  "reproductionNote": "Exact hashes identify this run. Different FFmpeg/libx264 builds may produce different bytes; inspect structural invariants, and retain your version logs. The GOP variants are independent encodes of the same synthetic recipe."
}
