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
Downloading…
0%
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
Progress
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…
Transcript & diarization
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