VirtualBox

Changeset 64687 in vbox for trunk/src/VBox/Devices


Ignore:
Timestamp:
Nov 17, 2016 10:02:07 AM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
111961
Message:

Audio/DrvHostPulseAudio: added some temporary logging to debug a testbox issue

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Audio/DrvHostPulseAudio.cpp

    r64512 r64687  
    176176{
    177177    if (!pThis)
     178    {
     179        LogRel(("DEBUG: paSignalWaiter return because of !pThis\n"));
    178180        return;
    179 
     181    }
     182
     183    LogRel(("DEBUG: paSignalWaiter set fLoopWait=true and calling pa_threaded_mainloop_signal()\n"));
    180184    pThis->fLoopWait = true;
    181185    pa_threaded_mainloop_signal(pThis->pMainLoop, 0);
     
    260264
    261265    uint64_t u64StartMs = RTTimeMilliTS();
     266    LogRel(("DEBUG: entering paWaitForEx\n"));
    262267    while (pa_operation_get_state(pOP) == PA_OPERATION_RUNNING)
    263268    {
     
    265270        {
    266271            AssertPtr(pThis->pMainLoop);
     272            LogRel(("DEBUG: entering pa_threaded_mainloop_wait()\n"));
    267273            pa_threaded_mainloop_wait(pThis->pMainLoop);
     274            LogRel(("DEBUG: leaving pa_threaded_mainloop_wait()\n"));
    268275        }
    269276        pThis->fLoopWait = false;
     
    275282            break;
    276283        }
     284        LogRel(("DEBUG: paWaitForEx next turn (elapsed=%RU64ms)\n", u64ElapsedMs));
    277285    }
    278286
     
    985993{
    986994    if (eol != 0)
     995    {
     996        LogRel(("DEBUG: paEnumSinkCb return EOL=1\n"));
     997        return;
     998    }
     999    if (!pCtx)
     1000        LogRel(("DEBUG: paEnumSinkCb return because of !pCtx\n"));
     1001    AssertPtrReturnVoid(pCtx);
     1002    if (!pInfo)
     1003        LogRel(("DEBUG: paEnumSinkCb return because of !pInfo\n"));
     1004    AssertPtrReturnVoid(pInfo);
     1005
     1006    PPULSEAUDIOENUMCBCTX pCbCtx = (PPULSEAUDIOENUMCBCTX)pvUserData;
     1007    if (!pCbCtx)
     1008        LogRel(("DEBUG: paEnumSinkCb return because of !pCbCtx\n"));
     1009    AssertPtrReturnVoid(pCbCtx);
     1010    if (!pCbCtx->pDrv)
     1011        LogRel(("DEBUG: paEnumSinkCb return because of !pCbCtx->pDrv\n"));
     1012    AssertPtrReturnVoid(pCbCtx->pDrv);
     1013
     1014    LogRel2(("PulseAudio: Using output sink '%s'\n", pInfo->name));
     1015
     1016    /** @todo Store sinks + channel mapping in callback context as soon as we have surround support. */
     1017    pCbCtx->cDevOut++;
     1018
     1019    LogRel(("DEBUG: pa_threaded_mainloop_signal() from paEnumSinkCb\n"));
     1020    pa_threaded_mainloop_signal(pCbCtx->pDrv->pMainLoop, 0);
     1021}
     1022
     1023
     1024static void paEnumSourceCb(pa_context *pCtx, const pa_source_info *pInfo, int eol, void *pvUserData)
     1025{
     1026    if (eol != 0)
    9871027        return;
    9881028
     
    9941034    AssertPtrReturnVoid(pCbCtx->pDrv);
    9951035
    996     LogRel2(("PulseAudio: Using output sink '%s'\n", pInfo->name));
    997 
    998     /** @todo Store sinks + channel mapping in callback context as soon as we have surround support. */
    999     pCbCtx->cDevOut++;
    1000 
     1036    LogRel2(("PulseAudio: Using input source '%s'\n", pInfo->name));
     1037
     1038    /** @todo Store sources + channel mapping in callback context as soon as we have surround support. */
     1039    pCbCtx->cDevIn++;
     1040
     1041    LogRel(("DEBUG: pa_threaded_mainloop_signal() from paEnumSourceCb\n"));
    10011042    pa_threaded_mainloop_signal(pCbCtx->pDrv->pMainLoop, 0);
    10021043}
    10031044
    10041045
    1005 static void paEnumSourceCb(pa_context *pCtx, const pa_source_info *pInfo, int eol, void *pvUserData)
    1006 {
    1007     if (eol != 0)
    1008         return;
    1009 
     1046static void paEnumServerCb(pa_context *pCtx, const pa_server_info *pInfo, void *pvUserData)
     1047{
    10101048    AssertPtrReturnVoid(pCtx);
    10111049    AssertPtrReturnVoid(pInfo);
     
    10131051    PPULSEAUDIOENUMCBCTX pCbCtx = (PPULSEAUDIOENUMCBCTX)pvUserData;
    10141052    AssertPtrReturnVoid(pCbCtx);
    1015     AssertPtrReturnVoid(pCbCtx->pDrv);
    1016 
    1017     LogRel2(("PulseAudio: Using input source '%s'\n", pInfo->name));
    1018 
    1019     /** @todo Store sources + channel mapping in callback context as soon as we have surround support. */
    1020     pCbCtx->cDevIn++;
    1021 
    1022     pa_threaded_mainloop_signal(pCbCtx->pDrv->pMainLoop, 0);
    1023 }
    1024 
    1025 
    1026 static void paEnumServerCb(pa_context *pCtx, const pa_server_info *pInfo, void *pvUserData)
    1027 {
    1028     AssertPtrReturnVoid(pCtx);
    1029     AssertPtrReturnVoid(pInfo);
    1030 
    1031     PPULSEAUDIOENUMCBCTX pCbCtx = (PPULSEAUDIOENUMCBCTX)pvUserData;
    1032     AssertPtrReturnVoid(pCbCtx);
    10331053
    10341054    PDRVHOSTPULSEAUDIO pThis    = pCbCtx->pDrv;
     
    10471067    }
    10481068
     1069    LogRel(("DEBUG: pa_threaded_mainloop_signal() from paEnumServerCb\n"));
    10491070    pa_threaded_mainloop_signal(pThis->pMainLoop, 0);
    10501071}
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette