{ "stage": "LAB047_SOFTWARE_PREPARATION", "source": "data\\raw\\lab011_scene.jpg", "jpeg": { "path": "data\\processed\\lab047\\tx_image.jpg", "file_bytes": 8724, "width": 320, "height": 240, "mode": "RGB", "format": "JPEG", "sha256": "e913dab9ac32795250880a4be67fbbbf89a4f96536842476ab591d1acaafc02a", "quality": 35, "subsampling": "4:2:0", "optimize": false, "progressive": false }, "transport": { "jpeg_file_bytes": 8724, "fragment_count": 36, "rf_frame_count": 36, "samples_per_frame": 2306400, "tx_sample_count": 83030400, "tx_file_bytes": 166060800, "estimated_airtime_seconds": 10.3788, "useful_goodput_bits_per_second": 6724.476818129264 }, "software_roundtrip": { "crc_pass": 36, "crc_fail": 0, "valid_fragments": 36, "missing_fragments": [], "object_complete": true, "tx_sha256": "e913dab9ac32795250880a4be67fbbbf89a4f96536842476ab591d1acaafc02a", "recovered_sha256": "e913dab9ac32795250880a4be67fbbbf89a4f96536842476ab591d1acaafc02a", "sha_match": true, "byte_errors": 0, "bit_errors": 0 }, "software_image_decode": "PASS", "recovered_jpeg": { "path": "data\\processed\\lab047\\recovered_image.jpg", "file_bytes": 8724, "width": 320, "height": 240, "mode": "RGB", "format": "JPEG", "sha256": "e913dab9ac32795250880a4be67fbbbf89a4f96536842476ab591d1acaafc02a" }, "planned_rx": { "duration_seconds": 15.0, "sample_count": 120000000, "file_bytes": 240000000, "lead_seconds": 0.75 }, "hardware": { "master_tx_serial": "000000000000000097c063dc323b97d3", "slave_rx_serial": "000000000000000097c063dc2e5327d3", "frequency_hz": 1400000000, "sample_rate_hz": 8000000, "symbol_rate": 20000, "samples_per_symbol": 400, "digital_carrier_hz": 50000, "tx_vga_db": 10, "tx_rf_amp": false, "tx_bias_tee": false, "rx_lna_db": 24, "rx_vga_db": 24, "rx_rf_amp": false, "rx_bias_tee": false, "master_clkout_to_slave_clkin": true, "slave_clkout": false, "expected_reg29": 38 }, "candidate_rule": { "method": "pre-TX local-peak Q99.9 + 4 * local-peak MAD", "quantile": 0.999, "mad_multiplier": 4.0, "fixed_before_full_decode": true }, "receiver_oracles": { "expected_frame_count": false, "tx_coded_bits": false, "tx_fragment_indexes": false, "tx_frame_offsets": false, "tx_image": false, "tx_packets": false }, "rf_tx": 0 }