master
John Lauer Preserve BQ independent routing, narration and native copper-retention evidence a4b7711 1mo ago
{
  "voice": "en-US-AndrewNeural",
  "synthesis": "Adom TTS / Microsoft Edge TTS",
  "cues": [
    {
      "start": 0.5,
      "end": 19.5,
      "text": "This is the Fusion trace routing demo, with Codex Astra in Adom Hydrogen. We begin with Adonis's B Q, twenty-five seven ninety-two charger board: one hundred nine components, fifty nets, and four copper layers. You're seeing the original hand-routed design, including its bottom copper and power pours.",
      "file": "00.mp3",
      "sourceDuration": 19.968,
      "tempo": 1.059310344827586,
      "actualEnd": 19.350000000000005
    },
    {
      "start": 20,
      "end": 26,
      "text": "Now we remove the traces and vias from a copy, then clear the old pours.",
      "file": "01.mp3",
      "sourceDuration": 4.824,
      "tempo": 1,
      "actualEnd": 24.823999999999998
    },
    {
      "start": 26.2,
      "end": 39.4,
      "text": "Astra starts from the original pads and netlist. These replacement paths were calculated before recording, without using the hand-routed traces or an external router. Now watch Fusion create the new copper.",
      "file": "02.mp3",
      "sourceDuration": 12.744,
      "tempo": 1,
      "actualEnd": 38.944
    },
    {
      "start": 40,
      "end": 63,
      "text": "Each colored line is a real copper segment in Fusion. Different colors represent different layers, allowing routes to cross without touching. Vias connect those layers. The planner checks candidate paths against pads, board edges, keepouts, and copper already placed, then searches for detours where direct connections would collide.",
      "file": "03.mp3",
      "sourceDuration": 20.64,
      "tempo": 1,
      "actualEnd": 60.64
    },
    {
      "start": 64,
      "end": 89.5,
      "text": "The Adom panel follows each connection: its net name, calculated length, selected layers, and progress. Astra sends explicit line and via commands through the Fusion bridge. Between batches, it reads the native geometry back and checks that Fusion created the intended paths. Routing is shown at three times speed, with waiting time removed.",
      "file": "04.mp3",
      "sourceDuration": 21.84,
      "tempo": 1,
      "actualEnd": 85.84
    },
    {
      "start": 93,
      "end": 114.8,
      "text": "For a fair design-rule comparison, both test copies disable one source rule that incorrectly demands clearance between connected objects on the same net. All different-net clearance rules remain in place. The original design is preserved. This edit combines verified takes, including a replacement for one damaged recording.",
      "file": "05.mp3",
      "sourceDuration": 19.824,
      "tempo": 1,
      "actualEnd": 112.824
    },
    {
      "start": 116,
      "end": 132.8,
      "text": "Fusion recalculates connectivity and runs its native design-rule check on the actual copper. Power handling, thermal performance, and sensitive electrical constraints still need engineering review before production.",
      "file": "06.mp3",
      "sourceDuration": 12.864,
      "tempo": 1,
      "actualEnd": 128.864
    },
    {
      "start": 134,
      "end": 143.1,
      "text": "Fifty nets connected. No airwires, no warnings, and no new design-rule errors. One pre-existing placement error remains.",
      "file": "07.mp3",
      "sourceDuration": 8.76,
      "tempo": 1,
      "actualEnd": 142.76
    }
  ],
  "measuredLoudness": {
    "input_i": "-16.06",
    "input_tp": "-4.31",
    "input_lra": "3.70",
    "input_thresh": "-26.32",
    "output_i": "-15.85",
    "output_tp": "-2.86",
    "output_lra": "3.70",
    "output_thresh": "-26.12",
    "normalization_type": "dynamic",
    "target_offset": "-0.15"
  },
  "fullDecode": "passed",
  "video": "Copied without re-encoding",
  "probe": {
    "streams": [
      {
        "index": 0,
        "codec_name": "h264",
        "codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
        "profile": "High",
        "codec_type": "video",
        "codec_tag_string": "avc1",
        "codec_tag": "0x31637661",
        "width": 1920,
        "height": 1080,
        "coded_width": 1920,
        "coded_height": 1080,
        "closed_captions": 0,
        "film_grain": 0,
        "has_b_frames": 2,
        "sample_aspect_ratio": "1:1",
        "display_aspect_ratio": "16:9",
        "pix_fmt": "yuv420p",
        "level": 40,
        "chroma_location": "left",
        "field_order": "progressive",
        "refs": 1,
        "is_avc": "true",
        "nal_length_size": "4",
        "id": "0x1",
        "r_frame_rate": "30/1",
        "avg_frame_rate": "30/1",
        "time_base": "1/15360",
        "start_pts": 0,
        "start_time": "0.000000",
        "duration_ts": 2201600,
        "duration": "143.333333",
        "bit_rate": "581810",
        "bits_per_raw_sample": "8",
        "nb_frames": "4300",
        "extradata_size": 48,
        "disposition": {
          "default": 1,
          "dub": 0,
          "original": 0,
          "comment": 0,
          "lyrics": 0,
          "karaoke": 0,
          "forced": 0,
          "hearing_impaired": 0,
          "visual_impaired": 0,
          "clean_effects": 0,
          "attached_pic": 0,
          "timed_thumbnails": 0,
          "non_diegetic": 0,
          "captions": 0,
          "descriptions": 0,
          "metadata": 0,
          "dependent": 0,
          "still_image": 0
        },
        "tags": {
          "language": "und",
          "handler_name": "VideoHandler",
          "vendor_id": "[0][0][0][0]",
          "encoder": "Lavc60.31.102 libx264"
        }
      },
      {
        "index": 1,
        "codec_name": "aac",
        "codec_long_name": "AAC (Advanced Audio Coding)",
        "profile": "LC",
        "codec_type": "audio",
        "codec_tag_string": "mp4a",
        "codec_tag": "0x6134706d",
        "sample_fmt": "fltp",
        "sample_rate": "48000",
        "channels": 2,
        "channel_layout": "stereo",
        "bits_per_sample": 0,
        "initial_padding": 0,
        "id": "0x2",
        "r_frame_rate": "0/0",
        "avg_frame_rate": "0/0",
        "time_base": "1/48000",
        "start_pts": 0,
        "start_time": "0.000000",
        "duration_ts": 6879984,
        "duration": "143.333000",
        "bit_rate": "159900",
        "nb_frames": "6720",
        "extradata_size": 5,
        "disposition": {
          "default": 1,
          "dub": 0,
          "original": 0,
          "comment": 0,
          "lyrics": 0,
          "karaoke": 0,
          "forced": 0,
          "hearing_impaired": 0,
          "visual_impaired": 0,
          "clean_effects": 0,
          "attached_pic": 0,
          "timed_thumbnails": 0,
          "non_diegetic": 0,
          "captions": 0,
          "descriptions": 0,
          "metadata": 0,
          "dependent": 0,
          "still_image": 0
        },
        "tags": {
          "language": "und",
          "handler_name": "SoundHandler",
          "vendor_id": "[0][0][0][0]"
        }
      }
    ],
    "format": {
      "filename": "/home/adom/project/fusion-trace-routing/demo/routing/bq25792/video/fusion-bq25792-astra-3x-narrated.mp4",
      "nb_streams": 2,
      "nb_programs": 0,
      "format_name": "mov,mp4,m4a,3gp,3g2,mj2",
      "format_long_name": "QuickTime / MOV",
      "start_time": "0.000000",
      "duration": "143.333333",
      "size": "13448920",
      "bit_rate": "750637",
      "probe_score": 100,
      "tags": {
        "major_brand": "isom",
        "minor_version": "512",
        "compatible_brands": "isomiso2avc1mp41",
        "encoder": "Lavf60.16.100",
        "comment": "AI-generated narration: Andrew Neural via Adom TTS. Independently calculated routing; edited playback."
      }
    }
  },
  "sha256": "a96634a44b56ac5a1f07b13bf428a3075e6b4cc1795845ff30e8ace157d07904"
}