device

package
v0.0.7 Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2026 License: CC0-1.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CaptureMetadataInfoTagFmqMetadataSize int32 = 0
	CaptureMetadataInfoTagMetadata        int32 = 1
)
View Source
const (
	TransactionICameraDeviceCallbackOnCaptureStarted        = binder.FirstCallTransaction + 0
	TransactionICameraDeviceCallbackOnDeviceError           = binder.FirstCallTransaction + 1
	TransactionICameraDeviceCallbackOnDeviceIdle            = binder.FirstCallTransaction + 2
	TransactionICameraDeviceCallbackOnPrepared              = binder.FirstCallTransaction + 3
	TransactionICameraDeviceCallbackOnRepeatingRequestError = binder.FirstCallTransaction + 4
	TransactionICameraDeviceCallbackOnResultReceived        = binder.FirstCallTransaction + 5
)
View Source
const (
	MethodICameraDeviceCallbackOnCaptureStarted        = "onCaptureStarted"
	MethodICameraDeviceCallbackOnDeviceError           = "onDeviceError"
	MethodICameraDeviceCallbackOnDeviceIdle            = "onDeviceIdle"
	MethodICameraDeviceCallbackOnPrepared              = "onPrepared"
	MethodICameraDeviceCallbackOnRepeatingRequestError = "onRepeatingRequestError"
	MethodICameraDeviceCallbackOnResultReceived        = "onResultReceived"
)
View Source
const (
	TransactionICameraDeviceUserBeginConfigure                  = binder.FirstCallTransaction + 0
	TransactionICameraDeviceUserCancelRepeatingRequest          = binder.FirstCallTransaction + 1
	TransactionICameraDeviceUserCreateDefaultRequest            = binder.FirstCallTransaction + 2
	TransactionICameraDeviceUserCreateStream                    = binder.FirstCallTransaction + 3
	TransactionICameraDeviceUserDeleteStream                    = binder.FirstCallTransaction + 4
	TransactionICameraDeviceUserDisconnect                      = binder.FirstCallTransaction + 5
	TransactionICameraDeviceUserEndConfigure                    = binder.FirstCallTransaction + 6
	TransactionICameraDeviceUserFlush                           = binder.FirstCallTransaction + 7
	TransactionICameraDeviceUserGetCaptureRequestMetadataQueue  = binder.FirstCallTransaction + 8
	TransactionICameraDeviceUserGetCaptureResultMetadataQueue   = binder.FirstCallTransaction + 9
	TransactionICameraDeviceUserIsSessionConfigurationSupported = binder.FirstCallTransaction + 10
	TransactionICameraDeviceUserPrepare                         = binder.FirstCallTransaction + 11
	TransactionICameraDeviceUserSubmitRequestList               = binder.FirstCallTransaction + 12
	TransactionICameraDeviceUserUpdateOutputConfiguration       = binder.FirstCallTransaction + 13
	TransactionICameraDeviceUserWaitUntilIdle                   = binder.FirstCallTransaction + 14
)
View Source
const (
	MethodICameraDeviceUserBeginConfigure                  = "beginConfigure"
	MethodICameraDeviceUserCancelRepeatingRequest          = "cancelRepeatingRequest"
	MethodICameraDeviceUserCreateDefaultRequest            = "createDefaultRequest"
	MethodICameraDeviceUserCreateStream                    = "createStream"
	MethodICameraDeviceUserDeleteStream                    = "deleteStream"
	MethodICameraDeviceUserDisconnect                      = "disconnect"
	MethodICameraDeviceUserEndConfigure                    = "endConfigure"
	MethodICameraDeviceUserFlush                           = "flush"
	MethodICameraDeviceUserGetCaptureRequestMetadataQueue  = "getCaptureRequestMetadataQueue"
	MethodICameraDeviceUserGetCaptureResultMetadataQueue   = "getCaptureResultMetadataQueue"
	MethodICameraDeviceUserIsSessionConfigurationSupported = "isSessionConfigurationSupported"
	MethodICameraDeviceUserPrepare                         = "prepare"
	MethodICameraDeviceUserSubmitRequestList               = "submitRequestList"
	MethodICameraDeviceUserUpdateOutputConfiguration       = "updateOutputConfiguration"
	MethodICameraDeviceUserWaitUntilIdle                   = "waitUntilIdle"
)
View Source
const DescriptorICameraDeviceCallback = "android.frameworks.cameraservice.device.ICameraDeviceCallback"
View Source
const DescriptorICameraDeviceUser = "android.frameworks.cameraservice.device.ICameraDeviceUser"

Variables

This section is empty.

Functions

This section is empty.

Types

type CameraDeviceCallbackProxy

type CameraDeviceCallbackProxy struct {
	Remote binder.IBinder
}

func NewCameraDeviceCallbackProxy

func NewCameraDeviceCallbackProxy(
	remote binder.IBinder,
) *CameraDeviceCallbackProxy

func (*CameraDeviceCallbackProxy) AsBinder

func (*CameraDeviceCallbackProxy) OnCaptureStarted

func (p *CameraDeviceCallbackProxy) OnCaptureStarted(
	ctx context.Context,
	resultExtras CaptureResultExtras,
	timestamp int64,
) error

func (*CameraDeviceCallbackProxy) OnDeviceError

func (p *CameraDeviceCallbackProxy) OnDeviceError(
	ctx context.Context,
	errorCode ErrorCode,
	resultExtras CaptureResultExtras,
) error

func (*CameraDeviceCallbackProxy) OnDeviceIdle

func (p *CameraDeviceCallbackProxy) OnDeviceIdle(
	ctx context.Context,
) error

func (*CameraDeviceCallbackProxy) OnPrepared

func (p *CameraDeviceCallbackProxy) OnPrepared(
	ctx context.Context,
	streamId int32,
) error

func (*CameraDeviceCallbackProxy) OnRepeatingRequestError

func (p *CameraDeviceCallbackProxy) OnRepeatingRequestError(
	ctx context.Context,
	lastFrameNumber int64,
	repeatingRequestId int32,
) error

func (*CameraDeviceCallbackProxy) OnResultReceived

func (p *CameraDeviceCallbackProxy) OnResultReceived(
	ctx context.Context,
	result CaptureMetadataInfo,
	resultExtras CaptureResultExtras,
	physicalCaptureResultInfos []PhysicalCaptureResultInfo,
) error

type CameraDeviceCallbackStub

type CameraDeviceCallbackStub struct {
	Impl      ICameraDeviceCallback
	Transport binder.VersionAwareTransport
}

CameraDeviceCallbackStub dispatches incoming binder transactions to a typed ICameraDeviceCallback implementation.

func (*CameraDeviceCallbackStub) Descriptor

func (s *CameraDeviceCallbackStub) Descriptor() string

func (*CameraDeviceCallbackStub) OnTransaction

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

type CameraDeviceUserProxy

type CameraDeviceUserProxy struct {
	Remote binder.IBinder
}

func NewCameraDeviceUserProxy

func NewCameraDeviceUserProxy(
	remote binder.IBinder,
) *CameraDeviceUserProxy

func (*CameraDeviceUserProxy) AsBinder

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

func (*CameraDeviceUserProxy) BeginConfigure

func (p *CameraDeviceUserProxy) BeginConfigure(
	ctx context.Context,
) error

func (*CameraDeviceUserProxy) CancelRepeatingRequest

func (p *CameraDeviceUserProxy) CancelRepeatingRequest(
	ctx context.Context,
) (int64, error)

func (*CameraDeviceUserProxy) CreateDefaultRequest

func (p *CameraDeviceUserProxy) CreateDefaultRequest(
	ctx context.Context,
	templateId TemplateId,
) (CameraMetadata, error)

func (*CameraDeviceUserProxy) CreateStream

func (p *CameraDeviceUserProxy) CreateStream(
	ctx context.Context,
	outputConfiguration OutputConfiguration,
) (int32, error)

func (*CameraDeviceUserProxy) DeleteStream

func (p *CameraDeviceUserProxy) DeleteStream(
	ctx context.Context,
	streamId int32,
) error

func (*CameraDeviceUserProxy) Disconnect

func (p *CameraDeviceUserProxy) Disconnect(
	ctx context.Context,
) error

func (*CameraDeviceUserProxy) EndConfigure

func (p *CameraDeviceUserProxy) EndConfigure(
	ctx context.Context,
	operatingMode StreamConfigurationMode,
	sessionParams CameraMetadata,
	startTimeNs int64,
) error

func (*CameraDeviceUserProxy) Flush

func (p *CameraDeviceUserProxy) Flush(
	ctx context.Context,
) (int64, error)

func (*CameraDeviceUserProxy) GetCaptureRequestMetadataQueue

func (p *CameraDeviceUserProxy) GetCaptureRequestMetadataQueue(
	ctx context.Context,
) (fmq.MQDescriptor, error)

func (*CameraDeviceUserProxy) GetCaptureResultMetadataQueue

func (p *CameraDeviceUserProxy) GetCaptureResultMetadataQueue(
	ctx context.Context,
) (fmq.MQDescriptor, error)

func (*CameraDeviceUserProxy) IsSessionConfigurationSupported

func (p *CameraDeviceUserProxy) IsSessionConfigurationSupported(
	ctx context.Context,
	sessionConfiguration SessionConfiguration,
) (bool, error)

func (*CameraDeviceUserProxy) Prepare

func (p *CameraDeviceUserProxy) Prepare(
	ctx context.Context,
	streamId int32,
) error

func (*CameraDeviceUserProxy) SubmitRequestList

func (p *CameraDeviceUserProxy) SubmitRequestList(
	ctx context.Context,
	requestList []CaptureRequest,
	isRepeating bool,
) (SubmitInfo, error)

func (*CameraDeviceUserProxy) UpdateOutputConfiguration

func (p *CameraDeviceUserProxy) UpdateOutputConfiguration(
	ctx context.Context,
	streamId int32,
	outputConfiguration OutputConfiguration,
) error

func (*CameraDeviceUserProxy) WaitUntilIdle

func (p *CameraDeviceUserProxy) WaitUntilIdle(
	ctx context.Context,
) error

type CameraDeviceUserStub

type CameraDeviceUserStub struct {
	Impl      ICameraDeviceUser
	Transport binder.VersionAwareTransport
}

CameraDeviceUserStub dispatches incoming binder transactions to a typed ICameraDeviceUser implementation.

func (*CameraDeviceUserStub) Descriptor

func (s *CameraDeviceUserStub) Descriptor() string

func (*CameraDeviceUserStub) OnTransaction

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

type CameraMetadata

type CameraMetadata struct {
	Metadata []byte
}

func (*CameraMetadata) MarshalParcel

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

func (*CameraMetadata) UnmarshalParcel

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

type CaptureMetadataInfo

type CaptureMetadataInfo struct {
	Tag             int32
	FmqMetadataSize int64
	Metadata        CameraMetadata
}

func (*CaptureMetadataInfo) GetFmqMetadataSize

func (u *CaptureMetadataInfo) GetFmqMetadataSize() (int64, bool)

func (*CaptureMetadataInfo) GetMetadata

func (u *CaptureMetadataInfo) GetMetadata() (CameraMetadata, bool)

func (*CaptureMetadataInfo) MarshalParcel

func (u *CaptureMetadataInfo) MarshalParcel(
	p *parcel.Parcel,
) error

func (*CaptureMetadataInfo) SetFmqMetadataSize

func (u *CaptureMetadataInfo) SetFmqMetadataSize(
	v int64,
)

func (*CaptureMetadataInfo) SetMetadata

func (u *CaptureMetadataInfo) SetMetadata(
	v CameraMetadata,
)

func (*CaptureMetadataInfo) UnmarshalParcel

func (u *CaptureMetadataInfo) UnmarshalParcel(
	p *parcel.Parcel,
) error

type CaptureRequest

type CaptureRequest struct {
	PhysicalCameraSettings []PhysicalCameraSettings
	StreamAndWindowIds     []StreamAndWindowId
}

func (*CaptureRequest) MarshalParcel

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

func (*CaptureRequest) UnmarshalParcel

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

type CaptureResultExtras

type CaptureResultExtras struct {
	RequestId             int32
	BurstId               int32
	FrameNumber           int64
	PartialResultCount    int32
	ErrorStreamId         int32
	ErrorPhysicalCameraId string
}

func (*CaptureResultExtras) MarshalParcel

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

func (*CaptureResultExtras) UnmarshalParcel

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

type ErrorCode

type ErrorCode int32
const (
	ErrorCodeCameraInvalidError ErrorCode = -1
	ErrorCodeCameraDisconnected ErrorCode = 0
	ErrorCodeCameraDevice       ErrorCode = 1
	ErrorCodeCameraService      ErrorCode = 2
	ErrorCodeCameraRequest      ErrorCode = 3
	ErrorCodeCameraResult       ErrorCode = 4
	ErrorCodeCameraBuffer       ErrorCode = 5
	ErrorCodeCameraDisabled     ErrorCode = 6
	ErrorCodeCameraUnknownError ErrorCode = 7
)

type ICameraDeviceCallback

type ICameraDeviceCallback interface {
	AsBinder() binder.IBinder
	OnCaptureStarted(ctx context.Context, resultExtras CaptureResultExtras, timestamp int64) error
	OnDeviceError(ctx context.Context, errorCode ErrorCode, resultExtras CaptureResultExtras) error
	OnDeviceIdle(ctx context.Context) error
	OnPrepared(ctx context.Context, streamId int32) error
	OnRepeatingRequestError(ctx context.Context, lastFrameNumber int64, repeatingRequestId int32) error
	OnResultReceived(ctx context.Context, result CaptureMetadataInfo, resultExtras CaptureResultExtras, physicalCaptureResultInfos []PhysicalCaptureResultInfo) error
}

func NewCameraDeviceCallbackStub

func NewCameraDeviceCallbackStub(
	impl ICameraDeviceCallbackServer,
) ICameraDeviceCallback

NewCameraDeviceCallbackStub creates a server-side ICameraDeviceCallback wrapping the given server implementation. The returned value satisfies ICameraDeviceCallback 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 ICameraDeviceCallbackServer

type ICameraDeviceCallbackServer interface {
	OnCaptureStarted(ctx context.Context, resultExtras CaptureResultExtras, timestamp int64) error
	OnDeviceError(ctx context.Context, errorCode ErrorCode, resultExtras CaptureResultExtras) error
	OnDeviceIdle(ctx context.Context) error
	OnPrepared(ctx context.Context, streamId int32) error
	OnRepeatingRequestError(ctx context.Context, lastFrameNumber int64, repeatingRequestId int32) error
	OnResultReceived(ctx context.Context, result CaptureMetadataInfo, resultExtras CaptureResultExtras, physicalCaptureResultInfos []PhysicalCaptureResultInfo) error
}

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

type ICameraDeviceUser

type ICameraDeviceUser interface {
	AsBinder() binder.IBinder
	BeginConfigure(ctx context.Context) error
	CancelRepeatingRequest(ctx context.Context) (int64, error)
	CreateDefaultRequest(ctx context.Context, templateId TemplateId) (CameraMetadata, error)
	CreateStream(ctx context.Context, outputConfiguration OutputConfiguration) (int32, error)
	DeleteStream(ctx context.Context, streamId int32) error
	Disconnect(ctx context.Context) error
	EndConfigure(ctx context.Context, operatingMode StreamConfigurationMode, sessionParams CameraMetadata, startTimeNs int64) error
	Flush(ctx context.Context) (int64, error)
	GetCaptureRequestMetadataQueue(ctx context.Context) (fmq.MQDescriptor, error)
	GetCaptureResultMetadataQueue(ctx context.Context) (fmq.MQDescriptor, error)
	IsSessionConfigurationSupported(ctx context.Context, sessionConfiguration SessionConfiguration) (bool, error)
	Prepare(ctx context.Context, streamId int32) error
	SubmitRequestList(ctx context.Context, requestList []CaptureRequest, isRepeating bool) (SubmitInfo, error)
	UpdateOutputConfiguration(ctx context.Context, streamId int32, outputConfiguration OutputConfiguration) error
	WaitUntilIdle(ctx context.Context) error
}

func NewCameraDeviceUserStub

func NewCameraDeviceUserStub(
	impl ICameraDeviceUserServer,
) ICameraDeviceUser

NewCameraDeviceUserStub creates a server-side ICameraDeviceUser wrapping the given server implementation. The returned value satisfies ICameraDeviceUser 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 ICameraDeviceUserServer

type ICameraDeviceUserServer interface {
	BeginConfigure(ctx context.Context) error
	CancelRepeatingRequest(ctx context.Context) (int64, error)
	CreateDefaultRequest(ctx context.Context, templateId TemplateId) (CameraMetadata, error)
	CreateStream(ctx context.Context, outputConfiguration OutputConfiguration) (int32, error)
	DeleteStream(ctx context.Context, streamId int32) error
	Disconnect(ctx context.Context) error
	EndConfigure(ctx context.Context, operatingMode StreamConfigurationMode, sessionParams CameraMetadata, startTimeNs int64) error
	Flush(ctx context.Context) (int64, error)
	GetCaptureRequestMetadataQueue(ctx context.Context) (fmq.MQDescriptor, error)
	GetCaptureResultMetadataQueue(ctx context.Context) (fmq.MQDescriptor, error)
	IsSessionConfigurationSupported(ctx context.Context, sessionConfiguration SessionConfiguration) (bool, error)
	Prepare(ctx context.Context, streamId int32) error
	SubmitRequestList(ctx context.Context, requestList []CaptureRequest, isRepeating bool) (SubmitInfo, error)
	UpdateOutputConfiguration(ctx context.Context, streamId int32, outputConfiguration OutputConfiguration) error
	WaitUntilIdle(ctx context.Context) error
}

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

type OutputConfiguration

type OutputConfiguration struct {
	WindowHandles    []common.NativeHandle
	Rotation         OutputConfigurationRotation
	WindowGroupId    int32
	PhysicalCameraId string
	Width            int32
	Height           int32
	IsDeferred       bool
	Surfaces         []view.Surface
}

func (*OutputConfiguration) MarshalParcel

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

func (*OutputConfiguration) UnmarshalParcel

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

type OutputConfigurationRotation

type OutputConfigurationRotation int32
const (
	OutputConfigurationRotationR0   OutputConfigurationRotation = 0
	OutputConfigurationRotationR90  OutputConfigurationRotation = 1
	OutputConfigurationRotationR180 OutputConfigurationRotation = 2
	OutputConfigurationRotationR270 OutputConfigurationRotation = 3
)

type OutputConfigurationWindowGroupId

type OutputConfigurationWindowGroupId int32
const (
	OutputConfigurationWindowGroupIdNONE OutputConfigurationWindowGroupId = -1
)

type PhysicalCameraSettings

type PhysicalCameraSettings struct {
	Id       string
	Settings CaptureMetadataInfo
}

func (*PhysicalCameraSettings) MarshalParcel

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

func (*PhysicalCameraSettings) UnmarshalParcel

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

type PhysicalCaptureResultInfo

type PhysicalCaptureResultInfo struct {
	PhysicalCameraId       string
	PhysicalCameraMetadata CaptureMetadataInfo
}

func (*PhysicalCaptureResultInfo) MarshalParcel

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

func (*PhysicalCaptureResultInfo) UnmarshalParcel

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

type SessionConfiguration

type SessionConfiguration struct {
	OutputStreams []OutputConfiguration
	InputWidth    int32
	InputHeight   int32
	InputFormat   int32
	OperationMode StreamConfigurationMode
}

func (*SessionConfiguration) MarshalParcel

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

func (*SessionConfiguration) UnmarshalParcel

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

type StreamAndWindowId

type StreamAndWindowId struct {
	StreamId int32
	WindowId int32
}

func (*StreamAndWindowId) MarshalParcel

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

func (*StreamAndWindowId) UnmarshalParcel

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

type StreamConfigurationMode

type StreamConfigurationMode int32
const (
	StreamConfigurationModeNormalMode               StreamConfigurationMode = 0
	StreamConfigurationModeConstrainedHighSpeedMode StreamConfigurationMode = 1
	StreamConfigurationModeVendorMode0              StreamConfigurationMode = 32768
	StreamConfigurationModeVendorMode1              StreamConfigurationMode = 32769
	StreamConfigurationModeVendorMode2              StreamConfigurationMode = 32770
	StreamConfigurationModeVendorMode3              StreamConfigurationMode = 32771
	StreamConfigurationModeVendorMode4              StreamConfigurationMode = 32772
	StreamConfigurationModeVendorMode5              StreamConfigurationMode = 32773
	StreamConfigurationModeVendorMode6              StreamConfigurationMode = 32774
	StreamConfigurationModeVendorMode7              StreamConfigurationMode = 32775
)

type SubmitInfo

type SubmitInfo struct {
	RequestId       int32
	LastFrameNumber int64
}

func (*SubmitInfo) MarshalParcel

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

func (*SubmitInfo) UnmarshalParcel

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

type TemplateId

type TemplateId int32
const (
	TemplateIdPREVIEW        TemplateId = 1
	TemplateIdStillCapture   TemplateId = 2
	TemplateIdRECORD         TemplateId = 3
	TemplateIdVideoSnapshot  TemplateId = 4
	TemplateIdZeroShutterLag TemplateId = 5
	TemplateIdMANUAL         TemplateId = 6
)

Jump to

Keyboard shortcuts

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