lib/membrane_rtc_engine/events/voice_activity.ex
defmodule Membrane.RTC.Engine.Event.VoiceActivityChanged do
@moduledoc """
An event indicating that the voice activity on the given track has changed.
Endpoints should only emit those events when they implement voice activity detection.
"""
use Bunch.Access
@derive Membrane.EventProtocol
@enforce_keys [:voice_activity]
defstruct @enforce_keys
@typedoc """
Type describing an event indicating changes in voice activity on the
given audio track.
"""
@type t() :: %__MODULE__{
voice_activity: :speech | :silence
}
end