41 TRACE(
"ash.fccHandler=0, no handler specified\n");
61 WARN(
"Can't find 'strf' chunk\n");
65 WARN(
"Size of strf chunk (%d) < audio format struct\n", mmckInfo.
cksize);
70 WARN(
"Can't alloc WaveFormat\n");
119 WARN(
"Can't find 'strf' chunk\n");
125 WARN(
"Can't alloc input BIH\n");
170 WARN(
"wrongly encoded stream #\n");
174 stream_n = (
p[0] <=
'9') ? (
p[0] -
'0') : (
tolower(
p[0]) -
'a' + 10);
176 stream_n |= (
p[1] <=
'9') ? (
p[1] -
'0') : (
tolower(
p[1]) -
'a' + 10);
200 TRACE(
"data belongs to another video stream #%d\n", stream_n);
204 TRACE(
"Adding video frame[%d]: %d bytes\n",
214 WARN(
"Too many video frames\n");
220 TRACE(
"data belongs to another audio stream #%d\n", stream_n);
224 TRACE(
"Adding audio frame[%d]: %d bytes\n",
235 if (!newindex)
return FALSE;
245 WARN(
"Wave chunk without wave format... discarding\n");
266 WARN(
"Can't find 'RIFF' chunk\n");
271 WARN(
"Can't find 'AVI ' chunk\n");
277 WARN(
"Can't find 'hdrl' list\n");
283 WARN(
"Can't find 'avih' chunk\n");
302 TRACE(
"Start of streams\n");
306 for (stream_n = 0; stream_n < wma->
mah.
dwStreams; stream_n++)
317 WARN(
"Can't find 'strh' chunk\n");
323 TRACE(
"Stream #%d fccType %4.4s\n", stream_n, (
LPSTR)&strh.fccType);
327 TRACE(
"found video stream\n");
329 WARN(
"ignoring another video stream\n");
342 TRACE(
"found audio stream\n");
344 WARN(
"ignoring another audio stream\n");
356 TRACE(
"Unsupported stream type %4.4s\n", (
LPSTR)&strh.fccType);
361 TRACE(
"End of streams\n");
369 WARN(
"Can't find 'movi' list\n");
377 WARN(
"Can't alloc video index array\n");
405 WARN(
"NumVideoFrames: %u, Empty or possibly corrupt video file");
411 WARN(
"AVI header says %d frames, we found %d video frames, reducing playable frames\n",
428 WARN(
"Can't alloc input buffer\n");
459 WARN(
"Can't locate codec for the file\n");
467 WARN(
"Can't alloc output BIH\n");
471 WARN(
"Can't open decompressor\n");
489 WARN(
"Can't alloc output buffer\n");
495 WARN(
"Can't begin decompression\n");
524 TRACE(
"Returning waveHdr=%lx\n", dwParam1);
528 ERR(
"Unknown uMsg=%d\n", uMsg);
543 TRACE(
"Can't open low level audio device %d\n", dwRet);
556 TRACE(
"Can't alloc wave headers\n");
561 for (
i = 0;
i < *nHdr;
i++) {
563 waveHdr[
i].
lpData = (
char*)waveHdr +
573 FIXME(
"Should recompute dwCurrAudioBlock, except unsynchronized sound & video\n");
606 waveHdr[whidx].
dwFlags &= ~WHDR_DONE;
645 WARN(
"Decompression error\n");
657 pBitmapData = wma->
indata;
#define InterlockedIncrement
#define InterlockedDecrement
#define TWOCCFromFOURCC(fcc)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
MMRESULT WINAPI mmioAscend(HMMIO hmmio, LPMMCKINFO lpck, UINT uFlags)
LONG WINAPI mmioSeek(HMMIO hmmio, LONG lOffset, INT iOrigin)
MMRESULT WINAPI mmioDescend(HMMIO hmmio, LPMMCKINFO lpck, const MMCKINFO *lpckParent, UINT uFlags)
LONG WINAPI mmioRead(HMMIO hmmio, HPSTR pch, LONG cch)
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
WINE_MCIAVI * MCIAVI_mciGetOpenDev(UINT wDevID)
void MCIAVI_PlayAudioBlocks(WINE_MCIAVI *wma, unsigned nHdr, LPWAVEHDR waveHdr)
static BOOL MCIAVI_AddFrame(WINE_MCIAVI *wma, LPMMCKINFO mmck, struct AviListBuild *alb)
static void CALLBACK MCIAVI_waveCallback(HWAVEOUT hwo, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2)
DWORD MCIAVI_OpenAudio(WINE_MCIAVI *wma, unsigned *nHdr, LPWAVEHDR *pWaveHdr)
static BOOL MCIAVI_GetInfoAudio(WINE_MCIAVI *wma, const MMCKINFO *mmckList, MMCKINFO *mmckStream)
static BOOL MCIAVI_GetInfoVideo(WINE_MCIAVI *wma, const MMCKINFO *mmckList, MMCKINFO *mmckStream)
double MCIAVI_PaintFrame(WINE_MCIAVI *wma, HDC hDC)
BOOL MCIAVI_GetInfo(WINE_MCIAVI *wma)
BOOL MCIAVI_OpenVideo(WINE_MCIAVI *wma)
#define MCIERR_DEVICE_OPEN
#define mmioFOURCC(c0, c1, c2, c3)
#define CALLBACK_FUNCTION
#define MCI_MODE_NOT_READY
DWORD VFWAPIV ICDecompress(HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiFormat, LPVOID lpData, LPBITMAPINFOHEADER lpbi, LPVOID lpBits)
LRESULT VFWAPI ICSendMessage(HIC hic, UINT msg, DWORD_PTR lParam1, DWORD_PTR lParam2)
HIC VFWAPI ICLocate(DWORD type, DWORD handler, BITMAPINFOHEADER *in, BITMAPINFOHEADER *out, WORD mode)
HIC VFWAPI ICGetDisplayFormat(HIC hic, BITMAPINFOHEADER *in, BITMAPINFOHEADER *out, int depth, int width, int height)
LPWAVEFORMATEX lpWaveFormat
LPBITMAPINFOHEADER outbih
AVIStreamHeader ash_audio
struct MMIOPos * lpVideoIndex
DWORD dwPlayableVideoFrames
struct MMIOPos * lpAudioIndex
DWORD dwPlayableAudioBlocks
AVIStreamHeader ash_video
DWORD dwSuggestedBufferSize
DWORD dwPaddingGranularity
HANDLE WINAPI DECLSPEC_HOTPATCH CreateEventW(IN LPSECURITY_ATTRIBUTES lpEventAttributes OPTIONAL, IN BOOL bManualReset, IN BOOL bInitialState, IN LPCWSTR lpName OPTIONAL)
BOOL WINAPI DECLSPEC_HOTPATCH SetEvent(IN HANDLE hEvent)
BOOL WINAPI DECLSPEC_HOTPATCH ResetEvent(IN HANDLE hEvent)
#define ICMODE_DECOMPRESS
#define listtypeSTREAMHEADER
#define listtypeAVIRECORD
#define cktypeDIBcompressed
#define listtypeAVIHEADER
#define ICM_DECOMPRESS_BEGIN
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
struct tagBITMAPINFO * LPBITMAPINFO
int WINAPI StretchDIBits(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_opt_ const VOID *, _In_ const BITMAPINFO *, _In_ UINT, _In_ DWORD)
UINT WINAPI waveOutWrite(HWAVEOUT hWaveOut, LPWAVEHDR lpWaveOutHdr, UINT uSize)
MMRESULT WINAPI waveOutOpen(LPHWAVEOUT lphWaveOut, UINT uDeviceID, LPCWAVEFORMATEX lpFormat, DWORD_PTR dwCallback, DWORD_PTR dwInstance, DWORD dwFlags)
UINT WINAPI waveOutPrepareHeader(HWAVEOUT hWaveOut, WAVEHDR *lpWaveOutHdr, UINT uSize)
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
HDC WINAPI GetDC(_In_opt_ HWND)
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)