85 s = (
BYTE const*)idstr;
86 if ((
s[0]!=
'{') || (
s[9]!=
'-') || (
s[14]!=
'-') || (
s[19]!=
'-') ||
87 (
s[24]!=
'-') || (
s[37]!=
'}'))
90 for (
i = 1;
i < 37;
i++) {
91 if ((
i == 9) || (
i == 14) || (
i == 19) || (
i == 24))
93 if (!(((
s[
i] >=
'0') && (
s[
i] <=
'9')) ||
94 ((
s[
i] >=
'a') && (
s[
i] <=
'f')) ||
95 ((
s[
i] >=
'A') && (
s[
i] <=
'F')))
100 TRACE(
"%s -> %p\n",
s,
id);
105 for (
i = 0;
i < 10;
i++)
108 for (
i = 0;
i < 6;
i++) {
117 for (
i = 0;
i < 4;
i++) {
124 for (
i = 0;
i < 2;
i++) {
131 for (
i = 0;
i < 2;
i++) {
139 for (
i = 0;
i < 2;
i++) {
145 for (
i = 0;
i < 6;
i++) {
165 wsprintfA(szRegKey,
"AVIFile\\Extensions\\%.3ls", szExt);
185 FIXME(
"(): stub!\n");
203 if (ppfile ==
NULL || szFile ==
NULL)
238 if (ppfile ==
NULL || szFile ==
NULL)
244 if (lpHandler ==
NULL) {
246 clsidHandler = CLSID_AVIFile;
248 clsidHandler = *lpHandler;
263 hr = IPersistFile_Load(ppersist, szFile, uMode);
264 IPersistFile_Release(ppersist);
278 TRACE(
"(%p)\n", pfile);
281 ERR(
": bad handle passed!\n");
293 TRACE(
"(%p)\n", pfile);
296 ERR(
": bad handle passed!\n");
312 TRACE(
"(%p,%p,%ld)\n", pfile, afi,
size);
334 TRACE(
"(%p,%p,%ld)\n", pfile, afiw,
size);
348 TRACE(
"(%p,%p,'%4.4s',%ld)\n", pfile, avis, (
char*)&fccType,
lParam);
365 TRACE(
"(%p,%p,%p)\n", pfile, ppavi, psi);
384 TRACE(
"(%p,%p,%p)\n", pfile, avis, asi);
397 TRACE(
"(%p,'%4.4s',%p,%ld)\n", pfile, (
char*)&fcc, lp,
size);
410 TRACE(
"(%p,'%4.4s',%p,%p)\n", pfile, (
char*)&fcc, lp,
size);
423 TRACE(
"(%p)\n", pfile);
436 TRACE(
"(%p)\n", pstream);
438 if (pstream ==
NULL) {
439 ERR(
": bad handle passed!\n");
451 TRACE(
"(%p)\n", pstream);
453 if (pstream ==
NULL) {
454 ERR(
": bad handle passed!\n");
469 TRACE(
"(%p,0x%08lX,0x%08lX,%s)\n", ppavi, lParam1, lParam2,
476 if (pclsidHandler ==
NULL)
502 TRACE(
"(%p,%p,%ld)\n", pstream, asi,
size);
525 TRACE(
"(%p,%p,%ld)\n", pstream, asi,
size);
581 TRACE(
"(%p,%ld,%ld,%p,%ld,%p,%p)\n", pstream,
start,
samples,
buffer,
582 buffersize, bytesread, samplesread);
588 bytesread, samplesread);
598 TRACE(
"(%p,%ld,%ld,%p,%ld,0x%lX,%p,%p)\n", pstream,
start,
samples,
buffer,
599 buffersize,
flags, sampwritten, byteswritten);
605 flags, sampwritten, byteswritten);
614 TRACE(
"(%p,'%4.4s',%p,%p)\n", pstream, (
char*)&fcc, lp, lpread);
628 TRACE(
"(%p,'%4.4s',%p,%ld)\n", pstream, (
char*)&fcc, lp,
size);
644 TRACE(
"(%p,%p)\n", pstream, lpbiWanted);
701 TRACE(
"(%p,%p,%p,%s)\n", ppsCompressed, psSource, aco,
704 if (ppsCompressed ==
NULL)
706 if (psSource ==
NULL)
709 *ppsCompressed =
NULL;
712 if (pclsidHandler ==
NULL) {
723 clsidHandler = *pclsidHandler;
732 *ppsCompressed =
NULL;
770 if (ppavi ==
NULL || szFile ==
NULL)
798 if (ppavi ==
NULL || szFile ==
NULL)
818 IAVIStreaming* pstream =
NULL;
821 TRACE(
"(%p,%ld,%ld,%ld)\n", pavi, lStart, lEnd, lRate);
841 IAVIStreaming* pstream =
NULL;
844 TRACE(
"(%p)\n", pavi);
862 TRACE(
"(%p)\n", pstream);
880 TRACE(
"(%p)\n", pstream);
899 TRACE(
"(%p,%ld)\n", pstream, lSample);
932 TRACE(
"(%p,%ld)\n", pstream, lTime);
934 if (pstream ==
NULL || lTime < 0)
953 TRACE(
" -> %ld\n", sample);
1000 WCHAR szAllFiles[40];
1001 WCHAR szFileExt[10];
1054 ERR(
": More than %d filters found! Adjust MAX_FILTERS in dlls/avifil32/api.c\n",
MAX_FILTERS);
1065 if (lp[
i].szExtensions[0] == 0)
1066 lstrcatW(lp[
i].szExtensions, szValue + 1);
1071 if (lp[0].szExtensions[0] == 0)
1072 lstrcatW(lp[0].szExtensions, szValue + 1);
1074 lstrcatW(lp[0].szExtensions, szValue);
1086 size =
sizeof(szValue);
1122 if (cbFilter >
size) {
1139 ERR(
": bad state!\n");
1144 &sInfo,
sizeof(sInfo)))) {
1145 ERR(
": AVIStreamInfoW failed!\n");
1162 cv.cbSize =
sizeof(
cv);
1190 pOptions->
dwFlags &= ~AVICOMPRESSF_KEYFRAMES;
1191 if (
cv.lDataRate != 0) {
1195 pOptions->
dwFlags &= ~AVICOMPRESSF_DATARATE;
1208 memset(&afmtc, 0,
sizeof(afmtc));
1220 if (!new_buffer)
return FALSE;
1246 ERR(
": unknown streamtype 0x%08lX\n", sInfo.
fccType);
1253 WCHAR szFormat[128];
1302 memset(&aftd, 0,
sizeof(aftd));
1303 memset(&afd, 0,
sizeof(afd));
1340 BOOL bIsInterleaved;
1370 dwInterleave =
SaveOpts.ppOptions[0]->dwInterleaveEvery;
1372 bIsInterleaved =
TRUE;
1387 if (bIsInterleaved) {
1389 SaveOpts.ppOptions[
n]->dwInterleaveEvery = dwInterleave;
1391 SaveOpts.ppOptions[
n]->dwFlags &= ~AVICOMPRESSF_INTERLEAVE;
1437 if (pSavedOptions ==
NULL)
1458 if (pSavedOptions !=
NULL) {
1465 free(pSavedOptions);
1513 lpfnCallback, nStream, ppavi, plpOptions);
1515 if (szFile ==
NULL || ppavi ==
NULL || plpOptions ==
NULL)
1530 nStream, ppavi, plpOptions);
1561 LONG lFirstVideo = -1;
1565 DWORD dwInterleave = 0;
1566 DWORD dwFileInitialFrames;
1579 lpfnCallback,
nStreams, ppavi, plpOptions);
1581 if (szFile ==
NULL || ppavi ==
NULL || plpOptions ==
NULL)
1588 if (lpfnCallback ==
NULL)
1592 for (curStream = 0; curStream <
nStreams; curStream++) {
1593 pInStreams[curStream] =
NULL;
1594 pOutStreams[curStream] =
NULL;
1605 for (curStream = 0; curStream <
nStreams; curStream++) {
1615 if (lFirstVideo < 0)
1616 lFirstVideo = curStream;
1617 }
else if (!dwInterleave) {
1619 WARN(
"options.flags=0x%lX options.dwInterleave=%lu\n",plpOptions[curStream]->
dwFlags,plpOptions[curStream]->dwInterleaveEvery);
1620 if (plpOptions[curStream] !=
NULL &&
1626 pInStreams[curStream] =
NULL;
1627 if (plpOptions[curStream] !=
NULL) {
1628 if (plpOptions[curStream]->fccHandler ||
1636 plpOptions[curStream],
NULL);
1639 pInStreams[curStream] =
NULL;
1651 if (pInStreams[curStream] ==
NULL) {
1652 pCurStream = pInStreams[curStream] = ppavi[curStream];
1655 pCurStream = pInStreams[curStream];
1657 lStart[curStream] = sInfo.
dwStart;
1661 if (lFirstVideo > 0) {
1663 LONG lTmp = lStart[lFirstVideo];
1665 pInStreams[lFirstVideo] = pInStreams[0];
1666 pInStreams[0] = pTmp;
1667 lStart[lFirstVideo] = lStart[0];
1673 cbBuffer = 0x00010000;
1682 dwFileInitialFrames = 0;
1683 if (lFirstVideo >= 0) {
1688 lBufferSize = cbBuffer;
1698 for (curStream = 0; curStream <
nStreams; curStream++) {
1710 lBufferSize = cbBuffer;
1720 lBufferSize = cbBuffer;
1735 if (lFileLength < lReadBytes)
1736 lFileLength = lReadBytes;
1739 WARN(
"creation of (de-)compression stream failed for stream %d\n",curStream);
1747 *ppas = pInStreams[curStream + 1];
1760 LONG lCurFrame = -dwFileInitialFrames;
1763 if (dwInterleave == 1)
1766 for (; lCurFrame < lFileLength; lCurFrame += lSampleInc) {
1767 for (curStream = 0; curStream <
nStreams; curStream++) {
1778 if ((lFileLength - lSampleInc) <= lCurFrame) {
1780 lFirstVideo = lLastSample +
AVIStreamStart(pInStreams[curStream]);
1782 if (curStream != 0) {
1786 (
LONG)dwInterleave : lSampleInc) +
1792 if (lLastSample <= lFirstVideo)
1793 lFirstVideo = lLastSample;
1797 WARN(
"copy from stream %d samples %ld to %ld...\n",curStream,
1798 lStart[curStream],lFirstVideo);
1799 while (lFirstVideo > lStart[curStream]) {
1803 lBufferSize = cbBuffer;
1814 lFirstVideo - lStart[curStream],
lpBuffer,
1815 cbBuffer, &lReadBytes, &lReadSamples);
1830 lStart[curStream] += lReadSamples;
1832 lStart[curStream] = lFirstVideo;
1836 if (dwInterleave == 1) {
1843 if (lpfnCallback(
MulDiv(dwFileInitialFrames + lCurFrame, 100,
1844 dwFileInitialFrames + lFileLength))) {
1852 for (curStream = 0; curStream <
nStreams; curStream++) {
1867 lBufferSize = cbBuffer;
1881 lReadBytes = cbBuffer;
1884 lpBuffer,cbBuffer,&lReadBytes,&lReadSamples);
1891 if (lReadSamples != 0) {
1892 sInfo.
dwStart += lReadSamples;
1917 lBufferSize = cbBuffer;
1928 lReadBytes = cbBuffer;
1930 lpBuffer, cbBuffer,&lReadBytes,&lReadSamples);
1937 if (lReadSamples != 1) {
1962 if (pfile !=
NULL) {
1963 for (curStream = 0; curStream <
nStreams; curStream++) {
1964 if (pOutStreams[curStream] !=
NULL)
1966 if (pInStreams[curStream] !=
NULL)
1986 if (pStream ==
NULL)
2013 TRACE(
"(%p,%p,%p,%p)\n", pStream, plStart, plLength,
ppResult);
2015 if (pStream ==
NULL)
2042 TRACE(
"(%p,%p,%p,%p)\n", pStream, plStart, plLength,
ppResult);
2046 if (pStream ==
NULL)
2048 if (plStart ==
NULL || plLength ==
NULL)
2071 TRACE(
"(%p,%p,%p,%p,%ld,%ld)\n", pDest, plStart, plLength,
2072 pSource, lStart, lEnd);
2074 if (pDest ==
NULL || pSource ==
NULL)
2076 if (plStart ==
NULL || plLength ==
NULL || lStart < 0)
2098 TRACE(
"(%p,%p,%ld)\n", pstream, asi,
size);
2103 memcpy(&asiw, asi,
sizeof(asiw) -
sizeof(asiw.
szName));
2118 TRACE(
"(%p,%p,%ld)\n", pstream, asi,
size);
2144 if (pstream ==
NULL)
2169 if (pstream ==
NULL)
2199 FIXME(
"(%p), stub!\n", ppfile);
2212 FIXME(
"(0x%08x,%p,%p), stub!\n", cfFormat, hGlobal, ppstream);
2214 if (ppstream ==
NULL)
2225 FIXME(
"(%p), stub!\n", pfile);
2242 TRACE(
"(%s,%p,%p,%d,%p,%p)\n",
debugstr_a(szFile), pclsidHandler, lpfnCallback,
2267 TRACE(
"Pair[%d] - Stream = %p, Options = %p\n",
i, streams[
i],
options[
i]);
2285 TRACE(
"(%s,%p,%p,%d,%p,%p)\n",
debugstr_w(szFile), pclsidHandler, lpfnCallback,
2310 TRACE(
"Pair[%d] - Stream = %p, Options = %p\n",
i, streams[
i],
options[
i]);
PGETFRAME AVIFILE_CreateGetFrame(PAVISTREAM pstream)
#define IDC_INTERLEAVEEVERY
PAVIFILE AVIFILE_CreateAVITempFile(int nStreams, const PAVISTREAM *ppStreams)
#define IDS_ALLMULTIMEDIA
static const WCHAR avifile[]
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static WCHAR wszFilter[MAX_STRING_LEN *4+6 *3+5]
#define RegCloseKey(hKey)
static const WCHAR clsidW[]
LONG WINAPI RegOpenKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
LSTATUS WINAPI RegQueryValueA(HKEY hkey, LPCSTR name, LPSTR data, LPLONG count)
LSTATUS WINAPI RegQueryValueW(HKEY hkey, LPCWSTR name, LPWSTR data, LPLONG count)
LONG WINAPI RegEnumKeyW(HKEY hKey, DWORD dwIndex, LPWSTR lpName, DWORD cbName)
HRESULT WINAPI AVIStreamCreate(PAVISTREAM *ppavi, LONG lParam1, LONG lParam2, LPCLSID pclsidHandler)
HRESULT WINAPI AVIStreamWriteData(PAVISTREAM pstream, DWORD fcc, LPVOID lp, LONG size)
HRESULT WINAPI EditStreamSetInfoA(PAVISTREAM pstream, LPAVISTREAMINFOA asi, LONG size)
struct _AVIFilter AVIFilter
static BOOL AVISaveOptionsFmtChoose(HWND hWnd)
HRESULT WINAPI EditStreamCut(PAVISTREAM pStream, LONG *plStart, LONG *plLength, PAVISTREAM *ppResult)
static void AVISaveOptionsUpdate(HWND hWnd)
BOOL WINAPI AVISaveOptions(HWND hWnd, UINT uFlags, INT nStreams, PAVISTREAM *ppavi, LPAVICOMPRESSOPTIONS *ppOptions)
HRESULT WINAPI EditStreamSetNameA(PAVISTREAM pstream, LPCSTR szName)
HRESULT WINAPI EditStreamClone(PAVISTREAM pStream, PAVISTREAM *ppResult)
HRESULT WINAPI AVIStreamSetFormat(PAVISTREAM pstream, LONG pos, LPVOID format, LONG formatsize)
HRESULT WINAPI AVISaveOptionsFree(INT nStreams, LPAVICOMPRESSOPTIONS *ppOptions)
PGETFRAME WINAPI AVIStreamGetFrameOpen(PAVISTREAM pstream, LPBITMAPINFOHEADER lpbiWanted)
HRESULT WINAPI AVIFileGetStream(PAVIFILE pfile, PAVISTREAM *avis, DWORD fccType, LONG lParam)
HRESULT WINAPI AVIFileOpenW(PAVIFILE *ppfile, LPCWSTR szFile, UINT uMode, LPCLSID lpHandler)
LONG WINAPI AVIStreamLength(PAVISTREAM pstream)
LONG WINAPI AVIStreamEndStreaming(PAVISTREAM pavi)
LONG WINAPI AVIStreamTimeToSample(PAVISTREAM pstream, LONG lTime)
HRESULT WINAPI AVISaveVW(LPCWSTR szFile, CLSID *pclsidHandler, AVISAVECALLBACK lpfnCallback, int nStreams, PAVISTREAM *ppavi, LPAVICOMPRESSOPTIONS *plpOptions)
HRESULT WINAPI AVIMakeCompressedStream(PAVISTREAM *ppsCompressed, PAVISTREAM psSource, LPAVICOMPRESSOPTIONS aco, LPCLSID pclsidHandler)
HRESULT WINAPI AVIFileEndRecord(PAVIFILE pfile)
HRESULT WINAPI AVIBuildFilterA(LPSTR szFilter, LONG cbFilter, BOOL fSaving)
HRESULT WINAPI AVIFileCreateStreamW(PAVIFILE pfile, PAVISTREAM *avis, LPAVISTREAMINFOW asi)
HRESULT WINAPI AVIFileWriteData(PAVIFILE pfile, DWORD fcc, LPVOID lp, LONG size)
HRESULT WINAPI AVISaveVA(LPCSTR szFile, CLSID *pclsidHandler, AVISAVECALLBACK lpfnCallback, int nStream, PAVISTREAM *ppavi, LPAVICOMPRESSOPTIONS *plpOptions)
LONG WINAPI AVIStreamSampleToTime(PAVISTREAM pstream, LONG lSample)
HRESULT WINAPI AVIStreamOpenFromFileW(PAVISTREAM *ppavi, LPCWSTR szFile, DWORD fccType, LONG lParam, UINT mode, LPCLSID pclsidHandler)
LONG WINAPI AVIStreamFindSample(PAVISTREAM pstream, LONG pos, LONG flags)
void WINAPI AVIFileExit(void)
HRESULT WINAPI AVIStreamGetFrameClose(PGETFRAME pg)
ULONG WINAPI AVIStreamAddRef(PAVISTREAM pstream)
HRESULT WINAPI AVIGetFromClipboard(PAVIFILE *ppfile)
static BOOL AVIFILE_GetFileHandlerByExtension(LPCWSTR szFile, LPCLSID lpclsid)
HRESULT WINAPI AVIStreamRead(PAVISTREAM pstream, LONG start, LONG samples, LPVOID buffer, LONG buffersize, LPLONG bytesread, LPLONG samplesread)
HRESULT WINAPI AVIFileOpenA(PAVIFILE *ppfile, LPCSTR szFile, UINT uMode, LPCLSID lpHandler)
HRESULT WINAPI EditStreamSetInfoW(PAVISTREAM pstream, LPAVISTREAMINFOW asi, LONG size)
HRESULT WINAPI AVIBuildFilterW(LPWSTR szFilter, LONG cbFilter, BOOL fSaving)
static INT_PTR CALLBACK AVISaveOptionsDlgProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
HRESULT WINAPI AVIMakeFileFromStreams(PAVIFILE *ppfile, int nStreams, PAVISTREAM *ppStreams)
void WINAPI AVIFileInit(void)
HRESULT WINAPI AVIStreamInfoA(PAVISTREAM pstream, LPAVISTREAMINFOA asi, LONG size)
LONG WINAPI AVIStreamStart(PAVISTREAM pstream)
HRESULT WINAPI EditStreamCopy(PAVISTREAM pStream, LONG *plStart, LONG *plLength, PAVISTREAM *ppResult)
LPVOID WINAPI AVIStreamGetFrame(PGETFRAME pg, LONG pos)
HRESULT WINAPI EditStreamPaste(PAVISTREAM pDest, LONG *plStart, LONG *plLength, PAVISTREAM pSource, LONG lStart, LONG lEnd)
HRESULT WINAPI AVIFileReadData(PAVIFILE pfile, DWORD fcc, LPVOID lp, LPLONG size)
ULONG WINAPI AVIFileRelease(PAVIFILE pfile)
HRESULT WINAPI AVIStreamReadData(PAVISTREAM pstream, DWORD fcc, LPVOID lp, LPLONG lpread)
HRESULT WINAPI AVIStreamOpenFromFileA(PAVISTREAM *ppavi, LPCSTR szFile, DWORD fccType, LONG lParam, UINT mode, LPCLSID pclsidHandler)
HRESULT WINAPI AVIFileCreateStreamA(PAVIFILE pfile, PAVISTREAM *ppavi, LPAVISTREAMINFOA psi)
LPAVICOMPRESSOPTIONS * ppOptions
HRESULT WINAPI AVIFileInfoW(PAVIFILE pfile, LPAVIFILEINFOW afiw, LONG size)
HRESULT WINAPI AVIPutFileOnClipboard(PAVIFILE pfile)
static struct @316 SaveOpts
HRESULT WINAPI EditStreamSetNameW(PAVISTREAM pstream, LPCWSTR szName)
static BOOL WINAPI AVIFILE_AVISaveDefaultCallback(INT progress)
HRESULT WINAPI AVIStreamInfoW(PAVISTREAM pstream, LPAVISTREAMINFOW asi, LONG size)
ULONG WINAPI AVIFileAddRef(PAVIFILE pfile)
HRESULT WINAPI AVIMakeStreamFromClipboard(UINT cfFormat, HANDLE hGlobal, PAVISTREAM *ppstream)
HRESULT WINAPI AVIStreamWrite(PAVISTREAM pstream, LONG start, LONG samples, LPVOID buffer, LONG buffersize, DWORD flags, LPLONG sampwritten, LPLONG byteswritten)
HRESULT WINAPI AVIFileInfoA(PAVIFILE pfile, LPAVIFILEINFOA afi, LONG size)
HRESULT WINAPI AVIStreamReadFormat(PAVISTREAM pstream, LONG pos, LPVOID format, LPLONG formatsize)
HRESULT WINAPI AVIClearClipboard(void)
LONG WINAPI AVIStreamBeginStreaming(PAVISTREAM pavi, LONG lStart, LONG lEnd, LONG lRate)
HRESULT WINAPIV AVISaveA(LPCSTR szFile, CLSID *pclsidHandler, AVISAVECALLBACK lpfnCallback, int nStreams, PAVISTREAM pavi, LPAVICOMPRESSOPTIONS lpOptions,...)
ULONG WINAPI AVIStreamRelease(PAVISTREAM pstream)
static HRESULT AVIFILE_CLSIDFromString(LPCSTR idstr, LPCLSID id)
HRESULT WINAPIV AVISaveW(LPCWSTR szFile, CLSID *pclsidHandler, AVISAVECALLBACK lpfnCallback, int nStreams, PAVISTREAM pavi, LPAVICOMPRESSOPTIONS lpOptions,...)
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, IUnknown *outer, DWORD cls_context, REFIID riid, void **obj)
#define WideCharToMultiByte
#define MultiByteToWideChar
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
HRESULT WINAPI DECLSPEC_HOTPATCH OleInitialize(LPVOID reserved)
GLuint GLuint GLsizei count
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
int WINAPI lstrlenA(LPCSTR lpString)
#define memcpy(s1, s2, n)
struct _WAVEFORMATEX * PWAVEFORMATEX
struct pcmwaveformat_tag PCMWAVEFORMAT
static const WCHAR wszFile[]
MMRESULT WINAPI acmMetrics(HACMOBJ hao, UINT uMetric, LPVOID pMetric)
#define ACM_FORMATENUMF_CONVERT
#define ACM_METRIC_MAX_SIZE_FORMAT
#define ACM_FORMATTAGDETAILSF_FORMATTAG
#define ACM_FORMATDETAILSF_FORMAT
LRESULT VFWAPI ICGetInfo(HIC hic, ICINFO *picinfo, DWORD cb)
HIC VFWAPI ICLocate(DWORD type, DWORD handler, BITMAPINFOHEADER *in, BITMAPINFOHEADER *out, WORD mode)
void VFWAPI ICCompressorFree(PCOMPVARS pc)
BOOL VFWAPI ICCompressorChoose(HWND hwnd, UINT uiFlags, LPVOID pvIn, LPVOID lpData, PCOMPVARS pc, LPSTR lpszTitle)
LRESULT WINAPI ICClose(HIC hic)
INT WINAPI MulDiv(INT nNumber, INT nNumerator, INT nDenominator)
enum _tagppResult ppResult
_In_ LPWSTR _In_ DWORD _In_ DWORD _In_ DWORD dwFlags
const GUID IID_IPersistFile
static const WCHAR szName[]
WCHAR szExtensions[MAX_FILTERS *7]
#define IAVIStream_SetFormat(p, a, b, c)
#define ICMODE_DECOMPRESS
#define AVICOMPRESSF_VALID
#define IAVIStream_AddRef(p)
#define IAVIStream_WriteData(p, a, b, c)
#define IAVIStream_QueryInterface(p, a, b)
#define AVIERR_UNSUPPORTED
#define AVIStreamSampleToSample(pavi1, pavi2, samp2)
#define ICQUALITY_DEFAULT
#define IGetFrame_SetFormat(p, a, b, c, d, e, f)
#define AVICOMPRESSF_KEYFRAMES
#define AVICOMPRESSF_DATARATE
#define IAVIEditStream_Copy(p, a, b, c)
#define IAVIEditStream_Clone(p, a)
#define IAVIStream_Read(p, a, b, c, d, e, f)
struct IAVIEditStream * PAVIEDITSTREAM
#define IAVIStreaming_Release(p)
#define IAVIEditStream_SetInfo(p, a, b)
#define IGetFrame_GetFrame(p, a)
#define IAVIStream_ReadFormat(p, a, b, c)
#define IAVIFile_ReadData(p, a, b, c)
#define IAVIFile_QueryInterface(p, a, b)
#define IGetFrame_Release(p)
#define ckidSTREAMHANDLERDATA
#define IAVIFile_Info(p, a, b)
#define IAVIFile_GetStream(p, a, b, c)
BOOL(CALLBACK * AVISAVECALLBACK)(INT)
#define IAVIFile_WriteData(p, a, b, c)
#define IAVIStream_ReadData(p, a, b, c)
#define IAVIFile_Release(p)
#define ICMF_COMPVARS_VALID
#define AVIStreamFormatSize(pavi, lPos, plSize)
#define AVIStreamEnd(pavi)
#define AVICOMPRESSF_INTERLEAVE
#define AVIStreamIsKeyFrame(pavi, pos)
#define IAVIStream_Create(p, a, b)
#define IAVIEditStream_Paste(p, a, b, c, d, e)
#define IAVIEditStream_Cut(p, a, b, c)
#define IAVIFile_AddRef(p)
#define AVIERR_BUFFERTOOSMALL
#define IAVIStream_Write(p, a, b, c, d, e, f, g)
#define IAVIFile_EndRecord(p)
#define AVIFILECAPS_ALLKEYFRAMES
#define IAVIStream_Release(p)
#define IAVIStreaming_End(p)
#define IAVIStream_Info(p, a, b)
#define IAVIStreaming_Begin(p, a, b, c)
struct IGetFrame * PGETFRAME
#define IAVIFile_CreateStream(p, a, b)
#define IAVIEditStream_Release(p)
#define IAVIStream_FindSample(p, a, b)
#define OF_SHARE_EXCLUSIVE
#define HKEY_CLASSES_ROOT
BOOL WINAPI CheckDlgButton(_In_ HWND, _In_ int, _In_ UINT)
int WINAPIV wsprintfW(_Out_ LPWSTR, _In_ _Printf_format_string_ LPCWSTR,...)
#define DialogBoxW(i, t, p, f)
BOOL WINAPI SetDlgItemTextW(_In_ HWND, _In_ int, _In_ LPCWSTR)
int WINAPIV wsprintfA(_Out_ LPSTR, _In_ _Printf_format_string_ LPCSTR,...)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
LRESULT WINAPI SendDlgItemMessageW(_In_ HWND, _In_ int, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
UINT WINAPI IsDlgButtonChecked(_In_ HWND, _In_ int)
BOOL WINAPI SetDlgItemInt(_In_ HWND, _In_ int, _In_ UINT, _In_ BOOL)
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
UINT WINAPI GetDlgItemInt(_In_ HWND, _In_ int, _Out_opt_ PBOOL, _In_ BOOL)
#define MAKEINTRESOURCEW(i)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)