Database Structure

Database Schema

Database Description

The database schema is structured around tables that represent different aspects of a meeting's data. Connections between records are made primarily through identifiers (IDs) such as meeting_id, speaker_id, etc.

Fragment

Stores information about specific parts of a meeting, with fields such as:

  • speaker_id: ID of the speaker associated with this fragment.

  • statement_id: ID of the statement this fragment is part of.

  • meeting_id: ID of the meeting this fragment belongs to.

  • fragment_filepath: Path to the file containing the fragment.

  • main_file_start_point and main_file_end_point: Start and end points of the fragment within the main file.

  • speech_emotions: Detected emotions in the speech.

  • speech_to_text: Transcription of the detected speech.

  • posneg_emotions: Positive and negative emotions detected in the speech.

  • final_emotions: Final emotions detected in the speech.

  • microphone_quality: Quality of the microphone used.

  • is_reverb: Boolean indicating if the fragment has reverb.

  • is_lagging: Boolean indicating if the fragment is lagging.

  • is_speech: Boolean indicating if the fragment is speech or music.

Meeting

Captures details of a meeting, including:

  • filepath: Path to the meeting file.

  • name: Name of the meeting.

  • date: Date of the meeting.

  • n_speakers_true and n_speakers_pred: Ground truth and predicted number of speakers.

  • user_email: Email of the user who uploaded the meeting.

  • organization_id: ID of the associated organization.

  • is_processed: Indicates if the meeting has been processed.

  • background_noise_dB: Background noise level in decibels.

  • from_pi: Indicates if the meeting was uploaded from a Raspberry Pi.

  • report_id: Global unique identifier for the meeting report.

MeetingStatistics

Contains various meeting-related statistics:

  • involvement: Level of involvement in the meeting.

  • top_emotion(1,2,3,4): Top detected emotions and their values.

  • microphone_quality: Quality of the microphone used.

  • is_in_series: Indicates if the meeting is part of a series.

  • overall_score: Overall meeting score.

  • meeting_vibe_score, technical_setup_score, meeting_energy_score, engagement_score, interaction_score: Various scores representing different meeting attributes.

SpeakerStatistics

Provides statistics for individual speakers in a meeting:

  • dominant_emotion: Dominant emotion of the speaker.

  • relative_speaking_activity: Relative speaking activity level.

  • speaking_time: Total speaking time of the speaker.

  • is_upsampled: Indicates if the audio has been upsampled.

  • is_speech: Indicates if the speaker's audio contains speech.

Statement

Records details of statements in a meeting:

  • text: Text content of the statement.

  • is_speech: Indicates if the statement was spoken.

  • fragments: Collection of fragments making up the statement.

  • sentences: Collection of sentences making up the statement.

Sentence

Stores information about individual sentences within statements:

  • statement_id: UUID of the statement the sentence belongs to.

  • n_in_statement: Position of the sentence in the statement.

  • text: Text content of the sentence.

  • text_emotions: Detected emotions in the sentence text.

  • is_offensive: Indicates if the sentence is offensive.

  • is_speech: Indicates if the sentence was spoken.

  • toxicity: Toxicity level detected in the sentence.

  • statement: Reference to the parent statement.

Organization

Represents an organization with:

  • name: Name of the organization.

  • meetings: List of meetings associated with the organization.

Last updated