audiocontrol

package
v0.0.8 Latest Latest
Warning

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

Go to latest
Published: Apr 3, 2026 License: CC0-1.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TransactionIAudioControlOnAudioFocusChange             = binder.FirstCallTransaction + 0
	TransactionIAudioControlOnDevicesToDuckChange          = binder.FirstCallTransaction + 1
	TransactionIAudioControlOnDevicesToMuteChange          = binder.FirstCallTransaction + 2
	TransactionIAudioControlRegisterFocusListener          = binder.FirstCallTransaction + 3
	TransactionIAudioControlSetBalanceTowardRight          = binder.FirstCallTransaction + 4
	TransactionIAudioControlSetFadeTowardFront             = binder.FirstCallTransaction + 5
	TransactionIAudioControlOnAudioFocusChangeWithMetaData = binder.FirstCallTransaction + 6
	TransactionIAudioControlSetAudioDeviceGainsChanged     = binder.FirstCallTransaction + 7
	TransactionIAudioControlRegisterGainCallback           = binder.FirstCallTransaction + 8
	TransactionIAudioControlSetModuleChangeCallback        = binder.FirstCallTransaction + 9
	TransactionIAudioControlClearModuleChangeCallback      = binder.FirstCallTransaction + 10
)
View Source
const (
	MethodIAudioControlOnAudioFocusChange             = "onAudioFocusChange"
	MethodIAudioControlOnDevicesToDuckChange          = "onDevicesToDuckChange"
	MethodIAudioControlOnDevicesToMuteChange          = "onDevicesToMuteChange"
	MethodIAudioControlRegisterFocusListener          = "registerFocusListener"
	MethodIAudioControlSetBalanceTowardRight          = "setBalanceTowardRight"
	MethodIAudioControlSetFadeTowardFront             = "setFadeTowardFront"
	MethodIAudioControlOnAudioFocusChangeWithMetaData = "onAudioFocusChangeWithMetaData"
	MethodIAudioControlSetAudioDeviceGainsChanged     = "setAudioDeviceGainsChanged"
	MethodIAudioControlRegisterGainCallback           = "registerGainCallback"
	MethodIAudioControlSetModuleChangeCallback        = "setModuleChangeCallback"
	MethodIAudioControlClearModuleChangeCallback      = "clearModuleChangeCallback"
)
View Source
const (
	TransactionIFocusListenerAbandonAudioFocus             = binder.FirstCallTransaction + 0
	TransactionIFocusListenerRequestAudioFocus             = binder.FirstCallTransaction + 1
	TransactionIFocusListenerAbandonAudioFocusWithMetaData = binder.FirstCallTransaction + 2
	TransactionIFocusListenerRequestAudioFocusWithMetaData = binder.FirstCallTransaction + 3
)
View Source
const (
	MethodIFocusListenerAbandonAudioFocus             = "abandonAudioFocus"
	MethodIFocusListenerRequestAudioFocus             = "requestAudioFocus"
	MethodIFocusListenerAbandonAudioFocusWithMetaData = "abandonAudioFocusWithMetaData"
	MethodIFocusListenerRequestAudioFocusWithMetaData = "requestAudioFocusWithMetaData"
)
View Source
const DescriptorIAudioControl = "android.hardware.automotive.audiocontrol.IAudioControl"
View Source
const DescriptorIAudioGainCallback = "android.hardware.automotive.audiocontrol.IAudioGainCallback"
View Source
const DescriptorIFocusListener = "android.hardware.automotive.audiocontrol.IFocusListener"
View Source
const DescriptorIModuleChangeCallback = "android.hardware.automotive.audiocontrol.IModuleChangeCallback"
View Source
const (
	MethodIAudioGainCallbackOnAudioDeviceGainsChanged = "onAudioDeviceGainsChanged"
)
View Source
const (
	MethodIModuleChangeCallbackOnAudioPortsChanged = "onAudioPortsChanged"
)
View Source
const (
	TransactionIAudioGainCallbackOnAudioDeviceGainsChanged = binder.FirstCallTransaction + 0
)
View Source
const (
	TransactionIModuleChangeCallbackOnAudioPortsChanged = binder.FirstCallTransaction + 0
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AudioControlProxy

type AudioControlProxy struct {
	Remote binder.IBinder
}

func NewAudioControlProxy

func NewAudioControlProxy(
	remote binder.IBinder,
) *AudioControlProxy

func (*AudioControlProxy) AsBinder

func (p *AudioControlProxy) AsBinder() binder.IBinder

func (*AudioControlProxy) ClearModuleChangeCallback

func (p *AudioControlProxy) ClearModuleChangeCallback(
	ctx context.Context,
) error

func (*AudioControlProxy) OnAudioFocusChange

func (p *AudioControlProxy) OnAudioFocusChange(
	ctx context.Context,
	usage string,
	zoneId int32,
	focusChange AudioFocusChange,
) error

func (*AudioControlProxy) OnAudioFocusChangeWithMetaData

func (p *AudioControlProxy) OnAudioFocusChangeWithMetaData(
	ctx context.Context,
	playbackMetaData common.PlaybackTrackMetadata,
	zoneId int32,
	focusChange AudioFocusChange,
) error

func (*AudioControlProxy) OnDevicesToDuckChange

func (p *AudioControlProxy) OnDevicesToDuckChange(
	ctx context.Context,
	duckingInfos []DuckingInfo,
) error

func (*AudioControlProxy) OnDevicesToMuteChange

func (p *AudioControlProxy) OnDevicesToMuteChange(
	ctx context.Context,
	mutingInfos []MutingInfo,
) error

func (*AudioControlProxy) RegisterFocusListener

func (p *AudioControlProxy) RegisterFocusListener(
	ctx context.Context,
	listener IFocusListener,
) error

func (*AudioControlProxy) RegisterGainCallback

func (p *AudioControlProxy) RegisterGainCallback(
	ctx context.Context,
	callback IAudioGainCallback,
) error

func (*AudioControlProxy) SetAudioDeviceGainsChanged

func (p *AudioControlProxy) SetAudioDeviceGainsChanged(
	ctx context.Context,
	reasons []Reasons,
	gains []AudioGainConfigInfo,
) error

func (*AudioControlProxy) SetBalanceTowardRight

func (p *AudioControlProxy) SetBalanceTowardRight(
	ctx context.Context,
	value float32,
) error

func (*AudioControlProxy) SetFadeTowardFront

func (p *AudioControlProxy) SetFadeTowardFront(
	ctx context.Context,
	value float32,
) error

func (*AudioControlProxy) SetModuleChangeCallback

func (p *AudioControlProxy) SetModuleChangeCallback(
	ctx context.Context,
	callback IModuleChangeCallback,
) error

type AudioControlStub

type AudioControlStub struct {
	Impl      IAudioControl
	Transport binder.VersionAwareTransport
}

AudioControlStub dispatches incoming binder transactions to a typed IAudioControl implementation.

func (*AudioControlStub) Descriptor

func (s *AudioControlStub) Descriptor() string

func (*AudioControlStub) OnTransaction

func (s *AudioControlStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type AudioFocusChange

type AudioFocusChange int32
const (
	AudioFocusChangeNONE                   AudioFocusChange = 0
	AudioFocusChangeGAIN                   AudioFocusChange = 1
	AudioFocusChangeGainTransient          AudioFocusChange = 2
	AudioFocusChangeGainTransientMayDuck   AudioFocusChange = 3
	AudioFocusChangeGainTransientExclusive AudioFocusChange = 4
	AudioFocusChangeLOSS                   AudioFocusChange = -(1 * AudioFocusChangeGAIN)
	AudioFocusChangeLossTransient          AudioFocusChange = -(1 * AudioFocusChangeGainTransient)
	AudioFocusChangeLossTransientCanDuck   AudioFocusChange = -(1 * AudioFocusChangeGainTransientMayDuck)
)

type AudioGainCallbackProxy

type AudioGainCallbackProxy struct {
	Remote binder.IBinder
}

func NewAudioGainCallbackProxy

func NewAudioGainCallbackProxy(
	remote binder.IBinder,
) *AudioGainCallbackProxy

func (*AudioGainCallbackProxy) AsBinder

func (p *AudioGainCallbackProxy) AsBinder() binder.IBinder

func (*AudioGainCallbackProxy) OnAudioDeviceGainsChanged

func (p *AudioGainCallbackProxy) OnAudioDeviceGainsChanged(
	ctx context.Context,
	reasons []Reasons,
	gains []AudioGainConfigInfo,
) error

type AudioGainCallbackStub

type AudioGainCallbackStub struct {
	Impl      IAudioGainCallback
	Transport binder.VersionAwareTransport
}

AudioGainCallbackStub dispatches incoming binder transactions to a typed IAudioGainCallback implementation.

func (*AudioGainCallbackStub) Descriptor

func (s *AudioGainCallbackStub) Descriptor() string

func (*AudioGainCallbackStub) OnTransaction

func (s *AudioGainCallbackStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type AudioGainConfigInfo

type AudioGainConfigInfo struct {
	ZoneId            int32
	DevicePortAddress string
	VolumeIndex       int32
}

func (*AudioGainConfigInfo) MarshalParcel

func (s *AudioGainConfigInfo) MarshalParcel(
	p *parcel.Parcel,
) error

func (*AudioGainConfigInfo) UnmarshalParcel

func (s *AudioGainConfigInfo) UnmarshalParcel(
	p *parcel.Parcel,
) error

type DuckingInfo

type DuckingInfo struct {
	ZoneId                       int32
	DeviceAddressesToDuck        []string
	DeviceAddressesToUnduck      []string
	UsagesHoldingFocus           []string
	PlaybackMetaDataHoldingFocus []common.PlaybackTrackMetadata
}

func (*DuckingInfo) MarshalParcel

func (s *DuckingInfo) MarshalParcel(
	p *parcel.Parcel,
) error

func (*DuckingInfo) UnmarshalParcel

func (s *DuckingInfo) UnmarshalParcel(
	p *parcel.Parcel,
) error

type FocusListenerProxy

type FocusListenerProxy struct {
	Remote binder.IBinder
}

func NewFocusListenerProxy

func NewFocusListenerProxy(
	remote binder.IBinder,
) *FocusListenerProxy

func (*FocusListenerProxy) AbandonAudioFocus

func (p *FocusListenerProxy) AbandonAudioFocus(
	ctx context.Context,
	usage string,
	zoneId int32,
) error

func (*FocusListenerProxy) AbandonAudioFocusWithMetaData

func (p *FocusListenerProxy) AbandonAudioFocusWithMetaData(
	ctx context.Context,
	playbackMetaData common.PlaybackTrackMetadata,
	zoneId int32,
) error

func (*FocusListenerProxy) AsBinder

func (p *FocusListenerProxy) AsBinder() binder.IBinder

func (*FocusListenerProxy) RequestAudioFocus

func (p *FocusListenerProxy) RequestAudioFocus(
	ctx context.Context,
	usage string,
	zoneId int32,
	focusGain AudioFocusChange,
) error

func (*FocusListenerProxy) RequestAudioFocusWithMetaData

func (p *FocusListenerProxy) RequestAudioFocusWithMetaData(
	ctx context.Context,
	playbackMetaData common.PlaybackTrackMetadata,
	zoneId int32,
	focusGain AudioFocusChange,
) error

type FocusListenerStub

type FocusListenerStub struct {
	Impl      IFocusListener
	Transport binder.VersionAwareTransport
}

FocusListenerStub dispatches incoming binder transactions to a typed IFocusListener implementation.

func (*FocusListenerStub) Descriptor

func (s *FocusListenerStub) Descriptor() string

func (*FocusListenerStub) OnTransaction

func (s *FocusListenerStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type IAudioControl

type IAudioControl interface {
	AsBinder() binder.IBinder
	OnAudioFocusChange(ctx context.Context, usage string, zoneId int32, focusChange AudioFocusChange) error
	OnDevicesToDuckChange(ctx context.Context, duckingInfos []DuckingInfo) error
	OnDevicesToMuteChange(ctx context.Context, mutingInfos []MutingInfo) error
	RegisterFocusListener(ctx context.Context, listener IFocusListener) error
	SetBalanceTowardRight(ctx context.Context, value float32) error
	SetFadeTowardFront(ctx context.Context, value float32) error
	OnAudioFocusChangeWithMetaData(ctx context.Context, playbackMetaData common.PlaybackTrackMetadata, zoneId int32, focusChange AudioFocusChange) error
	SetAudioDeviceGainsChanged(ctx context.Context, reasons []Reasons, gains []AudioGainConfigInfo) error
	RegisterGainCallback(ctx context.Context, callback IAudioGainCallback) error
	SetModuleChangeCallback(ctx context.Context, callback IModuleChangeCallback) error
	ClearModuleChangeCallback(ctx context.Context) error
}

func NewAudioControlStub

func NewAudioControlStub(
	impl IAudioControlServer,
) IAudioControl

NewAudioControlStub creates a server-side IAudioControl wrapping the given server implementation. The returned value satisfies IAudioControl and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IAudioControlServer

type IAudioControlServer interface {
	OnAudioFocusChange(ctx context.Context, usage string, zoneId int32, focusChange AudioFocusChange) error
	OnDevicesToDuckChange(ctx context.Context, duckingInfos []DuckingInfo) error
	OnDevicesToMuteChange(ctx context.Context, mutingInfos []MutingInfo) error
	RegisterFocusListener(ctx context.Context, listener IFocusListener) error
	SetBalanceTowardRight(ctx context.Context, value float32) error
	SetFadeTowardFront(ctx context.Context, value float32) error
	OnAudioFocusChangeWithMetaData(ctx context.Context, playbackMetaData common.PlaybackTrackMetadata, zoneId int32, focusChange AudioFocusChange) error
	SetAudioDeviceGainsChanged(ctx context.Context, reasons []Reasons, gains []AudioGainConfigInfo) error
	RegisterGainCallback(ctx context.Context, callback IAudioGainCallback) error
	SetModuleChangeCallback(ctx context.Context, callback IModuleChangeCallback) error
	ClearModuleChangeCallback(ctx context.Context) error
}

IAudioControlServer is the server-side interface that user implementations provide to NewAudioControlStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IAudioGainCallback

type IAudioGainCallback interface {
	AsBinder() binder.IBinder
	OnAudioDeviceGainsChanged(ctx context.Context, reasons []Reasons, gains []AudioGainConfigInfo) error
}

func NewAudioGainCallbackStub

func NewAudioGainCallbackStub(
	impl IAudioGainCallbackServer,
) IAudioGainCallback

NewAudioGainCallbackStub creates a server-side IAudioGainCallback wrapping the given server implementation. The returned value satisfies IAudioGainCallback and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IAudioGainCallbackServer

type IAudioGainCallbackServer interface {
	OnAudioDeviceGainsChanged(ctx context.Context, reasons []Reasons, gains []AudioGainConfigInfo) error
}

IAudioGainCallbackServer is the server-side interface that user implementations provide to NewAudioGainCallbackStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IFocusListener

type IFocusListener interface {
	AsBinder() binder.IBinder
	AbandonAudioFocus(ctx context.Context, usage string, zoneId int32) error
	RequestAudioFocus(ctx context.Context, usage string, zoneId int32, focusGain AudioFocusChange) error
	AbandonAudioFocusWithMetaData(ctx context.Context, playbackMetaData common.PlaybackTrackMetadata, zoneId int32) error
	RequestAudioFocusWithMetaData(ctx context.Context, playbackMetaData common.PlaybackTrackMetadata, zoneId int32, focusGain AudioFocusChange) error
}

func NewFocusListenerStub

func NewFocusListenerStub(
	impl IFocusListenerServer,
) IFocusListener

NewFocusListenerStub creates a server-side IFocusListener wrapping the given server implementation. The returned value satisfies IFocusListener and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IFocusListenerServer

type IFocusListenerServer interface {
	AbandonAudioFocus(ctx context.Context, usage string, zoneId int32) error
	RequestAudioFocus(ctx context.Context, usage string, zoneId int32, focusGain AudioFocusChange) error
	AbandonAudioFocusWithMetaData(ctx context.Context, playbackMetaData common.PlaybackTrackMetadata, zoneId int32) error
	RequestAudioFocusWithMetaData(ctx context.Context, playbackMetaData common.PlaybackTrackMetadata, zoneId int32, focusGain AudioFocusChange) error
}

IFocusListenerServer is the server-side interface that user implementations provide to NewFocusListenerStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IModuleChangeCallback

type IModuleChangeCallback interface {
	AsBinder() binder.IBinder
	OnAudioPortsChanged(ctx context.Context, audioPorts []common.AudioPort) error
}

func NewModuleChangeCallbackStub

func NewModuleChangeCallbackStub(
	impl IModuleChangeCallbackServer,
) IModuleChangeCallback

NewModuleChangeCallbackStub creates a server-side IModuleChangeCallback wrapping the given server implementation. The returned value satisfies IModuleChangeCallback and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IModuleChangeCallbackServer

type IModuleChangeCallbackServer interface {
	OnAudioPortsChanged(ctx context.Context, audioPorts []common.AudioPort) error
}

IModuleChangeCallbackServer is the server-side interface that user implementations provide to NewModuleChangeCallbackStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type ModuleChangeCallbackProxy

type ModuleChangeCallbackProxy struct {
	Remote binder.IBinder
}

func NewModuleChangeCallbackProxy

func NewModuleChangeCallbackProxy(
	remote binder.IBinder,
) *ModuleChangeCallbackProxy

func (*ModuleChangeCallbackProxy) AsBinder

func (*ModuleChangeCallbackProxy) OnAudioPortsChanged

func (p *ModuleChangeCallbackProxy) OnAudioPortsChanged(
	ctx context.Context,
	audioPorts []common.AudioPort,
) error

type ModuleChangeCallbackStub

type ModuleChangeCallbackStub struct {
	Impl      IModuleChangeCallback
	Transport binder.VersionAwareTransport
}

ModuleChangeCallbackStub dispatches incoming binder transactions to a typed IModuleChangeCallback implementation.

func (*ModuleChangeCallbackStub) Descriptor

func (s *ModuleChangeCallbackStub) Descriptor() string

func (*ModuleChangeCallbackStub) OnTransaction

func (s *ModuleChangeCallbackStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type MutingInfo

type MutingInfo struct {
	ZoneId                  int32
	DeviceAddressesToMute   []string
	DeviceAddressesToUnmute []string
}

func (*MutingInfo) MarshalParcel

func (s *MutingInfo) MarshalParcel(
	p *parcel.Parcel,
) error

func (*MutingInfo) UnmarshalParcel

func (s *MutingInfo) UnmarshalParcel(
	p *parcel.Parcel,
) error

type Reasons

type Reasons int32
const (
	ReasonsForcedMasterMute         Reasons = 1
	ReasonsRemoteMute               Reasons = 2
	ReasonsTcuMute                  Reasons = 4
	ReasonsAdasDucking              Reasons = 8
	ReasonsNavDucking               Reasons = 16
	ReasonsProjectionDucking        Reasons = 32
	ReasonsThermalLimitation        Reasons = 64
	ReasonsSuspendExitVolLimitation Reasons = 128
	ReasonsExternalAmpVolFeedback   Reasons = 256
	ReasonsOTHER                    Reasons = -2147483648
)

Jump to

Keyboard shortcuts

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