comparison src/audio/windx5/SDL_dx5audio.c @ 217:add626b825bb

Use the sticky focus flag so audio isn't muted when application is switched.
author Sam Lantinga <slouken@libsdl.org>
date Thu, 25 Oct 2001 08:45:17 +0000
parents 7c47e511459d
children e8157fcb3114
comparison
equal deleted inserted replaced
216:e2a10730ae94 217:add626b825bb
439 439
440 /* Try to create the primary buffer */ 440 /* Try to create the primary buffer */
441 memset(&format, 0, sizeof(format)); 441 memset(&format, 0, sizeof(format));
442 format.dwSize = sizeof(format); 442 format.dwSize = sizeof(format);
443 format.dwFlags=(DSBCAPS_PRIMARYBUFFER|DSBCAPS_GETCURRENTPOSITION2); 443 format.dwFlags=(DSBCAPS_PRIMARYBUFFER|DSBCAPS_GETCURRENTPOSITION2);
444 format.dwFlags |= DSBCAPS_STICKYFOCUS;
444 #ifdef USE_POSITION_NOTIFY 445 #ifdef USE_POSITION_NOTIFY
445 format.dwFlags |= DSBCAPS_CTRLPOSITIONNOTIFY; 446 format.dwFlags |= DSBCAPS_CTRLPOSITIONNOTIFY;
446 #endif 447 #endif
447 result = IDirectSound_CreateSoundBuffer(sndObj, &format, sndbuf, NULL); 448 result = IDirectSound_CreateSoundBuffer(sndObj, &format, sndbuf, NULL);
448 if ( result != DS_OK ) { 449 if ( result != DS_OK ) {
523 #ifdef USE_POSITION_NOTIFY 524 #ifdef USE_POSITION_NOTIFY
524 format.dwFlags |= DSBCAPS_CTRLPOSITIONNOTIFY; 525 format.dwFlags |= DSBCAPS_CTRLPOSITIONNOTIFY;
525 #endif 526 #endif
526 if ( ! focus ) { 527 if ( ! focus ) {
527 format.dwFlags |= DSBCAPS_GLOBALFOCUS; 528 format.dwFlags |= DSBCAPS_GLOBALFOCUS;
529 } else {
530 format.dwFlags |= DSBCAPS_STICKYFOCUS;
528 } 531 }
529 format.dwBufferBytes = numchunks*chunksize; 532 format.dwBufferBytes = numchunks*chunksize;
530 if ( (format.dwBufferBytes < DSBSIZE_MIN) || 533 if ( (format.dwBufferBytes < DSBSIZE_MIN) ||
531 (format.dwBufferBytes > DSBSIZE_MAX) ) { 534 (format.dwBufferBytes > DSBSIZE_MAX) ) {
532 SDL_SetError("Sound buffer size must be between %d and %d", 535 SDL_SetError("Sound buffer size must be between %d and %d",