Changeset 3925 for trunk/src/msacm32/stream.cpp
- Timestamp:
- Aug 2, 2000, 5:51:35 PM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/msacm32/stream.cpp
r2103 r3925 1 /* $Id: stream.cpp,v 1.3 2000-08-02 15:49:32 bird Exp $ */ 1 2 /* -*- tab-width: 8; c-basic-offset: 4 -*- */ 2 3 … … 27 28 28 29 DEFAULT_DEBUG_CHANNEL(msacm) 29 30 30 31 static PWINE_ACMSTREAM ACM_GetStream(HACMSTREAM has) 31 32 { … … 40 41 PWINE_ACMSTREAM was; 41 42 MMRESULT ret; 42 43 43 44 dprintf(("(0x%08x, %ld)\n", has, fdwClose)); 44 45 45 46 if ((was = ACM_GetStream(has)) == NULL) { 46 47 return MMSYSERR_INVALHANDLE; … … 49 50 if (ret == MMSYSERR_NOERROR) { 50 51 if (was->hAcmDriver) 51 acmDriverClose(was->hAcmDriver, 0L); 52 acmDriverClose(was->hAcmDriver, 0L); 52 53 HeapFree(MSACM_hHeap, 0, was); 53 54 } … … 59 60 * acmStreamConvert (MSACM32.38) 60 61 */ 61 MMRESULT WINAPI acmStreamConvert(HACMSTREAM has, PACMSTREAMHEADER pash, 62 MMRESULT WINAPI acmStreamConvert(HACMSTREAM has, PACMSTREAMHEADER pash, 62 63 DWORD fdwConvert) 63 64 { … … 67 68 68 69 dprintf(("(0x%08x, %p, %ld)\n", has, pash, fdwConvert)); 69 70 70 71 if ((was = ACM_GetStream(has)) == NULL) 71 72 return MMSYSERR_INVALHANDLE; … … 88 89 padsh->cbPreparedDstLength < padsh->cbDstLength) { 89 90 return MMSYSERR_INVALPARAM; 90 } 91 } 91 92 92 93 padsh->fdwConvert = fdwConvert; … … 103 104 * acmStreamMessage (MSACM32.39) 104 105 */ 105 MMRESULT WINAPI acmStreamMessage(HACMSTREAM has, UINT uMsg, LPARAM lParam1, 106 MMRESULT WINAPI acmStreamMessage(HACMSTREAM has, UINT uMsg, LPARAM lParam1, 106 107 LPARAM lParam2) 107 108 { … … 123 124 int wfxSrcSize; 124 125 int wfxDstSize; 125 126 126 127 dprintf(("(%p, 0x%08x, %p, %p, %p, %ld, %ld, %ld)\n", 127 128 phas, had, pwfxSrc, pwfxDst, pwfltr, dwCallback, dwInstance, fdwOpen)); 128 129 129 dprintf(("src [wFormatTag=%u, nChannels=%u, nSamplesPerSec=%lu, nAvgBytesPerSec=%lu, nBlockAlign=%u, wBitsPerSample=%u, cbSize=%u]\n", 130 pwfxSrc->wFormatTag, pwfxSrc->nChannels, pwfxSrc->nSamplesPerSec, pwfxSrc->nAvgBytesPerSec, 130 dprintf(("src [wFormatTag=%u, nChannels=%u, nSamplesPerSec=%lu, nAvgBytesPerSec=%lu, nBlockAlign=%u, wBitsPerSample=%u, cbSize=%u]\n", 131 pwfxSrc->wFormatTag, pwfxSrc->nChannels, pwfxSrc->nSamplesPerSec, pwfxSrc->nAvgBytesPerSec, 131 132 pwfxSrc->nBlockAlign, pwfxSrc->wBitsPerSample, pwfxSrc->cbSize)); 132 133 133 dprintf(("dst [wFormatTag=%u, nChannels=%u, nSamplesPerSec=%lu, nAvgBytesPerSec=%lu, nBlockAlign=%u, wBitsPerSample=%u, cbSize=%u]\n", 134 pwfxDst->wFormatTag, pwfxDst->nChannels, pwfxDst->nSamplesPerSec, pwfxDst->nAvgBytesPerSec, 134 dprintf(("dst [wFormatTag=%u, nChannels=%u, nSamplesPerSec=%lu, nAvgBytesPerSec=%lu, nBlockAlign=%u, wBitsPerSample=%u, cbSize=%u]\n", 135 pwfxDst->wFormatTag, pwfxDst->nChannels, pwfxDst->nSamplesPerSec, pwfxDst->nAvgBytesPerSec, 135 136 pwfxDst->nBlockAlign, pwfxDst->wBitsPerSample, pwfxDst->cbSize)); 136 137 … … 143 144 if (was == NULL) 144 145 return MMSYSERR_NOMEM; 145 146 146 147 was->drvInst.cbStruct = sizeof(was->drvInst); 147 148 was->drvInst.pwfxSrc = (PWAVEFORMATEX)((LPSTR)was + sizeof(*was)); … … 155 156 was->drvInst.pwfltr = NULL; 156 157 } 157 was->drvInst.dwCallback = dwCallback; 158 was->drvInst.dwCallback = dwCallback; 158 159 was->drvInst.dwInstance = dwInstance; 159 160 was->drvInst.fdwOpen = fdwOpen; 160 was->drvInst.fdwDriver = 0L; 161 was->drvInst.dwDriver = 0L; 161 was->drvInst.fdwDriver = 0L; 162 was->drvInst.dwDriver = 0L; 162 163 was->drvInst.has = (HACMSTREAM)was; 163 164 164 165 if (had) { 165 166 if (!(wad = MSACM_GetDriver(had))) { … … 167 168 goto errCleanUp; 168 169 } 169 170 170 171 was->obj.pACMDriverID = wad->obj.pACMDriverID; 171 172 was->pDrv = wad; … … 177 178 } else { 178 179 PWINE_ACMDRIVERID wadi; 179 180 180 181 ret = ACMERR_NOTPOSSIBLE; 181 182 for (wadi = MSACM_pFirstACMDriverID; wadi; wadi = wadi->pNextACMDriverID) { … … 186 187 was->pDrv = wad; 187 188 was->hAcmDriver = had; 188 189 189 190 ret = SendDriverMessage(wad->hDrvr, ACMDM_STREAM_OPEN, (DWORD)&was->drvInst, 0L); 190 191 if (ret == MMSYSERR_NOERROR) { … … 211 212 return ret; 212 213 } 213 errCleanUp: 214 errCleanUp: 214 215 if (phas) 215 216 *phas = (HACMSTREAM)0; … … 223 224 * acmStreamPrepareHeader (MSACM32.41) 224 225 */ 225 MMRESULT WINAPI acmStreamPrepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash, 226 MMRESULT WINAPI acmStreamPrepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash, 226 227 DWORD fdwPrepare) 227 228 { … … 231 232 232 233 dprintf(("(0x%08x, %p, %ld)\n", has, pash, fdwPrepare)); 233 234 234 235 if ((was = ACM_GetStream(has)) == NULL) 235 236 return MMSYSERR_INVALHANDLE; … … 306 307 * acmStreamSize (MSACM32.43) 307 308 */ 308 MMRESULT WINAPI acmStreamSize(HACMSTREAM has, DWORD cbInput, 309 MMRESULT WINAPI acmStreamSize(HACMSTREAM has, DWORD cbInput, 309 310 LPDWORD pdwOutputBytes, DWORD fdwSize) 310 311 { … … 312 313 ACMDRVSTREAMSIZE adss; 313 314 MMRESULT ret; 314 315 315 316 dprintf(("(0x%08x, %ld, %p, %ld)\n", has, cbInput, pdwOutputBytes, fdwSize)); 316 317 317 318 if ((was = ACM_GetStream(has)) == NULL) { 318 319 return MMSYSERR_INVALHANDLE; … … 323 324 324 325 *pdwOutputBytes = 0L; 325 326 326 327 switch (fdwSize & ACM_STREAMSIZEF_QUERYMASK) { 327 328 case ACM_STREAMSIZEF_DESTINATION: … … 333 334 adss.cbDstLength = 0; 334 335 break; 335 default: 336 default: 336 337 return MMSYSERR_INVALFLAG; 337 338 } 338 339 339 340 adss.cbStruct = sizeof(adss); 340 341 adss.fdwSize = fdwSize; 341 ret = SendDriverMessage(was->pDrv->hDrvr, ACMDM_STREAM_SIZE, 342 ret = SendDriverMessage(was->pDrv->hDrvr, ACMDM_STREAM_SIZE, 342 343 (DWORD)&was->drvInst, (DWORD)&adss); 343 344 if (ret == MMSYSERR_NOERROR) { … … 358 359 * acmStreamUnprepareHeader (MSACM32.44) 359 360 */ 360 MMRESULT WINAPI acmStreamUnprepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash, 361 MMRESULT WINAPI acmStreamUnprepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash, 361 362 DWORD fdwUnprepare) 362 363 { … … 366 367 367 368 dprintf(("(0x%08x, %p, %ld)\n", has, pash, fdwUnprepare)); 368 369 369 370 if ((was = ACM_GetStream(has)) == NULL) 370 371 return MMSYSERR_INVALHANDLE; … … 387 388 padsh->cbPreparedDstLength < padsh->cbDstLength) { 388 389 return MMSYSERR_INVALPARAM; 389 } 390 } 390 391 391 392 padsh->fdwConvert = fdwUnprepare;
Note:
See TracChangeset
for help on using the changeset viewer.