1 USING: alien.c-types alien.syntax classes.struct windows.com
2 windows.com.syntax windows.directx.audiodefs windows.kernel32
4 IN: windows.directx.xapo
6 CONSTANT: XAPO_MIN_CHANNELS 1
7 CONSTANT: XAPO_MAX_CHANNELS 64
9 CONSTANT: XAPO_MIN_FRAMERATE 1000
10 CONSTANT: XAPO_MAX_FRAMERATE 200000
12 CONSTANT: XAPO_REGISTRATION_STRING_LENGTH 256
14 CONSTANT: XAPO_FLAG_CHANNELS_MUST_MATCH HEX: 00000001
16 CONSTANT: XAPO_FLAG_FRAMERATE_MUST_MATCH HEX: 00000002
18 CONSTANT: XAPO_FLAG_BITSPERSAMPLE_MUST_MATCH HEX: 00000004
20 CONSTANT: XAPO_FLAG_BUFFERCOUNT_MUST_MATCH HEX: 00000008
22 CONSTANT: XAPO_FLAG_INPLACE_REQUIRED HEX: 00000020
24 CONSTANT: XAPO_FLAG_INPLACE_SUPPORTED HEX: 00000010
26 STRUCT: XAPO_REGISTRATION_PROPERTIES
28 { FriendlyName WCHAR[256] }
29 { CopyrightInfo WCHAR[256] }
30 { MajorVersion UINT32 }
31 { MinorVersion UINT32 }
33 { MinInputBufferCount UINT32 }
34 { MaxInputBufferCount UINT32 }
35 { MinOutputBufferCount UINT32 }
36 { MaxOutputBufferCount UINT32 } ;
38 STRUCT: XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS
39 { pFormat WAVEFORMATEX* }
40 { MaxFrameCount UINT32 } ;
45 TYPEDEF: int XAPO_BUFFER_FLAGS
47 STRUCT: XAPO_PROCESS_BUFFER_PARAMETERS
49 { BufferFlags XAPO_BUFFER_FLAGS }
50 { ValidFrameCount UINT32 } ;
52 COM-INTERFACE: IXAPO IUnknown {A90BC001-E897-E897-55E4-9E4700000000}
53 HRESULT GetRegistrationProperties ( XAPO_REGISTRATION_PROPERTIES** ppRegistrationProperties )
54 HRESULT IsInputFormatSupported ( WAVEFORMATEX* pOutputFormat, WAVEFORMATEX* pRequestedInputFormat, WAVEFORMATEX** ppSupportedInputFormat )
55 HRESULT IsOutputFormatSupported ( WAVEFORMATEX* pInputFormat, WAVEFORMATEX* pRequestedOutputFormat, WAVEFORMATEX** ppSupportedOutputFormat )
56 HRESULT Initialize ( void* pData, UINT32 DataByteSize )
58 HRESULT LockForProcess ( UINT32 InputLockedParameterCount, XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pInputLockedParameters, UINT32 OutputLockedParameterCount, XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pOutputLockedParameters )
59 void UnlockForProcess ( )
60 void Process ( UINT32 InputProcessParameterCount, XAPO_PROCESS_BUFFER_PARAMETERS* pInputProcessParameters, UINT32 OutputProcessParameterCount, XAPO_PROCESS_BUFFER_PARAMETERS* pOutputProcessParameters, BOOL IsEnabled )
61 UINT32 CalcInputFrames ( UINT32 OutputFrameCount )
62 UINT32 CalcOutputFrames ( UINT32 InputFrameCount ) ;
64 COM-INTERFACE: IXAPOParameters IUnknown {A90BC001-E897-E897-55E4-9E4700000001}
65 void SetParameters ( void* pParameters, UINT32 ParameterByteSize )
66 void GetParameters ( void* pParameters, UINT32 ParameterByteSize ) ;