169 lines
3.7 KiB
C
Executable File
169 lines
3.7 KiB
C
Executable File
/* Copyright (c) 2006 NVIDIA Corporation. All rights reserved.
|
|
*
|
|
* NVIDIA Corporation and its licensors retain all intellectual property
|
|
* and proprietary rights in and to this software, related documentation
|
|
* and any modifications thereto. Any use, reproduction, disclosure or
|
|
* distribution of this software and related documentation without an
|
|
* express license agreement from NVIDIA Corporation is strictly prohibited.
|
|
*/
|
|
|
|
/*
|
|
* File: GFAudio.h
|
|
* GFSDK Audio Format API header file.
|
|
*/
|
|
|
|
#ifndef __GFAudio_H__
|
|
#define __GFAudio_H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif /* __cplusplus */
|
|
|
|
//*****************************************************************************
|
|
// Audio Types
|
|
//*****************************************************************************
|
|
//#if defined GFMMPROC_ADVANCED_3D_AUDIO_CONTROLS
|
|
|
|
typedef struct _NvVectorS32
|
|
{
|
|
NvS32 x;
|
|
NvS32 y;
|
|
NvS32 z;
|
|
|
|
} NvVectorS32;
|
|
|
|
//#endif
|
|
|
|
|
|
//*****************************************************************************
|
|
// Audio Formats
|
|
//*****************************************************************************
|
|
//
|
|
// Note: FrameSize and Flags must be the first 2 entries in each parameter list below.
|
|
|
|
typedef struct _GFMMPROC_PCM_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
|
|
} GFMMPROC_PCM_PARAMETERS;
|
|
|
|
typedef struct _GFMMPROC_SBC_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
NvU8 join;
|
|
NvU32 SampleRate;
|
|
NvU16 Bitpool;
|
|
NvU16 Channels;
|
|
NvU16 Channelmode;
|
|
NvU32 SamplesPerFrame;
|
|
NvU8 subbands;
|
|
NvU8 bitpool;
|
|
|
|
} GFMMPROC_SBC_PARAMETERS;
|
|
|
|
typedef struct _GFMMPROC_MP3_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
|
|
NvU32 SampleRate;
|
|
NvU16 BitsPerSample;
|
|
NvU16 Channels;
|
|
NvU32 SamplesPerFrame;
|
|
|
|
} GFMMPROC_MP3_PARAMETERS;
|
|
|
|
typedef struct _GFAUDIO_AAC_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
|
|
NvU16 BitsPerSample;
|
|
NvU16 Channels;
|
|
|
|
NvU32 SamplingRate;
|
|
NvU32 ExtensionSamplingRate;
|
|
NvU32 BitRate;
|
|
NvU32 ChannelConfig;
|
|
NvU32 AudioObjectType;
|
|
|
|
NvS16 CntBits;
|
|
NvS16 frameOK;
|
|
NvU32 CRC_Check;
|
|
NvU32 CRC_Reg;
|
|
|
|
} GFMMPROC_AAC_PARAMETERS;
|
|
|
|
typedef struct _GFAUDIO_AMRNB_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
|
|
NvU32 SamplingRate;
|
|
NvU16 BitsPerSample;
|
|
NvU16 Channels;
|
|
NvU32 format;
|
|
// NvU32 SamplesPerFrame;
|
|
// NvU32 ExtensionSamplingRate;
|
|
NvU32 Mode;
|
|
NvU32 NumberOfFrames;
|
|
} GFMMPROC_AMRNB_PARAMETERS;
|
|
|
|
typedef struct _GFAUDIO_WMA_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
|
|
NvU16 FormatTag;
|
|
NvU16 Channels;
|
|
NvU32 SamplingRate;
|
|
NvU32 AvgBytesPerSec;
|
|
NvU16 BlockAlign;
|
|
NvU16 BitsPerSample;
|
|
NvU32 ChannelMask;
|
|
NvU16 EncodeOpt;
|
|
NvU16 AdvancedEncodeOpt;
|
|
|
|
// Stuff for playerInfo
|
|
NvU16 PlayerOpt;
|
|
NvS32 PeakAmplitudeRef;
|
|
NvS32 RmsAmplitudeRef;
|
|
NvS32 PeakAmplitudeTarget;
|
|
NvS32 RmsAmplitudeTarget;
|
|
NvS16 DRCSetting;
|
|
NvS32 *rgiMixDownMatrix;
|
|
|
|
NvU32 AuParserState;
|
|
|
|
} GFMMPROC_WMA_PARAMETERS;
|
|
|
|
typedef struct _GFAUDIO_AMRWB_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
|
|
NvU32 SamplingRate;
|
|
NvU16 BitsPerSample;
|
|
NvU16 Channels;
|
|
NvU32 format;
|
|
// NvU32 SamplesPerFrame;
|
|
// NvU32 ExtensionSamplingRate;
|
|
NvU32 Mode;
|
|
} GFMMPROC_AMRWB_PARAMETERS;
|
|
|
|
typedef struct _GFMMPROC_MIDI_PARAMETERS
|
|
{
|
|
NvU32 FrameSize;
|
|
NvU32 Flags;
|
|
} GFMMPROC_MIDI_PARAMETERS;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|