dsound

package
v0.0.0-...-e53e59c Latest Latest
Warning

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

Go to latest
Published: Nov 1, 2014 License: MIT Imports: 3 Imported by: 1

Documentation

Index

Constants

View Source
const (
	DS_OK                    = DSRESULT(0x00000000)
	DSERR_ACCESSDENIED       = DSRESULT(0x80070005)
	DSERR_ALLOCATED          = DSRESULT(0x8878000A)
	DSERR_ALREADYINITIALIZED = DSRESULT(0x88780082)
	DSERR_BADFORMAT          = DSRESULT(0x88780064)
	DSERR_BUFFERLOST         = DSRESULT(0x88780096)
	DSERR_CONTROLUNAVAIL     = DSRESULT(0x8878001E)
	DSERR_GENERIC            = DSRESULT(0x80004005)
	DSERR_INVALIDCALL        = DSRESULT(0x88780032)
	DSERR_INVALIDPARAM       = DSRESULT(0x80070057)
	DSERR_NOAGGREGATION      = DSRESULT(0x80040110)
	DSERR_NODRIVER           = DSRESULT(0x88780078)
	DSERR_NOINTERFACE        = DSRESULT(0x80000004)
	DSERR_OTHERAPPHASPRIO    = DSRESULT(0x887800A0)
	DSERR_OUTOFMEMORY        = DSRESULT(0x8007000E)
	DSERR_PRIOLEVELNEEDED    = DSRESULT(0x88780046)
	DSERR_UNINITIALIZED      = DSRESULT(0x887800AA)
	DSERR_UNSUPPORTED        = DSRESULT(0x80004001)
)
View Source
const (
	DSSCL_NORMAL       = SCL(0x00000001)
	DSSCL_PRIORITY     = SCL(0x00000002)
	DSSCL_EXCLUSIVE    = SCL(0x00000003)
	DSSCL_WRITEPRIMARY = SCL(0x00000004)
)
View Source
const (
	DSBCAPS_PRIMARYBUFFER       = BufferCapsFlag(0x00000001)
	DSBCAPS_STATIC              = BufferCapsFlag(0x00000002)
	DSBCAPS_LOCHARDWARE         = BufferCapsFlag(0x00000004)
	DSBCAPS_LOCSOFTWARE         = BufferCapsFlag(0x00000008)
	DSBCAPS_CTRL3D              = BufferCapsFlag(0x00000010)
	DSBCAPS_CTRLFREQUENCY       = BufferCapsFlag(0x00000020)
	DSBCAPS_CTRLPAN             = BufferCapsFlag(0x00000040)
	DSBCAPS_CTRLVOLUME          = BufferCapsFlag(0x00000080)
	DSBCAPS_CTRLPOSITIONNOTIFY  = BufferCapsFlag(0x00000100)
	DSBCAPS_CTRLFX              = BufferCapsFlag(0x00000200)
	DSBCAPS_STICKYFOCUS         = BufferCapsFlag(0x00004000)
	DSBCAPS_GLOBALFOCUS         = BufferCapsFlag(0x00008000)
	DSBCAPS_GETCURRENTPOSITION2 = BufferCapsFlag(0x00010000)
	DSBCAPS_MUTE3DATMAXDISTANCE = BufferCapsFlag(0x00020000)
	DSBCAPS_LOCDEFER            = BufferCapsFlag(0x00040000)
	DSBCAPS_TRUEPLAYPOSITION    = BufferCapsFlag(0x00080000)
)
View Source
const (
	DSBSTATUS_PLAYING     = BufferStatus(0x00000001)
	DSBSTATUS_BUFFERLOST  = BufferStatus(0x00000002)
	DSBSTATUS_LOOPING     = BufferStatus(0x00000004)
	DSBSTATUS_LOCHARDWARE = BufferStatus(0x00000008)
	DSBSTATUS_LOCSOFTWARE = BufferStatus(0x00000010)
	DSBSTATUS_TERMINATED  = BufferStatus(0x00000020)
)
View Source
const (
	DSBLOCK_FROMWRITECURSOR = BufferLockFlag(0x00000001)
	DSBLOCK_ENTIREBUFFER    = BufferLockFlag(0x00000002)
)
View Source
const (
	DSBPLAY_LOOPING              = BufferPlayFlag(0x000000001)
	DSBPLAY_LOCHARDWARE          = BufferPlayFlag(0x000000002)
	DSBPLAY_LOCSOFTWARE          = BufferPlayFlag(0x000000004)
	DSBPLAY_TERMINATEBY_TIME     = BufferPlayFlag(0x000000008)
	DSBPLAY_TERMINATEBY_DISTANCE = BufferPlayFlag(0x000000010)
	DSBPLAY_TERMINATEBY_PRIORITY = BufferPlayFlag(0x000000020)
)
View Source
const (
	DSBNOTIFICATIONS_MAX = 0x00100000
	DSBPN_OFFSETSTOP     = 0xFFFFFFFF
)
View Source
const (
	S_OK           = HResult(0x00000000)
	E_NOTIMPL      = HResult(0x80004001)
	E_NOINTERFACE  = HResult(0x80004002)
	E_POINTER      = HResult(0x80004003)
	E_ABORT        = HResult(0x80004004)
	E_FAIL         = HResult(0x80004005)
	E_UNEXPECTED   = HResult(0x8000FFFF)
	E_ACCESSDENIED = HResult(0x80070005)
	E_HANDLE       = HResult(0x80070006)
	E_OUTOFMEMORY  = HResult(0x8007000E)
	E_INVALIDARG   = HResult(0x80070057)
)
View Source
const (
	WAVE_FORMAT_UNKNOWN                 = WaveFormatTag(0x0000) // Microsoft Corporation
	WAVE_FORMAT_PCM                     = WaveFormatTag(0x0001) // Microsoft PCM format
	WAVE_FORMAT_MS_ADPCM                = WaveFormatTag(0x0002) // Microsoft ADPCM
	WAVE_FORMAT_IEEE_FLOAT              = WaveFormatTag(0x0003) // Micrososft 32 bit float format
	WAVE_FORMAT_VSELP                   = WaveFormatTag(0x0004) // Compaq Computer Corporation
	WAVE_FORMAT_IBM_CVSD                = WaveFormatTag(0x0005) // IBM Corporation
	WAVE_FORMAT_ALAW                    = WaveFormatTag(0x0006) // Microsoft Corporation
	WAVE_FORMAT_MULAW                   = WaveFormatTag(0x0007) // Microsoft Corporation
	WAVE_FORMAT_OKI_ADPCM               = WaveFormatTag(0x0010) // OKI
	WAVE_FORMAT_IMA_ADPCM               = WaveFormatTag(0x0011) // Intel Corporation
	WAVE_FORMAT_MEDIASPACE_ADPCM        = WaveFormatTag(0x0012) // Videologic
	WAVE_FORMAT_SIERRA_ADPCM            = WaveFormatTag(0x0013) // Sierra Semiconductor Corp
	WAVE_FORMAT_G723_ADPCM              = WaveFormatTag(0x0014) // Antex Electronics Corporation
	WAVE_FORMAT_DIGISTD                 = WaveFormatTag(0x0015) // DSP Solutions, Inc.
	WAVE_FORMAT_DIGIFIX                 = WaveFormatTag(0x0016) // DSP Solutions, Inc.
	WAVE_FORMAT_DIALOGIC_OKI_ADPCM      = WaveFormatTag(0x0017) // Dialogic Corporation
	WAVE_FORMAT_MEDIAVISION_ADPCM       = WaveFormatTag(0x0018) // Media Vision, Inc.
	WAVE_FORMAT_CU_CODEC                = WaveFormatTag(0x0019) // Hewlett-Packard Company
	WAVE_FORMAT_YAMAHA_ADPCM            = WaveFormatTag(0x0020) // Yamaha Corporation of America
	WAVE_FORMAT_SONARC                  = WaveFormatTag(0x0021) // Speech Compression
	WAVE_FORMAT_DSPGROUP_TRUESPEECH     = WaveFormatTag(0x0022) // DSP Group, Inc
	WAVE_FORMAT_ECHOSC1                 = WaveFormatTag(0x0023) // Echo Speech Corporation
	WAVE_FORMAT_AUDIOFILE_AF36          = WaveFormatTag(0x0024) // Audiofile, Inc.
	WAVE_FORMAT_APTX                    = WaveFormatTag(0x0025) // Audio Processing Technology
	WAVE_FORMAT_AUDIOFILE_AF10          = WaveFormatTag(0x0026) // Audiofile, Inc.
	WAVE_FORMAT_PROSODY_1612            = WaveFormatTag(0x0027) // Aculab plc
	WAVE_FORMAT_LRC                     = WaveFormatTag(0x0028) // Merging Technologies S.A.
	WAVE_FORMAT_DOLBY_AC2               = WaveFormatTag(0x0030) // Dolby Laboratories
	WAVE_FORMAT_GSM610                  = WaveFormatTag(0x0031) // Microsoft Corporation
	WAVE_FORMAT_MSNAUDIO                = WaveFormatTag(0x0032) // Microsoft Corporation
	WAVE_FORMAT_ANTEX_ADPCME            = WaveFormatTag(0x0033) // Antex Electronics Corporation
	WAVE_FORMAT_CONTROL_RES_VQLPC       = WaveFormatTag(0x0034) // Control Resources Limited
	WAVE_FORMAT_DIGIREAL                = WaveFormatTag(0x0035) // DSP Solutions, Inc.
	WAVE_FORMAT_DIGIADPCM               = WaveFormatTag(0x0036) // DSP Solutions, Inc.
	WAVE_FORMAT_CONTROL_RES_CR10        = WaveFormatTag(0x0037) // Control Resources Limited
	WAVE_FORMAT_NMS_VBXADPCM            = WaveFormatTag(0x0038) // Natural MicroSystems
	WAVE_FORMAT_ROLAND_RDAC             = WaveFormatTag(0x0039) // Roland
	WAVE_FORMAT_ECHOSC3                 = WaveFormatTag(0x003A) // Echo Speech Corporation
	WAVE_FORMAT_ROCKWELL_ADPCM          = WaveFormatTag(0x003B) // Rockwell International
	WAVE_FORMAT_ROCKWELL_DIGITALK       = WaveFormatTag(0x003C) // Rockwell International
	WAVE_FORMAT_XEBEC                   = WaveFormatTag(0x003D) // Xebec Multimedia Solutions Limited
	WAVE_FORMAT_G721_ADPCM              = WaveFormatTag(0x0040) // Antex Electronics Corporation
	WAVE_FORMAT_G728_CELP               = WaveFormatTag(0x0041) // Antex Electronics Corporation
	WAVE_FORMAT_MSG723                  = WaveFormatTag(0x0042) // Microsoft Corporation
	WAVE_FORMAT_MPEG                    = WaveFormatTag(0x0050) // Microsoft Corporation
	WAVE_FORMAT_RT24                    = WaveFormatTag(0x0052) // InSoft Inc.
	WAVE_FORMAT_PAC                     = WaveFormatTag(0x0053) // InSoft Inc.
	WAVE_FORMAT_MPEGLAYER3              = WaveFormatTag(0x0055) // MPEG 3 Layer 1
	WAVE_FORMAT_LUCENT_G723             = WaveFormatTag(0x0059) // Lucent Technologies
	WAVE_FORMAT_CIRRUS                  = WaveFormatTag(0x0060) // Cirrus Logic
	WAVE_FORMAT_ESPCM                   = WaveFormatTag(0x0061) // ESS Technology
	WAVE_FORMAT_VOXWARE                 = WaveFormatTag(0x0062) // Voxware Inc
	WAVE_FORMAT_CANOPUS_ATRAC           = WaveFormatTag(0x0063) // Canopus, Co., Ltd.
	WAVE_FORMAT_G726_ADPCM              = WaveFormatTag(0x0064) // APICOM
	WAVE_FORMAT_G722_ADPCM              = WaveFormatTag(0x0065) // APICOM
	WAVE_FORMAT_DSAT                    = WaveFormatTag(0x0066) // Microsoft Corporation
	WAVE_FORMAT_DSAT_DISPLAY            = WaveFormatTag(0x0067) // Microsoft Corporation
	WAVE_FORMAT_VOXWARE_BYTE_ALIGNED    = WaveFormatTag(0x0069) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_AC8             = WaveFormatTag(0x0070) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_AC10            = WaveFormatTag(0x0071) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_AC16            = WaveFormatTag(0x0072) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_AC20            = WaveFormatTag(0x0073) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_RT24            = WaveFormatTag(0x0074) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_RT29            = WaveFormatTag(0x0075) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_RT29HW          = WaveFormatTag(0x0076) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_VR12            = WaveFormatTag(0x0077) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_VR18            = WaveFormatTag(0x0078) // Voxware Inc.
	WAVE_FORMAT_VOXWARE_TQ40            = WaveFormatTag(0x0079) // Voxware Inc.
	WAVE_FORMAT_SOFTSOUND               = WaveFormatTag(0x0080) // Softsound, Ltd.
	WAVE_FORMAT_VOXARE_TQ60             = WaveFormatTag(0x0081) // Voxware Inc.
	WAVE_FORMAT_MSRT24                  = WaveFormatTag(0x0082) // Microsoft Corporation
	WAVE_FORMAT_G729A                   = WaveFormatTag(0x0083) // AT&T Laboratories
	WAVE_FORMAT_MVI_MV12                = WaveFormatTag(0x0084) // Motion Pixels
	WAVE_FORMAT_DF_G726                 = WaveFormatTag(0x0085) // DataFusion Systems (Pty) (Ltd)
	WAVE_FORMAT_DF_GSM610               = WaveFormatTag(0x0086) // DataFusion Systems (Pty) (Ltd)
	WAVE_FORMAT_ONLIVE                  = WaveFormatTag(0x0089) // OnLive! Technologies, Inc.
	WAVE_FORMAT_SBC24                   = WaveFormatTag(0x0091) // Siemens Business Communications Systems
	WAVE_FORMAT_DOLBY_AC3_SPDIF         = WaveFormatTag(0x0092) // Sonic Foundry
	WAVE_FORMAT_ZYXEL_ADPCM             = WaveFormatTag(0x0097) // ZyXEL Communications, Inc.
	WAVE_FORMAT_PHILIPS_LPCBB           = WaveFormatTag(0x0098) // Philips Speech Processing
	WAVE_FORMAT_PACKED                  = WaveFormatTag(0x0099) // Studer Professional Audio AG
	WAVE_FORMAT_RHETOREX_ADPCM          = WaveFormatTag(0x0100) // Rhetorex, Inc.
	IBM_FORMAT_MULAW                    = WaveFormatTag(0x0101) // IBM mu-law format
	IBM_FORMAT_ALAW                     = WaveFormatTag(0x0102) // IBM a-law format
	IBM_FORMAT_ADPCM                    = WaveFormatTag(0x0103) // IBM AVC Adaptive Differential PCM format
	WAVE_FORMAT_VIVO_G723               = WaveFormatTag(0x0111) // Vivo Software
	WAVE_FORMAT_VIVO_SIREN              = WaveFormatTag(0x0112) // Vivo Software
	WAVE_FORMAT_DIGITAL_G723            = WaveFormatTag(0x0123) // Digital Equipment Corporation
	WAVE_FORMAT_CREATIVE_ADPCM          = WaveFormatTag(0x0200) // Creative Labs, Inc
	WAVE_FORMAT_CREATIVE_FASTSPEECH8    = WaveFormatTag(0x0202) // Creative Labs, Inc
	WAVE_FORMAT_CREATIVE_FASTSPEECH10   = WaveFormatTag(0x0203) // Creative Labs, Inc
	WAVE_FORMAT_QUARTERDECK             = WaveFormatTag(0x0220) // Quarterdeck Corporation
	WAVE_FORMAT_FM_TOWNS_SND            = WaveFormatTag(0x0300) // Fujitsu Corporation
	WAVE_FORMAT_BZV_DIGITAL             = WaveFormatTag(0x0400) // Brooktree Corporation
	WAVE_FORMAT_VME_VMPCM               = WaveFormatTag(0x0680) // AT&T Labs, Inc.
	WAVE_FORMAT_OLIGSM                  = WaveFormatTag(0x1000) // Ing C. Olivetti & C., S.p.A.
	WAVE_FORMAT_OLIADPCM                = WaveFormatTag(0x1001) // Ing C. Olivetti & C., S.p.A.
	WAVE_FORMAT_OLICELP                 = WaveFormatTag(0x1002) // Ing C. Olivetti & C., S.p.A.
	WAVE_FORMAT_OLISBC                  = WaveFormatTag(0x1003) // Ing C. Olivetti & C., S.p.A.
	WAVE_FORMAT_OLIOPR                  = WaveFormatTag(0x1004) // Ing C. Olivetti & C., S.p.A.
	WAVE_FORMAT_LH_CODEC                = WaveFormatTag(0x1100) // Lernout & Hauspie
	WAVE_FORMAT_NORRIS                  = WaveFormatTag(0x1400) // Norris Communications, Inc.
	WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS = WaveFormatTag(0x1500) // AT&T Labs, Inc.
	WAVE_FORMAT_DVM                     = WaveFormatTag(0x2000) // FAST Multimedia AG
	WAVE_FORMAT_INTERWAV_VSC112         = WaveFormatTag(0x7150) // ?????
	WAVE_FORMAT_EXTENSIBLE              = WaveFormatTag(0xFFFE) //
)
View Source
const (
	SPEAKER_FRONT_LEFT            = WFESpeaker(0x00000001)
	SPEAKER_FRONT_RIGHT           = WFESpeaker(0x00000002)
	SPEAKER_FRONT_CENTER          = WFESpeaker(0x00000004)
	SPEAKER_LOW_FREQUENCY         = WFESpeaker(0x00000008)
	SPEAKER_BACK_LEFT             = WFESpeaker(0x00000010)
	SPEAKER_BACK_RIGHT            = WFESpeaker(0x00000020)
	SPEAKER_FRONT_LEFT_OF_CENTER  = WFESpeaker(0x00000040)
	SPEAKER_FRONT_RIGHT_OF_CENTER = WFESpeaker(0x00000080)
	SPEAKER_BACK_CENTER           = WFESpeaker(0x00000100)
	SPEAKER_SIDE_LEFT             = WFESpeaker(0x00000200)
	SPEAKER_SIDE_RIGHT            = WFESpeaker(0x00000400)
	SPEAKER_TOP_CENTER            = WFESpeaker(0x00000800)
	SPEAKER_TOP_FRONT_LEFT        = WFESpeaker(0x00001000)
	SPEAKER_TOP_FRONT_CENTER      = WFESpeaker(0x00002000)
	SPEAKER_TOP_FRONT_RIGHT       = WFESpeaker(0x00004000)
	SPEAKER_TOP_BACK_LEFT         = WFESpeaker(0x00008000)
	SPEAKER_TOP_BACK_CENTER       = WFESpeaker(0x00010000)
	SPEAKER_TOP_BACK_RIGHT        = WFESpeaker(0x00020000)
)

Variables

This section is empty.

Functions

func DirectSoundCaptureEnumerate

func DirectSoundCaptureEnumerate(dsEnumCallback func(guid *GUID, description string, module string) bool) error

func DirectSoundEnumerate

func DirectSoundEnumerate(dsEnumCallback func(guid *GUID, description string, module string) bool) error

Types

type BufferCaps

type BufferCaps struct {
	Flags              uint32
	BufferBytes        uint32
	UnlockTransferRate uint32
	PlayCpuOverhead    uint32
	// contains filtered or unexported fields
}

type BufferCapsFlag

type BufferCapsFlag uint32

type BufferDesc

type BufferDesc struct {
	Flags           BufferCapsFlag
	BufferBytes     uint32
	Reserved        uint32
	Format          *WaveFormatEx
	GUID3DAlgorithm GUID
	// contains filtered or unexported fields
}

type BufferLockFlag

type BufferLockFlag uint32

type BufferPlayFlag

type BufferPlayFlag uint32

type BufferStatus

type BufferStatus uint32

type Caps

type Caps struct {
	Flags                        uint32
	MinSecondarySampleRate       uint32
	MaxSecondarySampleRate       uint32
	PrimaryBuffers               uint32
	MaxHwMixingAllBuffers        uint32
	MaxHwMixingStaticBuffers     uint32
	MaxHwMixingStreamingBuffers  uint32
	FreeHwMixingAllBuffers       uint32
	FreeHwMixingStaticBuffers    uint32
	FreeHwMixingStreamingBuffers uint32
	MaxHw3DAllBuffers            uint32
	MaxHw3DStaticBuffers         uint32
	MaxHw3DStreamingBuffers      uint32
	FreeHw3DAllBuffers           uint32
	FreeHw3DStaticBuffers        uint32
	FreeHw3DStreamingBuffers     uint32
	TotalHwMemBytes              uint32
	FreeHwMemBytes               uint32
	MaxContigFreeHwMemBytes      uint32
	UnlockTransferRateHwBuffers  uint32
	PlayCpuOverheadSwBuffers     uint32
	Reserved1                    uint32
	Reserved2                    uint32
	// contains filtered or unexported fields
}

type DSBPOSITIONNOTIFY

type DSBPOSITIONNOTIFY struct {
	Offset      uint32
	EventNotify syscall.Handle
}

type DSRESULT

type DSRESULT uintptr

func (DSRESULT) Error

func (r DSRESULT) Error() string

type GUID

type GUID struct {
	Data1 uint32
	Data2 uint16
	Data3 uint16
	Data4 [8]byte
}

type HResult

type HResult uintptr

func (HResult) Error

func (hr HResult) Error() string

type IDirectSound

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

func DirectSoundCreate

func DirectSoundCreate(guid *GUID) (*IDirectSound, error)

func (*IDirectSound) AddRef

func (ds *IDirectSound) AddRef() uint32

func (*IDirectSound) CreateSoundBuffer

func (ds *IDirectSound) CreateSoundBuffer(bufferDesc *BufferDesc) (*IDirectSoundBuffer, error)

func (*IDirectSound) GetCaps

func (ds *IDirectSound) GetCaps() (*Caps, error)

func (*IDirectSound) QueryInterface

func (ds *IDirectSound) QueryInterface(iid *GUID) (*IUnknown, error)

func (*IDirectSound) Release

func (ds *IDirectSound) Release() uint32

func (*IDirectSound) SetCooperativeLevel

func (ds *IDirectSound) SetCooperativeLevel(window syscall.Handle, level SCL) error

type IDirectSoundBuffer

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

func (*IDirectSoundBuffer) AddRef

func (dsb *IDirectSoundBuffer) AddRef() uint32

func (*IDirectSoundBuffer) GetCaps

func (dsb *IDirectSoundBuffer) GetCaps() (*BufferCaps, error)

func (*IDirectSoundBuffer) GetCurrentPosition

func (dsb *IDirectSoundBuffer) GetCurrentPosition() (currentPlayCursor, currentWriteCursor uint32, err error)

func (*IDirectSoundBuffer) GetFormatBytes

func (dsb *IDirectSoundBuffer) GetFormatBytes() ([]byte, error)

func (*IDirectSoundBuffer) GetFormatWaveFormatEx

func (dsb *IDirectSoundBuffer) GetFormatWaveFormatEx() (*WaveFormatEx, error)

func (*IDirectSoundBuffer) GetFormatWaveFormatExtensible

func (dsb *IDirectSoundBuffer) GetFormatWaveFormatExtensible() (*WaveFormatExtensible, error)

func (*IDirectSoundBuffer) GetFrequency

func (dsb *IDirectSoundBuffer) GetFrequency() (uint32, error)

func (*IDirectSoundBuffer) GetPan

func (dsb *IDirectSoundBuffer) GetPan() (int32, error)

func (*IDirectSoundBuffer) GetStatus

func (dsb *IDirectSoundBuffer) GetStatus() (BufferStatus, error)

func (*IDirectSoundBuffer) GetVolume

func (dsb *IDirectSoundBuffer) GetVolume() (int32, error)

func (*IDirectSoundBuffer) Lock

func (dsb *IDirectSoundBuffer) Lock(offset uint32, bytes uint32, flags BufferLockFlag) (ptr1 uintptr, bytes1 uint32, ptr2 uintptr, bytes2 uint32, err error)

func (*IDirectSoundBuffer) LockBytes

func (dsb *IDirectSoundBuffer) LockBytes(offset uint32, bytes uint32, flags BufferLockFlag) ([]byte, []byte, error)

func (*IDirectSoundBuffer) LockInt16s

func (dsb *IDirectSoundBuffer) LockInt16s(offset uint32, bytes uint32, flags BufferLockFlag) ([]int16, []int16, error)

func (*IDirectSoundBuffer) Play

func (dsb *IDirectSoundBuffer) Play(priority uint32, flags BufferPlayFlag) error

func (*IDirectSoundBuffer) QueryInterface

func (dsb *IDirectSoundBuffer) QueryInterface(iid *GUID) (*IUnknown, error)

func (*IDirectSoundBuffer) QueryInterfaceIDirectSoundNotify

func (dsb *IDirectSoundBuffer) QueryInterfaceIDirectSoundNotify() (*IDirectSoundNotify, error)

func (*IDirectSoundBuffer) Release

func (dsb *IDirectSoundBuffer) Release() uint32

func (*IDirectSoundBuffer) Restore

func (dsb *IDirectSoundBuffer) Restore() error

func (*IDirectSoundBuffer) SetCurrentPosition

func (dsb *IDirectSoundBuffer) SetCurrentPosition(newPosition uint32) error

func (*IDirectSoundBuffer) SetFormatBytes

func (dsb *IDirectSoundBuffer) SetFormatBytes(bytes []byte) error

func (*IDirectSoundBuffer) SetFormatWaveFormatEx

func (dsb *IDirectSoundBuffer) SetFormatWaveFormatEx(wfex *WaveFormatEx) error

func (*IDirectSoundBuffer) SetFormatWaveFormatExtensible

func (dsb *IDirectSoundBuffer) SetFormatWaveFormatExtensible(wfext *WaveFormatExtensible) error

func (*IDirectSoundBuffer) SetFrequency

func (dsb *IDirectSoundBuffer) SetFrequency(freq uint32) error

func (*IDirectSoundBuffer) SetPan

func (dsb *IDirectSoundBuffer) SetPan(pan int32) error

func (*IDirectSoundBuffer) SetVolume

func (dsb *IDirectSoundBuffer) SetVolume(volume int32) error

func (*IDirectSoundBuffer) Stop

func (dsb *IDirectSoundBuffer) Stop() error

func (*IDirectSoundBuffer) Unlock

func (dsb *IDirectSoundBuffer) Unlock(ptr1 uintptr, bytes1 uint32, ptr2 uintptr, bytes2 uint32) error

func (*IDirectSoundBuffer) UnlockBytes

func (dsb *IDirectSoundBuffer) UnlockBytes(buf1 []byte, buf2 []byte) error

func (*IDirectSoundBuffer) UnlockInt16s

func (dsb *IDirectSoundBuffer) UnlockInt16s(buf1 []int16, buf2 []int16) error

type IDirectSoundNotify

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

func (*IDirectSoundNotify) AddRef

func (dsn *IDirectSoundNotify) AddRef() uint32

func (*IDirectSoundNotify) QueryInterface

func (dsn *IDirectSoundNotify) QueryInterface(iid *GUID) (*IUnknown, error)

func (*IDirectSoundNotify) Release

func (dsn *IDirectSoundNotify) Release() uint32

func (*IDirectSoundNotify) SetNotificationPositions

func (dsn *IDirectSoundNotify) SetNotificationPositions(positionNotifies []DSBPOSITIONNOTIFY) error

type IUnknown

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

func (*IUnknown) AddRef

func (unk *IUnknown) AddRef() uint32

func (*IUnknown) QueryInterface

func (unk *IUnknown) QueryInterface(iid *GUID) (*IUnknown, error)

func (*IUnknown) Release

func (unk *IUnknown) Release() uint32

type SCL

type SCL uint32

type WFESpeaker

type WFESpeaker uint32

type WaveFormatEx

type WaveFormatEx struct {
	FormatTag      WaveFormatTag
	Channels       uint16
	SamplesPerSec  uint32
	AvgBytesPerSec uint32
	BlockAlign     uint16
	BitsPerSample  uint16
	ExtSize        uint16
}

type WaveFormatExtensible

type WaveFormatExtensible struct {
	Format      WaveFormatEx
	Samples     uint16 // union { ValidBitsPerSample or SamplesPerBlock or Reserved }
	ChannelMask WFESpeaker
	SubFormat   GUID
}

type WaveFormatTag

type WaveFormatTag uint16

Jump to

Keyboard shortcuts

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