windows-nt/Source/XPSP1/NT/multimedia/media/sndrec32/soundrec/convert.h
2020-09-26 16:20:57 +08:00

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);