- Timestamp:
- May 28, 2002, 4:09:25 PM (23 years ago)
- Location:
- trunk/src/winmm
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/winmm/mixer.cpp
r8506 r8508 1 /* $Id: mixer.cpp,v 1.2 1 2002-05-28 13:35:02sandervl Exp $ */1 /* $Id: mixer.cpp,v 1.22 2002-05-28 14:09:24 sandervl Exp $ */ 2 2 3 3 /* … … 212 212 DWORD dwLevelL; 213 213 214 #ifdef DEBUG 214 215 switch(fdwDetails & MIXER_GETCONTROLDETAILSF_QUERYMASK) { 215 216 case MIXERCONTROL_CONTROLTYPE_TREBLE: … … 220 221 break; 221 222 } 223 #endif 222 224 223 225 if(OSLibMixGetVolume(mixerControls[lpmcd->dwControlID].id, &dwLevelL, NULL) == FALSE) { -
trunk/src/winmm/wavein.cpp
r8470 r8508 1 /* $Id: wavein.cpp,v 1.1 1 2002-05-22 15:50:26sandervl Exp $ */1 /* $Id: wavein.cpp,v 1.12 2002-05-28 14:09:24 sandervl Exp $ */ 2 2 3 3 /* … … 47 47 return(WAVERR_BADFORMAT); 48 48 49 if(fdwOpen == WAVE_FORMAT_QUERY) { 49 if(fdwOpen & WAVE_FORMAT_QUERY) 50 { 50 51 if(DartWaveIn::queryFormat(pwfx->wFormatTag, pwfx->nChannels, pwfx->nSamplesPerSec, 51 52 pwfx->wBitsPerSample) == TRUE) -
trunk/src/winmm/waveindart.cpp
r8202 r8508 1 /* $Id: waveindart.cpp,v 1. 3 2002-04-07 14:36:31sandervl Exp $ */1 /* $Id: waveindart.cpp,v 1.4 2002-05-28 14:09:25 sandervl Exp $ */ 2 2 3 3 /* … … 373 373 ULONG DartWaveIn::getPosition() 374 374 { 375 MCI_STATUS_PARMS mciStatus = {0};376 ULONG rc, nrbytes;375 MCI_STATUS_PARMS mciStatus = {0}; 376 ULONG rc, nrbytes; 377 377 378 378 mciStatus.ulItem = MCI_STATUS_POSITION; … … 389 389 int DartWaveIn::getNumDevices() 390 390 { 391 MCI_GENERIC_PARMS GenericParms;392 MCI_AMP_OPEN_PARMS AmpOpenParms;393 APIRET rc;391 MCI_GENERIC_PARMS GenericParms; 392 MCI_AMP_OPEN_PARMS AmpOpenParms; 393 APIRET rc; 394 394 395 395 // Setup the open structure, pass the playlist and tell MCI_OPEN to use it … … 421 421 ULONG nSamplesPerSec, ULONG wBitsPerSample) 422 422 { 423 MCI_WAVE_GETDEVCAPS_PARMS mciAudioCaps;424 MCI_GENERIC_PARMS GenericParms;425 MCI_OPEN_PARMS mciOpenParms; /* open parms for MCI_OPEN */426 int i, freqbits = 0;427 ULONG rc, DeviceId;428 BOOL winrc;429 430 dprintf(("DartWaveIn::queryFormat %x srate=%d, nchan=%d, bps=%d", formatTag, nSamplesPerSec, nChannels, wBitsPerSample));431 432 memset(&mciOpenParms, /* Object to fill with zeros. */433 0, /* Value to place into the object. */434 sizeof( mciOpenParms ) ); /* How many zero's to use. */435 436 mciOpenParms.pszDeviceType = (PSZ)MCI_DEVTYPE_WAVEFORM_AUDIO;437 438 rc = mymciSendCommand( (USHORT) 0,439 MCI_OPEN,440 MCI_WAIT | MCI_OPEN_TYPE_ID,441 (PVOID) &mciOpenParms,442 0);443 if((rc & 0xFFFF) != MCIERR_SUCCESS) {423 MCI_WAVE_GETDEVCAPS_PARMS mciAudioCaps; 424 MCI_GENERIC_PARMS GenericParms; 425 MCI_OPEN_PARMS mciOpenParms; /* open parms for MCI_OPEN */ 426 int i, freqbits = 0; 427 ULONG rc, DeviceId; 428 BOOL winrc; 429 430 dprintf(("DartWaveIn::queryFormat %x srate=%d, nchan=%d, bps=%d", formatTag, nSamplesPerSec, nChannels, wBitsPerSample)); 431 432 memset(&mciOpenParms, /* Object to fill with zeros. */ 433 0, /* Value to place into the object. */ 434 sizeof( mciOpenParms ) ); /* How many zero's to use. */ 435 436 mciOpenParms.pszDeviceType = (PSZ)MCI_DEVTYPE_WAVEFORM_AUDIO; 437 438 rc = mymciSendCommand( (USHORT) 0, 439 MCI_OPEN, 440 MCI_WAIT | MCI_OPEN_TYPE_ID, 441 (PVOID) &mciOpenParms, 442 0); 443 if((rc & 0xFFFF) != MCIERR_SUCCESS) { 444 444 mciError(rc); 445 445 return(FALSE); 446 }447 DeviceId = mciOpenParms.usDeviceID;448 449 memset( &mciAudioCaps , 0, sizeof(MCI_WAVE_GETDEVCAPS_PARMS));450 451 mciAudioCaps.ulBitsPerSample = wBitsPerSample;452 mciAudioCaps.ulFormatTag = DATATYPE_WAVEFORM;453 mciAudioCaps.ulSamplesPerSec = nSamplesPerSec;454 mciAudioCaps.ulChannels = nChannels;455 mciAudioCaps.ulFormatMode = MCI_RECORD;456 mciAudioCaps.ulItem = MCI_GETDEVCAPS_WAVE_FORMAT;457 458 rc = mymciSendCommand(DeviceId, /* Device ID */459 MCI_GETDEVCAPS,460 MCI_WAIT | MCI_GETDEVCAPS_EXTENDED | MCI_GETDEVCAPS_ITEM,461 (PVOID) &mciAudioCaps,462 0);463 if((rc & 0xFFFF) != MCIERR_SUCCESS) {446 } 447 DeviceId = mciOpenParms.usDeviceID; 448 449 memset( &mciAudioCaps , 0, sizeof(MCI_WAVE_GETDEVCAPS_PARMS)); 450 451 mciAudioCaps.ulBitsPerSample = wBitsPerSample; 452 mciAudioCaps.ulFormatTag = DATATYPE_WAVEFORM; 453 mciAudioCaps.ulSamplesPerSec = nSamplesPerSec; 454 mciAudioCaps.ulChannels = nChannels; 455 mciAudioCaps.ulFormatMode = MCI_RECORD; 456 mciAudioCaps.ulItem = MCI_GETDEVCAPS_WAVE_FORMAT; 457 458 rc = mymciSendCommand(DeviceId, /* Device ID */ 459 MCI_GETDEVCAPS, 460 MCI_WAIT | MCI_GETDEVCAPS_EXTENDED | MCI_GETDEVCAPS_ITEM, 461 (PVOID) &mciAudioCaps, 462 0); 463 if((rc & 0xFFFF) != MCIERR_SUCCESS) { 464 464 mciError(rc); 465 465 winrc = FALSE; 466 }467 else winrc = TRUE;468 469 // Close the device470 mymciSendCommand(DeviceId,MCI_CLOSE,MCI_WAIT,(PVOID)&GenericParms,0);471 return(winrc);466 } 467 else winrc = TRUE; 468 469 // Close the device 470 mymciSendCommand(DeviceId,MCI_CLOSE,MCI_WAIT,(PVOID)&GenericParms,0); 471 return(winrc); 472 472 } 473 473 /******************************************************************************/ … … 489 489 void DartWaveIn::handler(ULONG ulStatus, PMCI_MIX_BUFFER pBuffer, ULONG ulFlags) 490 490 { 491 ULONG buflength, bufpos, bytestocopy; 492 WAVEHDR *whdr, *prevhdr = NULL; 491 ULONG buflength, bufpos, bytestocopy; 493 492 494 493 dprintf2(("WINMM: DartWaveIn handler %x\n", pBuffer)); … … 507 506 wmutex.enter(); 508 507 509 whdr = wavehdr; 510 if(whdr == NULL) { 508 if(wavehdr == NULL) { 511 509 wmutex.leave(); 512 510 //last buffer recorded -> no new ones -> overrun … … 520 518 while(buflength) { 521 519 if(wavehdr) { 520 dprintf2(("WINMM: DartWaveIn handler: bytes recorded %d, buffer length %d, room %d", buflength, wavehdr->dwBufferLength, wavehdr->dwBytesRecorded)); 522 521 bytestocopy = min(buflength, wavehdr->dwBufferLength - wavehdr->dwBytesRecorded); 523 522 if(bytestocopy) { … … 532 531 if(wavehdr->dwBytesRecorded == wavehdr->dwBufferLength) 533 532 { 533 WAVEHDR *whdr = wavehdr; 534 534 535 dprintf2(("WINMM: DartWaveIn handler buf %X done\n", whdr)); 535 536 whdr->dwFlags |= WHDR_DONE; … … 552 553 // MCI_MIXSETUP_PARMS->pMixWrite does alter FS: selector! 553 554 USHORT selTIB = GetFS(); // save current FS selector 554 MixSetupParms->pmix Write(MixSetupParms->ulMixHandle, pBuffer, 1);555 MixSetupParms->pmixRead(MixSetupParms->ulMixHandle, pBuffer, 1); 555 556 SetFS(selTIB); // switch back to the saved FS selector 556 557 } -
trunk/src/winmm/waveout.cpp
r8470 r8508 1 /* $Id: waveout.cpp,v 1.2 3 2002-05-22 15:50:26sandervl Exp $ */1 /* $Id: waveout.cpp,v 1.24 2002-05-28 14:09:25 sandervl Exp $ */ 2 2 //#undef DEBUG 3 3 /* … … 49 49 return(WAVERR_BADFORMAT); 50 50 51 if(fdwOpen == WAVE_FORMAT_QUERY)51 if(fdwOpen & WAVE_FORMAT_QUERY) 52 52 { 53 53 if(DartWaveOut::queryFormat(pwfx->wFormatTag, pwfx->nChannels, pwfx->nSamplesPerSec,
Note:
See TracChangeset
for help on using the changeset viewer.