Changeset 59097 in vbox for trunk/src/VBox/Devices/Audio
- Timestamp:
- Dec 11, 2015 3:43:12 PM (9 years ago)
- svn:sync-xref-src-repo-rev:
- 104663
- Location:
- trunk/src/VBox/Devices/Audio
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Audio/DrvAudio.cpp
r59086 r59097 429 429 } 430 430 431 case PDMAUDIOSTREAMCMD_PAUSE: 432 { 433 if (!(pHstStrmIn->fStatus & PDMAUDIOSTRMSTS_FLAG_PAUSED)) 434 { 435 Assert(pHstStrmIn->fStatus & PDMAUDIOSTRMSTS_FLAG_ENABLED); 436 rc = pThis->pHostDrvAudio->pfnControlIn(pThis->pHostDrvAudio, pHstStrmIn, PDMAUDIOSTREAMCMD_PAUSE); 437 if (RT_SUCCESS(rc)) 438 { 439 LogFunc(("[%s] Pausing stream\n", pHstStrmIn->MixBuf.pszName)); 440 pHstStrmIn->fStatus |= PDMAUDIOSTRMSTS_FLAG_PAUSED; 441 } 442 else 443 LogFlowFunc(("Backend vetoed pausing input stream, rc=%Rrc\n", rc)); 444 } 445 else 446 rc = VINF_SUCCESS; 447 448 break; 449 } 450 451 case PDMAUDIOSTREAMCMD_RESUME: 452 { 453 if (pHstStrmIn->fStatus & PDMAUDIOSTRMSTS_FLAG_PAUSED) 454 { 455 Assert(pHstStrmIn->fStatus & PDMAUDIOSTRMSTS_FLAG_ENABLED); 456 rc = pThis->pHostDrvAudio->pfnControlIn(pThis->pHostDrvAudio, pHstStrmIn, PDMAUDIOSTREAMCMD_RESUME); 457 if (RT_SUCCESS(rc)) 458 { 459 pHstStrmIn->fStatus &= ~PDMAUDIOSTRMSTS_FLAG_PAUSED; 460 LogFunc(("[%s] Resumed stream\n", pHstStrmIn->MixBuf.pszName)); 461 } 462 else 463 LogFlowFunc(("Backend vetoed resuming input stream, rc=%Rrc\n", rc)); 464 } 465 else 466 rc = VINF_SUCCESS; 467 468 break; 469 } 470 431 471 default: 432 472 AssertMsgFailed(("Command %ld not implemented\n", enmStreamCmd)); … … 494 534 { 495 535 Assert(pHstStrmOut->fStatus & PDMAUDIOSTRMSTS_FLAG_ENABLED); 496 rc = pThis->pHostDrvAudio->pfnControlOut(pThis->pHostDrvAudio, pHstStrmOut, PDMAUDIOSTREAMCMD_ DISABLE);536 rc = pThis->pHostDrvAudio->pfnControlOut(pThis->pHostDrvAudio, pHstStrmOut, PDMAUDIOSTREAMCMD_PAUSE); 497 537 if (RT_SUCCESS(rc)) 498 538 { … … 514 554 { 515 555 Assert(pHstStrmOut->fStatus & PDMAUDIOSTRMSTS_FLAG_ENABLED); 516 rc = pThis->pHostDrvAudio->pfnControlOut(pThis->pHostDrvAudio, pHstStrmOut, PDMAUDIOSTREAMCMD_ ENABLE);556 rc = pThis->pHostDrvAudio->pfnControlOut(pThis->pHostDrvAudio, pHstStrmOut, PDMAUDIOSTREAMCMD_RESUME); 517 557 if (RT_SUCCESS(rc)) 518 558 { -
trunk/src/VBox/Devices/Audio/DrvHostALSAAudio.cpp
r58378 r59097 1240 1240 { 1241 1241 case PDMAUDIOSTREAMCMD_ENABLE: 1242 case PDMAUDIOSTREAMCMD_RESUME: 1242 1243 rc = drvHostALSAAudioStreamCtl(pThisStrmIn->phPCM, false /* fStop */); 1243 1244 break; 1244 1245 1245 1246 case PDMAUDIOSTREAMCMD_DISABLE: 1247 case PDMAUDIOSTREAMCMD_PAUSE: 1246 1248 rc = drvHostALSAAudioStreamCtl(pThisStrmIn->phPCM, true /* fStop */); 1247 1249 break; … … 1269 1271 { 1270 1272 case PDMAUDIOSTREAMCMD_ENABLE: 1273 case PDMAUDIOSTREAMCMD_RESUME: 1271 1274 rc = drvHostALSAAudioStreamCtl(pThisStrmOut->phPCM, false /* fStop */); 1272 1275 break; 1273 1276 1274 1277 case PDMAUDIOSTREAMCMD_DISABLE: 1278 case PDMAUDIOSTREAMCMD_PAUSE: 1275 1279 rc = drvHostALSAAudioStreamCtl(pThisStrmOut->phPCM, true /* fStop */); 1276 1280 break; -
trunk/src/VBox/Devices/Audio/DrvHostCoreAudio.cpp
r58919 r59097 1567 1567 { 1568 1568 case PDMAUDIOSTREAMCMD_ENABLE: 1569 case PDMAUDIOSTREAMCMD_RESUME: 1569 1570 { 1570 1571 /* Only start the device if it is actually stopped */ … … 1590 1591 1591 1592 case PDMAUDIOSTREAMCMD_DISABLE: 1593 case PDMAUDIOSTREAMCMD_PAUSE: 1592 1594 { 1593 1595 /* Only stop the device if it is actually running */ … … 1641 1643 { 1642 1644 case PDMAUDIOSTREAMCMD_ENABLE: 1645 case PDMAUDIOSTREAMCMD_RESUME: 1643 1646 { 1644 1647 /* Only start the device if it is actually stopped */ … … 1664 1667 1665 1668 case PDMAUDIOSTREAMCMD_DISABLE: 1669 case PDMAUDIOSTREAMCMD_PAUSE: 1666 1670 { 1667 1671 /* Only stop the device if it is actually running */ -
trunk/src/VBox/Devices/Audio/DrvHostDSound.cpp
r59060 r59097 1258 1258 { 1259 1259 case PDMAUDIOSTREAMCMD_ENABLE: 1260 case PDMAUDIOSTREAMCMD_RESUME: 1260 1261 { 1261 1262 DSLOG(("DSound: Playback PDMAUDIOSTREAMCMD_ENABLE\n")); … … 1278 1279 1279 1280 case PDMAUDIOSTREAMCMD_DISABLE: 1281 case PDMAUDIOSTREAMCMD_PAUSE: 1280 1282 { 1281 1283 DSLOG(("DSound: Playback PDMAUDIOSTREAMCMD_DISABLE\n")); … … 1506 1508 { 1507 1509 case PDMAUDIOSTREAMCMD_ENABLE: 1510 case PDMAUDIOSTREAMCMD_RESUME: 1508 1511 { 1509 1512 /* Try to start capture. If it fails, then reopen and try again. */ … … 1528 1531 1529 1532 case PDMAUDIOSTREAMCMD_DISABLE: 1533 case PDMAUDIOSTREAMCMD_PAUSE: 1530 1534 { 1531 1535 hr = directSoundCaptureStop(pDSoundStrmIn); … … 1540 1544 rc = VERR_INVALID_PARAMETER; 1541 1545 break; 1542 }1546 } 1543 1547 } 1544 1548 -
trunk/src/VBox/Devices/Audio/DrvHostOSSAudio.cpp
r58378 r59097 359 359 { 360 360 case PDMAUDIOSTREAMCMD_ENABLE: 361 case PDMAUDIOSTREAMCMD_RESUME: 361 362 { 362 363 DrvAudioClearBuf(&pHstStrmOut->Props, … … 374 375 375 376 case PDMAUDIOSTREAMCMD_DISABLE: 377 case PDMAUDIOSTREAMCMD_PAUSE: 376 378 { 377 379 mask = 0; -
trunk/src/VBox/Devices/Audio/DrvHostPulseAudio.cpp
r58590 r59097 992 992 { 993 993 case PDMAUDIOSTREAMCMD_ENABLE: 994 case PDMAUDIOSTREAMCMD_RESUME: 994 995 { 995 996 pa_threaded_mainloop_lock(g_pMainLoop); … … 1016 1017 1017 1018 case PDMAUDIOSTREAMCMD_DISABLE: 1019 case PDMAUDIOSTREAMCMD_PAUSE: 1018 1020 { 1019 1021 /* Pause audio output (the Pause bit of the AC97 x_CR register is set). … … 1058 1060 { 1059 1061 case PDMAUDIOSTREAMCMD_ENABLE: 1062 case PDMAUDIOSTREAMCMD_RESUME: 1060 1063 { 1061 1064 pa_threaded_mainloop_lock(g_pMainLoop); … … 1069 1072 1070 1073 case PDMAUDIOSTREAMCMD_DISABLE: 1074 case PDMAUDIOSTREAMCMD_PAUSE: 1071 1075 { 1072 1076 pa_threaded_mainloop_lock(g_pMainLoop);
Note:
See TracChangeset
for help on using the changeset viewer.