diff options
Diffstat (limited to '3rdparty/dxsdk/Include/XAPOFX.h')
-rw-r--r-- | 3rdparty/dxsdk/Include/XAPOFX.h | 167 |
1 files changed, 0 insertions, 167 deletions
diff --git a/3rdparty/dxsdk/Include/XAPOFX.h b/3rdparty/dxsdk/Include/XAPOFX.h deleted file mode 100644 index a5dbeef4b56..00000000000 --- a/3rdparty/dxsdk/Include/XAPOFX.h +++ /dev/null @@ -1,167 +0,0 @@ -/*-========================================================================-_ - | - XAPOFX - | - | Copyright (c) Microsoft Corporation. All rights reserved. | - |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| - |PROJECT: XAPOFX MODEL: Unmanaged User-mode | - |VERSION: 1.3 EXCEPT: No Exceptions | - |CLASS: N / A MINREQ: WinXP, Xbox360 | - |BASE: N / A DIALECT: MSC++ 14.00 | - |>------------------------------------------------------------------------<| - | DUTY: Cross-platform Audio Processing Objects | - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ - NOTES: - 1. USE THE DEBUG DLL TO ENABLE PARAMETER VALIDATION VIA ASSERTS! - Here's how: - Copy XAPOFXDX_X.dll to where your application exists. - The debug DLL can be found under %WINDIR%\system32. - Rename XAPOFXDX_X.dll to XAPOFXX_X.dll to use the debug version. */ - -#pragma once -//--------------<D-E-F-I-N-I-T-I-O-N-S>-------------------------------------// -#include "comdecl.h" // for DEFINE_CLSID - -// FX class IDs -DEFINE_CLSID(FXEQ, A90BC001, E897, E897, 74, 39, 43, 55, 00, 00, 00, 00); -DEFINE_CLSID(FXMasteringLimiter, A90BC001, E897, E897, 74, 39, 43, 55, 00, 00, 00, 01); -DEFINE_CLSID(FXReverb, A90BC001, E897, E897, 74, 39, 43, 55, 00, 00, 00, 02); -DEFINE_CLSID(FXEcho, A90BC001, E897, E897, 74, 39, 43, 55, 00, 00, 00, 03); - - -#if !defined(GUID_DEFS_ONLY) // ignore rest if only GUID definitions requested - #if defined(_XBOX) // general windows and COM declarations - #include <xtl.h> - #include <xobjbase.h> - #else - #include <windows.h> - #include <objbase.h> - #endif - #include <float.h> // float bounds - - - // EQ parameter bounds (inclusive), used with XEQ: - #define FXEQ_MIN_FRAMERATE 22000 - #define FXEQ_MAX_FRAMERATE 48000 - - #define FXEQ_MIN_FREQUENCY_CENTER 20.0f - #define FXEQ_MAX_FREQUENCY_CENTER 20000.0f - #define FXEQ_DEFAULT_FREQUENCY_CENTER_0 100.0f // band 0 - #define FXEQ_DEFAULT_FREQUENCY_CENTER_1 800.0f // band 1 - #define FXEQ_DEFAULT_FREQUENCY_CENTER_2 2000.0f // band 2 - #define FXEQ_DEFAULT_FREQUENCY_CENTER_3 10000.0f // band 3 - - #define FXEQ_MIN_GAIN 0.126f // -18dB - #define FXEQ_MAX_GAIN 7.94f // +18dB - #define FXEQ_DEFAULT_GAIN 1.0f // 0dB change, all bands - - #define FXEQ_MIN_BANDWIDTH 0.1f - #define FXEQ_MAX_BANDWIDTH 2.0f - #define FXEQ_DEFAULT_BANDWIDTH 1.0f // all bands - - - // Mastering limiter parameter bounds (inclusive), used with XMasteringLimiter: - #define FXMASTERINGLIMITER_MIN_RELEASE 1 - #define FXMASTERINGLIMITER_MAX_RELEASE 20 - #define FXMASTERINGLIMITER_DEFAULT_RELEASE 6 - - #define FXMASTERINGLIMITER_MIN_LOUDNESS 1 - #define FXMASTERINGLIMITER_MAX_LOUDNESS 1800 - #define FXMASTERINGLIMITER_DEFAULT_LOUDNESS 1000 - - - // Reverb parameter bounds (inclusive), used with XReverb: - #define FXREVERB_MIN_DIFFUSION 0.0f - #define FXREVERB_MAX_DIFFUSION 1.0f - #define FXREVERB_DEFAULT_DIFFUSION 0.9f - - #define FXREVERB_MIN_ROOMSIZE 0.0001f - #define FXREVERB_MAX_ROOMSIZE 1.0f - #define FXREVERB_DEFAULT_ROOMSIZE 0.6f - - - // Echo parameter bounds (inclusive), used with XEcho: - #define FXECHO_MIN_WETDRYMIX 0.0f - #define FXECHO_MAX_WETDRYMIX 1.0f - #define FXECHO_DEFAULT_WETDRYMIX 0.5f - - #define FXECHO_MIN_FEEDBACK 0.0f - #define FXECHO_MAX_FEEDBACK 1.0f - #define FXECHO_DEFAULT_FEEDBACK 0.5f - - #define FXECHO_MIN_DELAY 1.0f - #define FXECHO_MAX_DELAY 2000.0f - #define FXECHO_DEFAULT_DELAY 500.0f - - -//--------------<D-A-T-A---T-Y-P-E-S>---------------------------------------// - #pragma pack(push, 1) // set packing alignment to ensure consistency across arbitrary build environments - - - // EQ parameters (4 bands), used with IXAPOParameters::SetParameters: - // The EQ supports only FLOAT32 audio foramts. - // The framerate must be within [22000, 48000] Hz. - typedef struct FXEQ_PARAMETERS { - float FrequencyCenter0; // center frequency in Hz, band 0 - float Gain0; // boost/cut - float Bandwidth0; // bandwidth, region of EQ is center frequency +/- bandwidth/2 - float FrequencyCenter1; // band 1 - float Gain1; - float Bandwidth1; - float FrequencyCenter2; // band 2 - float Gain2; - float Bandwidth2; - float FrequencyCenter3; // band 3 - float Gain3; - float Bandwidth3; - } FXEQ_PARAMETERS; - - - // Mastering limiter parameters, used with IXAPOParameters::SetParameters: - // The mastering limiter supports only FLOAT32 audio formats. - typedef struct FXMASTERINGLIMITER_PARAMETERS { - UINT32 Release; // release time (tuning factor with no specific units) - UINT32 Loudness; // loudness target (threshold) - } FXMASTERINGLIMITER_PARAMETERS; - - - // Reverb parameters, used with IXAPOParameters::SetParameters: - // The reverb supports only FLOAT32 audio formats with the following - // channel configurations: - // Input: Mono Output: Mono - // Input: Stereo Output: Stereo - typedef struct FXREVERB_PARAMETERS { - float Diffusion; // diffusion - float RoomSize; // room size - } FXREVERB_PARAMETERS; - - - // Echo parameters, used with IXAPOParameters::SetParameters: - // The echo supports only FLOAT32 audio formats. - typedef struct FXECHO_PARAMETERS { - float WetDryMix; // ratio of wet (processed) signal to dry (original) signal - float Feedback; // amount of output fed back into input - float Delay; // delay (all channels) in milliseconds - } FXECHO_PARAMETERS; - - -//--------------<M-A-C-R-O-S>-----------------------------------------------// - // function storage-class attribute and calltype - #if defined(_XBOX) || !defined(FXDLL) - #define FX_API_(type) EXTERN_C type STDAPIVCALLTYPE - #else - #if defined(FXEXPORT) - #define FX_API_(type) EXTERN_C __declspec(dllexport) type STDAPIVCALLTYPE - #else - #define FX_API_(type) EXTERN_C __declspec(dllimport) type STDAPIVCALLTYPE - #endif - #endif - #define FX_IMP_(type) type STDMETHODVCALLTYPE - - -//--------------<F-U-N-C-T-I-O-N-S>-----------------------------------------// - // creates instance of requested XAPO, use Release to free instance - FX_API_(HRESULT) CreateFX (REFCLSID clsid, __deref_out IUnknown** pEffect); - - - #pragma pack(pop) // revert packing alignment -#endif // !defined(GUID_DEFS_ONLY) -//---------------------------------<-EOF->----------------------------------// |