You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
2.0 KiB
44 lines
2.0 KiB
/*==========================================================================;
|
|
*
|
|
* Copyright (C) 1999 Microsoft Corporation. All Rights Reserved.
|
|
*
|
|
* File: dpvacmi.h
|
|
* Content: Definition of object which implements ACM compression provider interface
|
|
*
|
|
* History:
|
|
* Date By Reason
|
|
* =========== =========== ====================
|
|
* 10/27/99 rodtoll created
|
|
* 12/16/99 rodtoll Bug #123250 - Insert proper names/descriptions for codecs
|
|
* Codec names now based on resource entries for format and
|
|
* names are constructed using ACM names + bitrate
|
|
* 03/03/2000 rodtoll Updated to handle alternative gamevoice build.
|
|
* 06/27/2001 rodtoll RC2: DPVOICE: DPVACM's DllMain calls into acm -- potential hang
|
|
* Move global initialization to first object creation
|
|
***************************************************************************/
|
|
|
|
#ifndef __DPVACMI_H
|
|
#define __DPVACMI_H
|
|
|
|
extern "C" DNCRITICAL_SECTION g_csObjectCountLock;
|
|
extern "C" HINSTANCE g_hDllInst;
|
|
LONG IncrementObjectCount();
|
|
LONG DecrementObjectCount();
|
|
|
|
class CDPVACMI: public CDPVCPI
|
|
{
|
|
public:
|
|
static HRESULT InitCompressionList( HINSTANCE hInst, const wchar_t *szwRegistryBase );
|
|
HRESULT CreateCompressor( DPVCPIOBJECT *This, LPWAVEFORMATEX lpwfxSrcFormat, GUID guidTargetCT, PDPVCOMPRESSOR *ppCompressor, DWORD dwFlags );
|
|
HRESULT CreateDeCompressor( DPVCPIOBJECT *This, GUID guidTargetCT, LPWAVEFORMATEX lpwfxSrcFormat, PDPVCOMPRESSOR *ppCompressor, DWORD dwFlags );
|
|
static WAVEFORMATEX s_wfxInnerFormat; // Inner format
|
|
static HRESULT GetCompressionNameAndDescription( HINSTANCE hInst, DVFULLCOMPRESSIONINFO *pdvCompressionInfo );
|
|
static HRESULT GetDriverNameW( HACMDRIVERID hadid, wchar_t *szwDriverName );
|
|
static HRESULT GetDriverNameA( HACMDRIVERID hadid, wchar_t *szwDriverName );
|
|
static HRESULT LoadAndAllocString( HINSTANCE hInstance, UINT uiResourceID, wchar_t **lpswzString );
|
|
static void AddEntry( CompressionNode *pNewNode );
|
|
static HRESULT LoadDefaultTypes( HINSTANCE hInst );
|
|
};
|
|
|
|
#endif
|
|
|