SQL
CREATE TABLE diarization_segments (
id INTEGER PRIMARY KEY AUTOINCREMENT,
diarization_run_id INTEGER NOT NULL REFERENCES diarization_runs(id) ON DELETE CASCADE,
audio_chunk_id INTEGER NOT NULL REFERENCES audio_chunks(id) ON DELETE CASCADE,
provider_speaker_label TEXT NOT NULL,
speaker_id INTEGER REFERENCES speakers(id) ON DELETE SET NULL,
source TEXT NOT NULL DEFAULT 'provider',
start_time REAL NOT NULL,
end_time REAL NOT NULL,
confidence REAL,
overlap BOOLEAN NOT NULL DEFAULT FALSE,
metadata JSON
)
Columns
| Column |
Data type |
Allow null |
Primary key |
Actions |
id |
INTEGER |
✓ |
✓ |
read-only
|
diarization_run_id |
INTEGER |
|
|
read-only
|
audio_chunk_id |
INTEGER |
|
|
read-only
|
provider_speaker_label |
TEXT |
|
|
read-only
|
speaker_id |
INTEGER |
✓ |
|
read-only
|
source |
TEXT |
|
|
read-only
|
start_time |
REAL |
|
|
read-only
|
end_time |
REAL |
|
|
read-only
|
confidence |
REAL |
✓ |
|
read-only
|
overlap |
BOOLEAN |
|
|
read-only
|
metadata |
JSON |
✓ |
|
read-only
|
Foreign Keys
| Column |
Destination |
speaker_id |
speakers.id |
audio_chunk_id |
audio_chunks.id |
diarization_run_id |
diarization_runs.id |
Indexes
| Name |
Columns |
Unique |
SQL |
Drop? |