Protocol interfaces defining audio/video streams, VAD, STT, TTS, and meeting provider contracts.
# Source: https://github.com/joinly-ai/joinly | License: MIT | Copyright 2025 Dominik Brockmann, Johannes Dittrich, Fynn Aurand
# Provided via justclaw.it.com; keep this notice with the code.
import asyncio
from collections.abc import AsyncIterator
from typing import Protocol
from joinly.types import (
ActionAnimation,
AudioChunk,
AudioFormat,
MeetingChatHistory,
MeetingParticipant,
SpeechWindow,
Transcript,
TranscriptSegment,
UIUpdate,
VideoSnapshot,
)
from joinly.utils.clock import Clock
from joinly.utils.events import EventBus
class AudioReader(Protocol):
"""Protocol for audio stream sources.
Defines the interface for objects that provide audio data.
Attributes:
audio_format (AudioFormat): The format of the audio data bein
... (truncated -- full source via MCP)
See the full source, get the GitHub permalink, and search for more like it.
Get a free API key