Recording · Day 4

Council meeting - Public hearing

Technical details
Recording ID 937
Meeting ID 11
File path d560e4b8-f106-4dde-9486-2888e8375ceb.mkv
Recording information
Status
Completed
Duration
9h18m
Start time
2026-03-30 13:30
End time
2026-03-31 04:47
Extract audio
Extract WAV audio for transcription and diarization
Storage & files
File type Storage Path / Key Status Action
Video S3 d560e4b8-f106-4dde-9486-2888e8375ceb.mkv Exists
Transcript S3 dd90492d-9e5b-4499-be13-c879fc9ff8e0.json Exists
WAV S3 181309f2-7122-450a-ba85-5eff835f32b3.wav Exists
Diarization Pyannote S3 faf93bbe-2349-4a3f-929a-0c3ec46f8b66.json Exists
Diarization Gemini S3 4b281388-5eb6-402a-8382-d81084904615.json Exists
Diarization Consolidated S3 87a50610-94a1-4e5d-a722-d26863fc1668.json Exists
Transcription progress
Failed Job: aa0303af…
Loading transcription status…
Full recording transcript and speaker diarization data available for download.
Gemini-refined · speaker labels improved with AI using meeting agenda context
Processing logs
200 entries 4 errors 53 warnings
19:19:33 [INFO] Consolidation completed: 1000 segments (reduced from 4269)
19:19:33 [INFO] {"step": "consolidation", "status": "completed", "updated_at": "2026-09-07T13:19:33.214570-06:00", "consolidated_path": "f2c877e9-2704-464a-a65c-96a437ea2cf4.json", "stats": {"original_segment_count": 4269, "consolidated_segment_count": 1000, "reduction_percent": 76.58}}
19:19:32 [INFO] {"step": "consolidation", "status": "processing", "updated_at": "2026-09-07T13:19:32.134728-06:00"}
19:19:30 [ERROR] Step full failed: Speaker diarization failed for file: 181309f2-7122-450a-ba85-5eff835f32b3.wav Details: Speaker diarization failed for file: 181309f2-7122-450a-ba85-5eff835f32b3.wav Details: Diarization job failed: Unknown error
19:19:30 [ERROR] Diarization failed: Speaker diarization failed for file: 181309f2-7122-450a-ba85-5eff835f32b3.wav Details: Diarization job failed: Unknown error
19:19:30 [INFO] {"step": "diarization", "status": "failed", "updated_at": "2026-09-07T13:19:30.609447-06:00", "error": "Speaker diarization failed for file: 181309f2-7122-450a-ba85-5eff835f32b3.wav\nDetails: Diarization job failed: Unknown error"}
19:19:30 [ERROR] ERROR: Diarization job failed: Unknown error
19:19:30 [INFO] Poll #28: Status: failed
19:19:20 [INFO] Poll #27: Status: running
19:19:09 [INFO] Poll #26: Status: running
19:18:59 [INFO] Poll #25: Status: running
19:18:49 [INFO] Poll #24: Status: running
19:18:39 [INFO] Poll #23: Status: running
19:18:28 [INFO] Poll #22: Status: running
19:18:18 [INFO] Poll #21: Status: running
19:18:08 [INFO] Poll #20: Status: running
19:17:57 [INFO] Poll #19: Status: running
19:17:47 [INFO] Poll #18: Status: running
19:17:37 [INFO] Poll #17: Status: running
19:17:27 [INFO] Poll #16: Status: running
19:17:16 [INFO] Poll #15: Status: running
19:17:06 [INFO] Poll #14: Status: running
19:16:56 [INFO] Poll #13: Status: running
19:16:45 [INFO] Poll #12: Status: running
19:16:35 [INFO] Poll #11: Status: running
19:16:25 [INFO] Poll #10: Status: running
19:16:15 [INFO] Poll #9: Status: running
19:16:04 [INFO] Poll #8: Status: running
19:15:54 [INFO] Poll #7: Status: running
19:15:44 [INFO] Poll #6: Status: running
19:15:33 [INFO] Poll #5: Status: running
19:15:23 [INFO] Poll #4: Status: running
19:15:13 [INFO] Poll #3: Status: running
19:15:03 [INFO] Poll #2: Status: running
19:14:52 [INFO] Poll #1: Status: running
19:14:42 [INFO] Diarization job started (Job ID: aa0303af-9057-4687-ac85-c54d3a9cf147). Processing audio...
19:14:42 [INFO] Resuming job (avoiding duplicate credits)
19:14:42 [INFO] Found existing pyannote job (ID: aa0303af-9057-4687-ac85-c54d3a9cf147). Checking status...
19:14:42 [INFO] Found existing pyannote job (ID: aa0303af-9057-4687-ac85-c54d3a9cf147). Checking status...
19:14:42 [INFO] Starting speaker diarization via pyannote.ai API
19:14:42 [INFO] Starting speaker diarization via pyannote.ai API
19:14:41 [INFO] Using S3 pre-signed URL for diarization
19:14:41 [INFO] {"step": "diarization", "status": "processing", "updated_at": "2026-09-07T13:14:41.509707-06:00"}
19:14:41 [INFO] Starting transcription + diarization
19:14:41 [INFO] Audio extracted and attached: /tmp/tmp_h5ebzpk/d560e4b8-f106-4dde-9486-2888e8375ceb.wav
19:14:41 [INFO] {"step": "extraction", "status": "completed", "updated_at": "2026-09-07T13:14:41.498798-06:00", "wav_path": "/tmp/tmp_h5ebzpk/d560e4b8-f106-4dde-9486-2888e8375ceb.wav"}
19:14:32 [INFO] Audio extracted to /tmp/tmp_h5ebzpk/d560e4b8-f106-4dde-9486-2888e8375ceb.wav
19:12:40 [INFO] Extracting audio to WAV format
19:12:40 [INFO] Extracting audio to WAV format
19:12:40 [INFO] {"step": "extraction", "status": "processing", "updated_at": "2026-09-07T13:12:40.522296-06:00"}
19:12:40 [INFO] Starting audio extraction
19:11:47 [INFO] Downloading video from S3 for processing
19:11:44 [ERROR] Step full failed: Speaker diarization failed for file: 1ee05de8-9c3d-4f35-a6ba-f570e8e96d14.wav Details: Speaker diarization failed for file: 1ee05de8-9c3d-4f35-a6ba-f570e8e96d14.wav Details: Diarization job timed out after 600 seconds
19:11:44 [ERROR] Diarization failed: Speaker diarization failed for file: 1ee05de8-9c3d-4f35-a6ba-f570e8e96d14.wav Details: Diarization job timed out after 600 seconds
19:11:44 [INFO] {"step": "diarization", "status": "failed", "updated_at": "2026-09-07T13:11:44.596275-06:00", "error": "Speaker diarization failed for file: 1ee05de8-9c3d-4f35-a6ba-f570e8e96d14.wav\nDetails: Diarization job timed out after 600 seconds"}
19:11:44 [ERROR] ERROR: Diarization job timed out after 600 seconds
19:11:44 [INFO] Poll #60: Status: running
19:11:34 [INFO] Poll #59: Status: running
19:11:23 [INFO] Poll #58: Status: running
19:11:13 [INFO] Poll #57: Status: running
19:11:03 [INFO] Poll #56: Status: running
19:10:52 [INFO] Poll #55: Status: running
19:10:42 [INFO] Poll #54: Status: running
19:10:32 [INFO] Poll #53: Status: running
19:10:22 [INFO] Poll #52: Status: running
19:10:11 [INFO] Poll #51: Status: running
19:10:01 [INFO] Poll #50: Status: running
19:09:51 [INFO] Poll #49: Status: running
19:09:40 [INFO] Poll #48: Status: running
19:09:30 [INFO] Poll #47: Status: running
19:09:20 [INFO] Poll #46: Status: running
19:09:10 [INFO] Poll #45: Status: running
19:08:59 [INFO] Poll #44: Status: running
19:08:49 [INFO] Poll #43: Status: running
19:08:39 [INFO] Poll #42: Status: running
19:08:28 [INFO] Poll #41: Status: running
19:08:18 [INFO] Poll #40: Status: running
19:08:08 [INFO] Poll #39: Status: running
19:07:58 [INFO] Poll #38: Status: running
19:07:47 [INFO] Poll #37: Status: running
19:07:37 [INFO] Poll #36: Status: running
19:07:27 [INFO] Poll #35: Status: running
19:07:16 [INFO] Poll #34: Status: running
19:07:06 [INFO] Poll #33: Status: running
19:06:56 [INFO] Poll #32: Status: running
19:06:46 [INFO] Poll #31: Status: running
19:06:35 [INFO] Poll #30: Status: running
19:06:25 [INFO] Poll #29: Status: running
19:06:15 [INFO] Poll #28: Status: running
19:06:04 [INFO] Poll #27: Status: running
19:05:54 [INFO] Poll #26: Status: running
19:05:44 [INFO] Poll #25: Status: running
19:05:34 [INFO] Poll #24: Status: running
19:05:23 [INFO] Poll #23: Status: running
19:05:13 [INFO] Poll #22: Status: running
19:05:03 [INFO] Poll #21: Status: running
19:04:52 [INFO] Poll #20: Status: running
19:04:42 [INFO] Poll #19: Status: running
19:04:32 [INFO] Poll #18: Status: running
19:04:21 [INFO] Poll #17: Status: running
19:04:11 [INFO] Poll #16: Status: running
19:04:01 [INFO] Poll #15: Status: running
19:03:51 [INFO] Poll #14: Status: running
19:03:40 [INFO] Poll #13: Status: running
19:03:30 [INFO] Poll #12: Status: running
19:03:20 [INFO] Poll #11: Status: running
19:03:09 [INFO] Poll #10: Status: running
19:02:59 [INFO] Poll #9: Status: running
19:02:49 [INFO] Poll #8: Status: running
19:02:39 [INFO] Poll #7: Status: running
19:02:28 [INFO] Poll #6: Status: running
19:02:18 [INFO] Poll #5: Status: running
19:02:08 [INFO] Poll #4: Status: running
19:01:57 [INFO] Poll #3: Status: running
19:01:47 [INFO] Poll #2: Status: running
19:01:37 [INFO] Poll #1: Status: running
19:01:27 [INFO] Diarization job started (Job ID: aa0303af-9057-4687-ac85-c54d3a9cf147). Processing audio...
19:01:26 [INFO] Submitting diarization + transcription job to pyannote.ai (URL: https://ccai-prod.s3.amazonaws.com/1ee05de8-9c3d-4f35-a6ba-f570e8e96d14.wav?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAQK6LNXA7XP5KSEWG%2F20260907%2Fca-central-1%2Fs3%2Faws4_request&X-Amz-Date=20260907T190126Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=8472d7e827126ef587998bd08fbaebc54b3f237260f154de783c29438ddbda4a)
19:01:26 [INFO] Starting speaker diarization via pyannote.ai API
19:01:26 [INFO] Starting speaker diarization via pyannote.ai API
19:01:26 [INFO] Using S3 pre-signed URL for diarization
19:01:26 [INFO] {"step": "diarization", "status": "processing", "updated_at": "2026-09-07T13:01:26.423479-06:00"}
19:01:26 [INFO] Starting transcription + diarization
19:01:26 [INFO] Audio extracted and attached: /tmp/tmpyhz8pld5/d560e4b8-f106-4dde-9486-2888e8375ceb.wav
19:01:26 [INFO] {"step": "extraction", "status": "completed", "updated_at": "2026-09-07T13:01:26.413197-06:00", "wav_path": "/tmp/tmpyhz8pld5/d560e4b8-f106-4dde-9486-2888e8375ceb.wav"}
19:01:18 [INFO] Audio extracted to /tmp/tmpyhz8pld5/d560e4b8-f106-4dde-9486-2888e8375ceb.wav
18:59:23 [INFO] Extracting audio to WAV format
18:59:23 [INFO] Extracting audio to WAV format
18:59:23 [INFO] {"step": "extraction", "status": "processing", "updated_at": "2026-09-07T12:59:23.613745-06:00"}
18:59:23 [INFO] Starting audio extraction
18:58:30 [INFO] Downloading video from S3 for processing
18:58:28 [INFO] Consolidation completed: 1000 segments (reduced from 4269)
18:58:28 [INFO] {"step": "consolidation", "status": "completed", "updated_at": "2026-09-07T12:58:28.517282-06:00", "consolidated_path": "4b281388-5eb6-402a-8382-d81084904615.diarization.consolidated.json", "stats": {"original_segment_count": 4269, "consolidated_segment_count": 1000, "reduction_percent": 76.58}}
18:58:28 [INFO] {"step": "consolidation", "status": "processing", "updated_at": "2026-09-07T12:58:28.179021-06:00"}
18:58:28 [INFO] Speaker refinement completed
18:58:28 [INFO] {"step": "gemini", "status": "completed", "updated_at": "2026-09-07T12:58:28.162491-06:00", "output_path": "/tmp/tmpk70zmioj.json"}
18:58:27 [INFO] ================================================================================
18:58:27 [INFO] CHUNKING COMPLETE: Successfully merged all 3 chunks in 304.3s
18:58:27 [INFO] ================================================================================
18:58:27 [INFO] ✓ Unique speaker mappings discovered: 84
18:58:27 [INFO] ✓ Speakers: 9 named, 55 generic
18:58:27 [INFO] ✓ Segment count: 4269/4269
18:58:27 [WARNING] Large gap detected at segment 4178: 32675.285s -> 32681.245s
18:58:27 [WARNING] Large gap detected at segment 3876: 30788.585s -> 30796.645s
18:58:27 [WARNING] Large gap detected at segment 3864: 30754.625s -> 30760.545s
18:58:27 [WARNING] Large gap detected at segment 3831: 30619.945s -> 30629.565s
18:58:27 [WARNING] Large gap detected at segment 3813: 30503.805s -> 30509.685s
18:58:27 [WARNING] Large gap detected at segment 3727: 29699.825s -> 29705.205s
18:58:27 [WARNING] Large gap detected at segment 3717: 29550.305s -> 29557.325s
18:58:27 [WARNING] Large gap detected at segment 3687: 29280.045s -> 29287.905s
18:58:27 [WARNING] Large gap detected at segment 3679: 29185.725s -> 29193.525s
18:58:27 [WARNING] Large gap detected at segment 3654: 28954.705s -> 28985.525s
18:58:27 [WARNING] Large gap detected at segment 3637: 28692.045s -> 28706.345s
18:58:27 [WARNING] Large gap detected at segment 3554: 28148.045s -> 28154.865s
18:58:27 [WARNING] Large gap detected at segment 3551: 28135.225s -> 28142.405s
18:58:27 [WARNING] Large gap detected at segment 3547: 28109.685s -> 28123.385s
18:58:27 [WARNING] Large gap detected at segment 3493: 27783.925s -> 27792.265s
18:58:27 [WARNING] Large gap detected at segment 3423: 27147.705s -> 27154.025s
18:58:27 [WARNING] Large gap detected at segment 3374: 26828.245s -> 26833.745s
18:58:27 [WARNING] Large gap detected at segment 3371: 26812.745s -> 26821.245s
18:58:27 [WARNING] Large gap detected at segment 3288: 25986.625s -> 25997.285s
18:58:27 [WARNING] Large gap detected at segment 3276: 25813.345s -> 25818.865s
18:58:27 [WARNING] Large gap detected at segment 3269: 25780.305s -> 25787.545s
18:58:27 [WARNING] Large gap detected at segment 3264: 25762.405s -> 25768.705s
18:58:27 [WARNING] Large gap detected at segment 3244: 25698.745s -> 25704.485s
18:58:27 [WARNING] Large gap detected at segment 3236: 25667.865s -> 25673.385s
18:58:27 [WARNING] Large gap detected at segment 3200: 25575.585s -> 25581.785s
18:58:27 [WARNING] Large gap detected at segment 2945: 22635.225s -> 22642.485s
18:58:27 [WARNING] Large gap detected at segment 2697: 20949.905s -> 20961.445s
18:58:27 [WARNING] Large gap detected at segment 2487: 19744.405s -> 19753.425s
18:58:27 [WARNING] Large gap detected at segment 2146: 17291.965s -> 17298.725s
18:58:27 [WARNING] Large gap detected at segment 1905: 15223.305s -> 15231.705s
18:58:27 [WARNING] Large gap detected at segment 1903: 15210.325s -> 15217.645s
18:58:27 [WARNING] Large gap detected at segment 1895: 14893.665s -> 14911.785s
18:58:27 [WARNING] Large gap detected at segment 1856: 14383.205s -> 14389.585s
18:58:27 [WARNING] Large gap detected at segment 1851: 14356.825s -> 14373.465s
18:58:27 [WARNING] Large gap detected at segment 1337: 9614.085s -> 9624.205s
18:58:27 [WARNING] Large gap detected at segment 967: 7091.285s -> 7096.825s
18:58:27 [WARNING] Large gap detected at segment 942: 6865.205s -> 6877.945s
18:58:27 [WARNING] Large gap detected at segment 855: 6310.285s -> 6317.805s
18:58:27 [WARNING] Large gap detected at segment 675: 5637.685s -> 5644.005s
18:58:27 [WARNING] Large gap detected at segment 673: 5629.165s -> 5634.405s
18:58:27 [WARNING] Large gap detected at segment 659: 5566.265s -> 5573.545s
18:58:27 [WARNING] Large gap detected at segment 652: 5538.685s -> 5544.085s
18:58:27 [WARNING] Large gap detected at segment 529: 4422.985s -> 4429.445s
18:58:27 [WARNING] Large gap detected at segment 358: 2804.165s -> 2811.005s
18:58:27 [WARNING] Large gap detected at segment 351: 2740.145s -> 2747.305s
18:58:27 [WARNING] Large gap detected at segment 347: 2667.585s -> 2680.125s
18:58:27 [WARNING] Large gap detected at segment 244: 2071.305s -> 2079.605s
18:58:27 [WARNING] Large gap detected at segment 241: 2055.965s -> 2062.825s
18:58:27 [WARNING] Large gap detected at segment 239: 2042.705s -> 2048.845s
18:58:27 [WARNING] Large gap detected at segment 203: 1819.425s -> 1824.785s
18:58:27 [WARNING] Large gap detected at segment 91: 639.265s -> 645.125s
18:58:27 [WARNING] Large gap detected at segment 50: 303.085s -> 308.685s
18:58:27 [WARNING] Large gap detected at segment 22: 37.625s -> 43.205s
18:58:27 [INFO] VALIDATING MERGED RESULT
18:58:27 [INFO] --------------------------------------------------------------------------------
18:58:27 [DEBUG] Saved chunk 3 state to database
18:58:27 [INFO] Chunk 3: ✓ Refined successfully. Total speaker mappings: 84
18:58:27 [INFO] Chunk 3: Added 39 new speaker mappings. Total: 84