82 lines
3.1 KiB
C
82 lines
3.1 KiB
C
|
LPTSTR SoundRec_GetFormatName(LPWAVEFORMATEX pwfx);
|
||
|
|
||
|
MMRESULT FAR PASCAL
|
||
|
ChooseDestinationFormat(
|
||
|
HINSTANCE hInst,
|
||
|
HWND hwndParent,
|
||
|
PWAVEFORMATEX pwfxIn,
|
||
|
PWAVEFORMATEX *ppwfxOut,
|
||
|
DWORD fdwEnum);
|
||
|
|
||
|
typedef struct tPROGRESS {
|
||
|
HWND hPrg; // window to post progress messages
|
||
|
DWORD dwTotal; // percent of full process this requires
|
||
|
DWORD dwComplete; // fixed percent completed
|
||
|
} PROGRESS, *PPROGRESS, FAR * LPPROGRESS;
|
||
|
|
||
|
UINT_PTR CALLBACK SaveAsHookProc(
|
||
|
HWND hdlg,
|
||
|
UINT msg,
|
||
|
WPARAM wParam,
|
||
|
LPARAM lParam);
|
||
|
|
||
|
MMRESULT
|
||
|
ConvertFormat(
|
||
|
PWAVEFORMATEX pwfxSrc, // pwfx specifying source format
|
||
|
DWORD cbSrc, // size of the source buffer
|
||
|
LPBYTE pbSrc, // source buffer
|
||
|
PWAVEFORMATEX pwfxDst, // pwfx specifying dest format
|
||
|
DWORD * pcbDst, // return size of the dest buffer
|
||
|
LPBYTE * ppbDst, // dest buffer
|
||
|
DWORD cBlks, // number of blocks
|
||
|
PPROGRESS pPrg); // progress update
|
||
|
|
||
|
MMRESULT
|
||
|
ConvertMultipleFormats(
|
||
|
PWAVEFORMATEX pwfxSrc, // pwfx specifying source format
|
||
|
DWORD cbSrc, // size of the source buffer
|
||
|
LPBYTE pbSrc, // source buffer
|
||
|
PWAVEFORMATEX pwfxDst, // pwfx specifying dest format
|
||
|
DWORD * pcbDst, // return size of the dest buffer
|
||
|
LPBYTE * ppbDst, // dest buffer
|
||
|
DWORD cBlks, // number of blocks
|
||
|
PPROGRESS pPrg); // progress update
|
||
|
|
||
|
MMRESULT
|
||
|
ConvertFormatDialog(
|
||
|
HWND hParent,
|
||
|
PWAVEFORMATEX pwfxSrc, // pwfx specifying source format
|
||
|
DWORD cbSrc, // size of the source buffer
|
||
|
LPBYTE pbSrc, // source buffer
|
||
|
PWAVEFORMATEX pwfxDst, // pwfx specifying dest format
|
||
|
DWORD * pcbDst, // return size of the dest buffer
|
||
|
LPBYTE * ppbDst, // dest buffer
|
||
|
DWORD cBlks, // number of blocks
|
||
|
PPROGRESS pPrg); // progress update
|
||
|
|
||
|
|
||
|
typedef struct t_SGLOBALS {
|
||
|
PWAVEFORMATEX *ppwfx;
|
||
|
DWORD *pcbwfx;
|
||
|
DWORD *pcbdata;
|
||
|
LPBYTE *ppbdata;
|
||
|
LONG *plSamples; // number of samples
|
||
|
LONG *plSamplesValid;// number of valid samples
|
||
|
LONG *plWavePosition;// current sample position
|
||
|
} SGLOBALS, *PSGLOBALS, FAR * LPSGLOBALS;
|
||
|
|
||
|
/* extend use of this throughout soundrec */
|
||
|
typedef struct t_WAVEDOC
|
||
|
{
|
||
|
PWAVEFORMATEX pwfx; // format
|
||
|
LPBYTE pbdata; // sample data
|
||
|
DWORD cbdata; // sizeof data buffer
|
||
|
LPTSTR pszFileName; // document file name
|
||
|
LPTSTR pszCopyright; // copyright info
|
||
|
HICON hIcon; // document icon
|
||
|
BOOL fChanged; // changed in viewing
|
||
|
LPVOID lpv; // extra
|
||
|
} WAVEDOC, *PWAVEDOC, FAR *LPWAVEDOC;
|
||
|
|
||
|
BOOL SoundRec_Properties(HWND hwnd, HINSTANCE hinst, PWAVEDOC pwd);
|