vad

package
v0.0.44 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 11, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ProbabilityEstimator added in v0.0.23

type ProbabilityEstimator func(*model.AudioFrame) (float64, error)

type ProbabilityEstimatorFactory added in v0.0.23

type ProbabilityEstimatorFactory func() ProbabilityEstimator

type SimpleVAD

type SimpleVAD struct {
	// contains filtered or unexported fields
}

func NewSimpleVAD

func NewSimpleVAD(threshold float64) *SimpleVAD

func NewSimpleVADWith added in v0.0.15

func NewSimpleVADWith(opts ...SimpleVADOption) *SimpleVAD

func NewSimpleVADWithOptions added in v0.0.15

func NewSimpleVADWithOptions(options SimpleVADOptions) *SimpleVAD

func (*SimpleVAD) Capabilities added in v0.0.15

func (v *SimpleVAD) Capabilities() VADCapabilities

func (*SimpleVAD) Label added in v0.0.15

func (v *SimpleVAD) Label() string

func (*SimpleVAD) Model added in v0.0.15

func (v *SimpleVAD) Model() string

func (*SimpleVAD) OnMetricsCollected added in v0.0.15

func (v *SimpleVAD) OnMetricsCollected(handler VADMetricsHandler) func()

func (*SimpleVAD) Provider added in v0.0.15

func (v *SimpleVAD) Provider() string

func (*SimpleVAD) Stream

func (v *SimpleVAD) Stream(ctx context.Context) (VADStream, error)

func (*SimpleVAD) UpdateOptions added in v0.0.15

func (v *SimpleVAD) UpdateOptions(options SimpleVADOptions)

func (*SimpleVAD) UpdateOptionsWith added in v0.0.15

func (v *SimpleVAD) UpdateOptionsWith(opts ...SimpleVADOption)

type SimpleVADOption added in v0.0.9

type SimpleVADOption func(*SimpleVADOptions)

func WithDeactivationThreshold added in v0.0.15

func WithDeactivationThreshold(threshold float64) SimpleVADOption

func WithMaxBufferedSpeechDuration added in v0.0.15

func WithMaxBufferedSpeechDuration(duration float64) SimpleVADOption

func WithMinSilenceDuration added in v0.0.9

func WithMinSilenceDuration(duration float64) SimpleVADOption

func WithMinSpeechDuration added in v0.0.9

func WithMinSpeechDuration(duration float64) SimpleVADOption

func WithPrefixPaddingDuration added in v0.0.15

func WithPrefixPaddingDuration(duration float64) SimpleVADOption

func WithProbabilityEstimatorFactory added in v0.0.23

func WithProbabilityEstimatorFactory(factory ProbabilityEstimatorFactory) SimpleVADOption

func WithProbabilitySmoothingAlpha added in v0.0.15

func WithProbabilitySmoothingAlpha(alpha float64) SimpleVADOption

func WithSampleRate added in v0.0.15

func WithSampleRate(sampleRate uint32) SimpleVADOption

func WithThreshold added in v0.0.15

func WithThreshold(threshold float64) SimpleVADOption

func WithUpdateInterval added in v0.0.15

func WithUpdateInterval(interval float64) SimpleVADOption

func WithWindowDuration added in v0.0.15

func WithWindowDuration(duration float64) SimpleVADOption

type SimpleVADOptions added in v0.0.15

type SimpleVADOptions struct {
	Threshold                 float64
	MinSpeechDuration         float64
	MinSilenceDuration        float64
	PrefixPaddingDuration     float64
	MaxBufferedSpeechDuration float64
	DeactivationThreshold     float64
	UpdateInterval            float64
	SampleRate                uint32
	WindowDuration            float64
	ProbabilitySmoothingAlpha float64
	ProbabilityEstimator      ProbabilityEstimatorFactory
	// contains filtered or unexported fields
}

type VAD

type VAD interface {
	Label() string
	Model() string
	Provider() string
	Capabilities() VADCapabilities
	OnMetricsCollected(handler VADMetricsHandler) func()
	Stream(ctx context.Context) (VADStream, error)
}

type VADCapabilities added in v0.0.15

type VADCapabilities struct {
	UpdateInterval float64
}

type VADEvent

type VADEvent struct {
	Type                  VADEventType
	SamplesIndex          int
	Timestamp             float64
	SpeechDuration        float64
	SilenceDuration       float64
	Frames                []*model.AudioFrame
	Probability           float64
	InferenceDuration     float64
	Speaking              bool
	RawAccumulatedSilence float64
	RawAccumulatedSpeech  float64
}

type VADEventType

type VADEventType string
const (
	VADEventStartOfSpeech VADEventType = "start_of_speech"
	VADEventInferenceDone VADEventType = "inference_done"
	VADEventEndOfSpeech   VADEventType = "end_of_speech"
)

type VADMetricsHandler added in v0.0.15

type VADMetricsHandler func(*telemetry.VADMetrics)

type VADStream

type VADStream interface {
	PushFrame(frame *model.AudioFrame) error
	Flush() error
	EndInput() error
	Close() error
	Next() (*VADEvent, error)
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL