home *** CD-ROM | disk | FTP | other *** search
- //==========================================================================;
- //
- // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
- // KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
- // IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
- // PURPOSE.
- //
- // Copyright (C) 1992 - 1997 Microsoft Corporation. All Rights Reserved.
- //
- //--------------------------------------------------------------------------;
- //
- // acmapp.h
- //
- // Description:
- // This is a sample application that demonstrates how to use the
- // Audio Compression Manager API's in Windows. This application is
- // also useful as an ACM CODEC driver test.
- //
- //
- //==========================================================================;
-
- #ifndef _INC_ACMAPP
- #define _INC_ACMAPP // #defined if file has been included
-
- #ifndef RC_INVOKED
- #pragma pack(1) // assume byte packing throughout
- #endif
-
- #ifndef EXTERN_C
- #ifdef __cplusplus
- #define EXTERN_C extern "C"
- #else
- #define EXTERN_C extern
- #endif
- #endif
-
- #ifdef __cplusplus
- extern "C" // assume C declarations for C++
- {
- #endif
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // Application Version Information:
- //
- //
- //
- //
- // NOTE! all string resources that will be used in app.rcv for the
- // version resource information *MUST* have an explicit \0 terminator!
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- #if WINVER < 0x0400
-
- #define APP_VERSION_MAJOR 3
- #define APP_VERSION_MINOR 50
- #define APP_VERSION_BUILD 0
-
- #ifdef DEBUG
- #define APP_ABOUTBOX_DESCRIPTION "ACM Sample Application version 3.50 (debug)"
- #else
- #define APP_ABOUTBOX_DESCRIPTION "ACM Sample Application version 3.50"
- #endif
- #define APP_ABOUTBOX_PRODUCTNAME "Microsoft Windows NT"
-
- #define APP_VERSION_STRING_RC "Version 3.50\0"
- #define APP_VERSION_PRODUCTNAME_RC "Microsoft Windows NT\0"
-
- #else
-
- #define APP_VERSION_MAJOR 4
- #define APP_VERSION_MINOR 0
- #define APP_VERSION_BUILD 0
-
- #ifdef DEBUG
- #define APP_ABOUTBOX_DESCRIPTION "ACM Sample Application version 4.00 (debug)"
- #else
- #define APP_ABOUTBOX_DESCRIPTION "ACM Sample Application version 4.00"
- #endif
- #define APP_ABOUTBOX_PRODUCTNAME "Microsoft Windows"
-
- #define APP_VERSION_STRING_RC "Version 4.00\0"
- #define APP_VERSION_PRODUCTNAME_RC "Microsoft Windows\0"
-
- #endif // WINVER
-
-
- #define APP_VERSION_COMPANYNAME_RC "Microsoft Corporation\0"
- #define APP_VERSION_DESCRIPTION_RC "ACM Sample Application\0"
- #ifdef WIN32
- #define APP_VERSION_NAME_RC "acmapp32.exe\0"
- #else
- #define APP_VERSION_NAME_RC "acmapp16.exe\0"
- #endif
- #define APP_VERSION_COPYRIGHT_RC "Copyright (C) 1992 - 1997 Microsoft Corp.\0"
-
-
-
- //
- //
- //
- #ifndef SIZEOF_WAVEFORMATEX
- #define SIZEOF_WAVEFORMATEX(pwfx) ((WAVE_FORMAT_PCM==(pwfx)->wFormatTag)?sizeof(PCMWAVEFORMAT):(sizeof(WAVEFORMATEX)+(pwfx)->cbSize))
- #endif
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // misc defines for misc sizes and things...
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- //
- // bilingual. this allows the same identifier to be used in resource files
- // and code without having to decorate the id in your code.
- //
- #ifdef RC_INVOKED
- #define RCID(id) id
- #else
- #define RCID(id) MAKEINTRESOURCE(id)
- #endif
-
-
- //
- // misc. defines
- //
- #define APP_MAX_APP_NAME_CHARS 30
- #define APP_MAX_APP_NAME_BYTES (APP_MAX_APP_NAME_CHARS * sizeof(TCHAR))
- #define APP_MAX_STRING_RC_CHARS 512
- #define APP_MAX_STRING_RC_BYTES (APP_MAX_STRING_RC_CHARS * sizeof(TCHAR))
- #define APP_MAX_STRING_ERROR_CHARS 512
- #define APP_MAX_STRING_ERROR_BYTES (APP_MAX_STRING_ERROR_CHARS * sizeof(TCHAR))
-
- #define APP_MAX_STRING_CHARS 128
- #define APP_MAX_STRING_BYTES (APP_MAX_STRING_CHARS * sizeof(TCHAR))
- #define APP_MAX_NUMBER_CHARS 144
- #define APP_MAX_NUMBER_BYTES (APP_MAX_NUMBER_CHARS * sizeof(TCHAR))
-
- #define APP_MAX_FILE_PATH_CHARS 144
- #define APP_MAX_FILE_PATH_BYTES (APP_MAX_FILE_PATH_CHARS * sizeof(TCHAR))
- #define APP_MAX_FILE_TITLE_CHARS APP_MAX_FILE_PATH_CHARS
- #define APP_MAX_FILE_TITLE_BYTES (APP_MAX_FILE_TITLE_CHARS * sizeof(TCHAR))
-
- #define APP_MAX_STRING_INT_CHARS 18
- #define APP_MAX_STRING_INT_BYTES (APP_MAX_STRING_INT_CHARS * sizeof(TCHAR))
-
- #define APP_MAX_EXT_DEFAULT_CHARS 4
- #define APP_MAX_EXT_DEFAULT_BYTES (APP_MAX_EXT_DEFAULT_CHARS * sizeof(TCHAR))
- #define APP_MAX_EXT_FILTER_CHARS 256
- #define APP_MAX_EXT_FILTER_BYTES (APP_MAX_EXT_FILTER_CHARS * sizeof(TCHAR))
-
- #define APP_WINDOW_XOFFSET CW_USEDEFAULT
- #define APP_WINDOW_YOFFSET CW_USEDEFAULT
- #define APP_WINDOW_WIDTH 460 // CW_USEDEFAULT
- #define APP_WINDOW_HEIGHT 400 // CW_USEDEFAULT
-
-
- //
- // resource defines...
- //
- #define ICON_APP RCID(10)
- #define ACCEL_APP RCID(15)
-
-
- //
- // the application menu...
- //
- // NOTE! for our Edit menu, we use the following defines from windows.h--
- // so don't reuse these defines for menu items!
- //
- // #define WM_CUT 0x0300
- // #define WM_COPY 0x0301
- // #define WM_PASTE 0x0302
- // #define WM_CLEAR 0x0303
- // #define WM_UNDO 0x0304
- //
- #define MENU_APP RCID(20)
- #define APP_MENU_ITEM_FILE 0
- #define IDM_FILE_NEW 1100
- #define IDM_FILE_OPEN 1101
- #define IDM_FILE_SAVE 1102
- #define IDM_FILE_SAVEAS 1103
- #define IDM_FILE_SNDPLAYSOUND_PLAY 1104
- #define IDM_FILE_SNDPLAYSOUND_STOP 1105
- #define IDM_FILE_CONVERT 1106
- #define IDM_FILE_CONVERT_ALL 1107
- #define IDM_FILE_ABOUT 1109
- #define IDM_FILE_EXIT 1110
-
- #define APP_MENU_ITEM_EDIT 1
- #define IDM_EDIT_SELECTALL 1200
-
- #define APP_MENU_ITEM_VIEW 2
- #define IDM_VIEW_SYSTEMINFO 1300
- #define IDM_VIEW_ACM_DRIVERS 1301
-
- #define APP_MENU_ITEM_PLAYER 3
- #define IDM_PLAYRECORD 1400
-
- #define APP_MENU_ITEM_OPTIONS 4
- #define IDM_OPTIONS_WAVEINDEVICE 1500
- #define IDM_OPTIONS_WAVEOUTDEVICE 1501
- #define IDM_OPTIONS_AUTOOPEN 1505
- #define IDM_OPTIONS_DEBUGLOG 1506
- #define IDM_OPTIONS_FONT 1509
-
- #define IDM_UPDATE 1600
-
-
- //
- // the main window control id's...
- //
- #define IDD_ACMAPP_EDIT_DISPLAY 200
-
-
- //
- // misc dlg boxes...
- //
- #define DLG_ABOUT RCID(50)
- #define IDC_STATIC -1
- #define IDD_ABOUT_VERSION_OS 100
- #define IDD_ABOUT_VERSION_PLATFORM 101
-
- #define DLG_AADRAGDROP RCID(55)
-
- #define DLG_AADETAILS RCID(70)
- #define IDD_AADETAILS_EDIT_DETAILS 100
-
- #define DLG_AADRIVERS RCID(75)
- #define IDD_AADRIVERS_STATIC_POSITION 100
- #define IDD_AADRIVERS_LIST_DRIVERS 101
- #define IDD_AADRIVERS_BTN_DETAILS 102
- #define IDD_AADRIVERS_BTN_FORMATS 103
- #define IDD_AADRIVERS_BTN_FILTERS 104
- #define IDD_AADRIVERS_BTN_ABOUT 105
- #define IDD_AADRIVERS_BTN_CONFIG 106
- #define IDD_AADRIVERS_BTN_ABLE 107
- #define IDD_AADRIVERS_BTN_TOTOP 108
-
- #define DLG_AADRIVERFORMATS RCID(80)
- #define IDD_AADRIVERFORMATS_STATIC_POSITION 100
- #define IDD_AADRIVERFORMATS_LIST_FORMATS 101
- #define IDD_AADRIVERFORMATS_BTN_DETAILS 102
-
-
- #define DLG_AAWAVEDEVICE RCID(85)
- #define IDD_AAWAVEDEVICE_COMBO_DEVICE 100
- #define IDD_AAWAVEDEVICE_EDIT_CAPABILITIES 101
-
-
- #define DLG_AACHOOSER RCID(90)
- #define IDD_AACHOOSER_TXT_FILE_INPUT 100
- #define IDD_AACHOOSER_TXT_FORMAT_INPUT 101
- #define IDD_AACHOOSER_EDIT_FILE_OUTPUT 110
- #define IDD_AACHOOSER_BTN_BROWSE 111
- #define IDD_AACHOOSER_COMBO_DRIVER 120
- #define IDD_AACHOOSER_BTN_PROPERTIES 121
- #define IDD_AACHOOSER_TXT_FORMAT 130
- #define IDD_AACHOOSER_BTN_FORMAT 131
- #define IDD_AACHOOSER_BTN_FORMAT_OPTIONS 132
- #define IDD_AACHOOSER_CHECK_FILTER 140
- #define IDD_AACHOOSER_TXT_FILTER 141
- #define IDD_AACHOOSER_BTN_FILTER 142
- #define IDD_AACHOOSER_BTN_FILTER_OPTIONS 143
- #define IDD_AACHOOSER_CHECK_NONREALTIME 150
- #define IDD_AACHOOSER_CHECK_ASYNC 151
- #define IDD_AACHOOSER_TXT_TIME 160
- #define IDD_AACHOOSER_SCROLL_TIME 161
- #define IDD_AACHOOSER_EDIT_DETAILS 170
-
-
- #define DLG_AAFORMATENUM RCID(91)
- #define IDD_AAFORMATENUM_CHECK_CONVERT 100
- #define IDD_AAFORMATENUM_CHECK_SUGGEST 101
- #define IDD_AAFORMATENUM_CHECK_HARDWARE 102
- #define IDD_AAFORMATENUM_CHECK_INPUT 103
- #define IDD_AAFORMATENUM_CHECK_OUTPUT 104
- #define IDD_AAFORMATENUM_CHECK_WFORMATTAG 105
- #define IDD_AAFORMATENUM_EDIT_WFORMATTAG 106
- #define IDD_AAFORMATENUM_CHECK_NCHANNELS 107
- #define IDD_AAFORMATENUM_EDIT_NCHANNELS 108
- #define IDD_AAFORMATENUM_CHECK_NSAMPLESPERSEC 109
- #define IDD_AAFORMATENUM_EDIT_NSAMPLESPERSEC 110
- #define IDD_AAFORMATENUM_CHECK_WBITSPERSAMPLE 111
- #define IDD_AAFORMATENUM_EDIT_WBITSPERSAMPLE 112
- #define IDD_AAFORMATENUM_EDIT_NAVGBYTESPERSEC 113
- #define IDD_AAFORMATENUM_EDIT_NBLOCKALIGN 114
- #define IDD_AAFORMATENUM_EDIT_EXTRA 115
-
- #define DLG_AAFILTERENUM RCID(92)
- #define IDD_AAFILTERENUM_CHECK_DWFILTERTAG 100
- #define IDD_AAFILTERENUM_EDIT_DWFILTERTAG 101
-
-
- #define DLG_AAPROPERTIES RCID(93)
- #define IDD_AAPROPERTIES_COMBO_SOURCE 100
- #define IDD_AAPROPERTIES_BTN_SOURCE 101
- #define IDD_AAPROPERTIES_COMBO_DESTINATION 102
- #define IDD_AAPROPERTIES_BTN_DESTINATION 103
-
-
- #define DLG_AAFORMATSTYLE RCID(94)
- #define IDD_AAFORMATSTYLE_CHECK_SHOWHELP 100
- #define IDD_AAFORMATSTYLE_CHECK_ENABLEHOOK 101
- #define IDD_AAFORMATSTYLE_CHECK_ENABLETEMPLATE 102
- #define IDD_AAFORMATSTYLE_CHECK_ENABLETEMPLATEHANDLE 103
- #define IDD_AAFORMATSTYLE_CHECK_INITTOWFXSTRUCT 104
-
- #define DLG_AAFILTERSTYLE RCID(95)
- #define IDD_AAFILTERSTYLE_CHECK_SHOWHELP 100
- #define IDD_AAFILTERSTYLE_CHECK_ENABLEHOOK 101
- #define IDD_AAFILTERSTYLE_CHECK_ENABLETEMPLATE 102
- #define IDD_AAFILTERSTYLE_CHECK_ENABLETEMPLATEHANDLE 103
- #define IDD_AAFILTERSTYLE_CHECK_INITTOFILTERSTRUCT 104
-
-
- #define DLG_AAFORMATCHOOSE_TEMPLATE RCID(98)
- #define DLG_AAFILTERCHOOSE_TEMPLATE RCID(99)
-
-
-
- #define DLG_AACONVERT RCID(100)
- #define IDD_AACONVERT_TXT_INFILEPATH 100
- #define IDD_AACONVERT_TXT_OUTFILEPATH 101
- #define IDD_AACONVERT_TXT_STATUS 102
-
- #define DLG_AAPLAYRECORD RCID(110)
- #define IDD_AAPLAYRECORD_BTN_PLAY 100
- #define IDD_AAPLAYRECORD_BTN_PAUSE 101
- #define IDD_AAPLAYRECORD_BTN_STOP 102
- #define IDD_AAPLAYRECORD_BTN_START 103
- #define IDD_AAPLAYRECORD_BTN_END 104
- #define IDD_AAPLAYRECORD_BTN_RECORD 105
- #define IDD_AAPLAYRECORD_SCROLL_POSITION 110
- #define IDD_AAPLAYRECORD_TXT_POSITION 115
- #define IDD_AAPLAYRECORD_EDIT_COMMAND 120
- #define IDD_AAPLAYRECORD_EDIT_RESULT 121
-
-
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // string resources
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- #define IDS_APP_NAME 100
- #define IDS_FILE_UNTITLED 101
-
- #define IDS_OFN_EXT_DEF 125
- #define IDS_OFN_EXT_FILTER 126
-
- #define IDS_ERROR_ACM_NOT_PRESENT 500
- #define IDS_ERROR_ACM_TOO_OLD 501
-
- #define IDS_ERROR_OPEN_FAILED 550
-
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- //
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- //
- //
- //
- //
- typedef struct tACMAPPFILEDESC
- {
- DWORD fdwState;
-
- TCHAR szFileTitle[APP_MAX_FILE_TITLE_CHARS];
- TCHAR szFilePath[APP_MAX_FILE_PATH_CHARS];
-
- DWORD cbFileSize;
- UINT uDosChangeDate;
- UINT uDosChangeTime;
- DWORD fdwFileAttributes;
-
- LPWAVEFORMATEX pwfx;
- UINT cbwfx;
-
- DWORD dwDataBytes;
- DWORD dwDataSamples;
-
- } ACMAPPFILEDESC, *PACMAPPFILEDESC;
-
- //
- // ACMAPPINST.fdwState flags
- //
- #define ACMAPPFILEDESC_STATEF_MODIFIED 0x80000000L
-
-
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // APPINIT.C -- Public helper functions
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- LRESULT FNGLOBAL AppCreate
- (
- HWND hwnd,
- LPCREATESTRUCT pcs
- );
-
- LRESULT FNGLOBAL AppQueryEndSession
- (
- HWND hwnd
- );
-
- LRESULT FNGLOBAL AppEndSession
- (
- HWND hwnd,
- BOOL fEndSession
- );
-
- LRESULT FNGLOBAL AppClose
- (
- HWND hwnd
- );
-
- HWND FNGLOBAL AppInit
- (
- HINSTANCE hinst,
- HINSTANCE hinstPrev,
- LPTSTR pszCmdLine,
- int nCmdShow
- );
-
- int FNGLOBAL AppExit
- (
- HINSTANCE hinst,
- int nResult
- );
-
-
- LRESULT FNGLOBAL AppGetWindowsVersion
- (
- PTSTR pszEnvironment,
- PTSTR pszPlatform
- );
-
- LRESULT FNGLOBAL AppWinIniChange
- (
- HWND hwnd,
- LPCTSTR pszSection
- );
-
- HFONT FNGLOBAL AppChooseFont
- (
- HWND hwnd,
- HFONT hFont,
- PLOGFONT plf
- );
-
-
- BOOL FNEXPORT AboutDlgProc
- (
- HWND hwnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- );
-
-
- BOOL FNGLOBAL AppProfileWriteBytes
- (
- PTSTR pszSection,
- PTSTR pszKey,
- LPBYTE pbStruct,
- UINT cbStruct
- );
-
- BOOL FNGLOBAL AppProfileReadBytes
- (
- PTSTR pszSection,
- PTSTR pszKey,
- LPBYTE pbStruct,
- UINT cbStruct
- );
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // APP.C -- Public helper functions
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- int FNCGLOBAL AppMsgBox
- (
- HWND hwnd,
- UINT fuStyle,
- PTSTR pszFormat,
- ...
- );
-
- int FNCGLOBAL AppMsgBoxId
- (
- HWND hwnd,
- UINT fuStyle,
- UINT uIdsFormat,
- ...
- );
-
- void FNGLOBAL AppHourGlass
- (
- BOOL fHourGlass
- );
-
- BOOL FNGLOBAL AppYield
- (
- HWND hwnd,
- BOOL fIsDialog
- );
-
- BOOL FNGLOBAL AppTitle
- (
- HWND hwnd,
- PTSTR pszFileTitle
- );
-
- int FNCGLOBAL AppSetWindowText
- (
- HWND hwnd,
- PTSTR pszFormat,
- ...
- );
-
- int FNCGLOBAL AppSetWindowTextId
- (
- HWND hwnd,
- UINT uIdsFormat,
- ...
- );
-
- BOOL FNGLOBAL AppFormatBigNumber
- (
- LPTSTR pszNumber,
- DWORD dw
- );
-
- BOOL FNGLOBAL AppFormatDosDateTime
- (
- LPTSTR pszDateTime,
- UINT uDosDate,
- UINT uDosTime
- );
-
- void FNCGLOBAL AcmAppDebugLog
- (
- PTSTR pszFormat,
- ...
- );
-
- int FNCGLOBAL MEditPrintF
- (
- HWND hedit,
- PTSTR pszFormat,
- ...
- );
-
- BOOL FNGLOBAL AppGetFileTitle
- (
- PTSTR pszFilePath,
- PTSTR pszFileTitle
- );
-
- BOOL FNGLOBAL AppGetFileName
- (
- HWND hwnd,
- PTSTR pszFilePath,
- PTSTR pszFileTitle,
- UINT fuFlags
- );
-
- BOOL FNGLOBAL AppFileNew
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd,
- BOOL fCreate
- );
-
-
- //
- // fuFlags for AppGetFileName()...
- //
- #define APP_GETFILENAMEF_OPEN 0x0000
- #define APP_GETFILENAMEF_SAVE 0x0001
-
-
- BOOL FNGLOBAL AppFileSave
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd,
- BOOL fSaveAs
- );
-
-
- LRESULT FNEXPORT AppWndProc
- (
- HWND hwnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- );
-
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // file manipulation functions
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- //
- //
- //
- //
- #ifndef WIN32
- DWORD FNGLOBAL DosGetFileAttributes
- (
- LPTSTR pszFilePath
- );
-
- #ifndef FILE_ATTRIBUTE_READONLY
- #define FILE_ATTRIBUTE_READONLY 0x00000001
- #define FILE_ATTRIBUTE_HIDDEN 0x00000002
- #define FILE_ATTRIBUTE_SYSTEM 0x00000004
- #define FILE_ATTRIBUTE_DIRECTORY 0x00000010
- #define FILE_ATTRIBUTE_ARCHIVE 0x00000020
- #define FILE_ATTRIBUTE_NORMAL 0x00000080
- #define FILE_ATTRIBUTE_TEMPORARY 0x00000100
- #define FILE_ATTRIBUTE_ATOMIC_WRITE 0x00000200
- #define FILE_ATTRIBUTE_XACTION_WRITE 0x00000400
- #endif
- #endif
-
- MMRESULT FNGLOBAL AcmAppFormatChoose
- (
- HWND hwnd,
- LPWAVEFORMATEX pwfx,
- UINT cbwfx,
- DWORD fdwStyle
- );
-
- BOOL FNGLOBAL AcmAppFileSaveModified
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd
- );
-
- BOOL FNGLOBAL AcmAppFileNew
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd
- );
-
- BOOL FNGLOBAL AcmAppFileOpen
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd
- );
-
- BOOL FNGLOBAL AcmAppFileSave
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd,
- PTSTR pszFilePath,
- PTSTR pszFileTitle,
- UINT fuSave
- );
-
-
-
- BOOL FNGLOBAL AcmAppFileConvert
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd
- );
-
- BOOL FNGLOBAL AcmAppMultiThreadedConvertAll
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd
- );
-
- BOOL FNGLOBAL AcmAppFileFilter
- (
- HWND hwnd,
- PACMAPPFILEDESC paafd
- );
-
-
- BOOL FNGLOBAL AcmAppDisplayFileProperties
- (
- HWND hedit,
- PACMAPPFILEDESC paafd
- );
-
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- //
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- BOOL FNEXPORT AcmAppDriversDlgProc
- (
- HWND hwnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- );
-
-
- BOOL FNGLOBAL AcmAppGetFormatDescription
- (
- LPWAVEFORMATEX pwfx,
- LPTSTR pszFormatTag,
- LPTSTR pszFormat
- );
-
- BOOL FNGLOBAL AcmAppGetFilterDescription
- (
- LPWAVEFILTER pwfltr,
- LPTSTR pszFilterTag,
- LPTSTR pszFilter
- );
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- //
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- BOOL FNEXPORT AcmAppSystemInfoDlgProc
- (
- HWND hwnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- );
-
-
-
-
- BOOL FNEXPORT AcmAppPlayRecord
- (
- HWND hwnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- );
-
-
- BOOL FNEXPORT AcmAppWaveDeviceDlgProc
- (
- HWND hwnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- );
-
-
- BOOL FNGLOBAL AcmAppGetErrorString
- (
- MMRESULT mmr,
- LPTSTR pszError
- );
-
- //
- //
- //
- #define WM_ACMAPP_ACM_NOTIFY (WM_USER + 100)
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // misc functions
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- BOOL FNGLOBAL AcmAppChooseFont
- (
- HWND hwnd
- );
-
-
-
- //
- //
- //
- //
- typedef struct tAACONVERTDESC
- {
- HACMDRIVERID hadid;
- HACMDRIVER had;
- HACMSTREAM has;
- DWORD fdwOpen;
-
- HMMIO hmmioSrc;
- HMMIO hmmioDst;
-
- MMCKINFO ckDst;
- MMCKINFO ckDstRIFF;
-
- UINT uBufferTimePerConvert;
-
- TCHAR szFilePathSrc[APP_MAX_FILE_PATH_CHARS];
- LPWAVEFORMATEX pwfxSrc;
- LPBYTE pbSrc;
- DWORD dwSrcSamples;
- DWORD cbSrcData;
- DWORD cbSrcReadSize;
- TCHAR szSrcFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
- TCHAR szSrcFormat[ACMFORMATDETAILS_FORMAT_CHARS];
-
- TCHAR szFilePathDst[APP_MAX_FILE_PATH_CHARS];
- LPWAVEFORMATEX pwfxDst;
- LPBYTE pbDst;
- DWORD cbDstBufSize;
- TCHAR szDstFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
- TCHAR szDstFormat[ACMFORMATDETAILS_FORMAT_CHARS];
-
- BOOL fApplyFilter;
- LPWAVEFILTER pwfltr;
- TCHAR szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
- TCHAR szFilter[ACMFILTERDETAILS_FILTER_CHARS];
-
- ACMSTREAMHEADER ash;
-
- DWORD cTotalConverts;
- DWORD dwTimeTotal;
- DWORD dwTimeShortest;
- DWORD dwShortestConvert;
- DWORD dwTimeLongest;
- DWORD dwLongestConvert;
-
- } AACONVERTDESC, *PAACONVERTDESC;
-
-
-
- BOOL FNEXPORT AcmAppDlgProcChooser
- (
- HWND hwnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- );
-
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- // global variables, etc.
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- //
- // flags for gfuAppOptions
- //
- #define APP_OPTIONSF_AUTOOPEN 0x0001
- #define APP_OPTIONSF_DEBUGLOG 0x0004
-
- extern HINSTANCE ghinst;
- extern BOOL gfAcmAvailable;
- extern UINT gfuAppOptions;
- extern HFONT ghfontApp;
- extern HACMDRIVERID ghadidNotify;
-
- extern UINT guWaveInId;
- extern UINT guWaveOutId;
-
- extern TCHAR gszNull[];
- extern TCHAR gszAppProfile[];
- extern TCHAR gszYes[];
- extern TCHAR gszNo[];
-
- extern TCHAR gszAppName[APP_MAX_APP_NAME_CHARS];
- extern TCHAR gszFileUntitled[APP_MAX_FILE_TITLE_CHARS];
-
- extern TCHAR gszInitialDirOpen[APP_MAX_FILE_PATH_CHARS];
- extern TCHAR gszInitialDirSave[APP_MAX_FILE_PATH_CHARS];
-
- extern TCHAR gszLastSaveFile[APP_MAX_FILE_PATH_CHARS];
-
-
- extern ACMAPPFILEDESC gaafd;
-
-
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
- //
- //
- //
- //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
-
- #ifndef RC_INVOKED
- #pragma pack() // revert to default packing
- #endif
-
- #ifdef __cplusplus
- } // end of extern "C" {
- #endif
-
- #endif // _INC_ACMAPP
-