VirtualBox

Changeset 64383 in vbox


Ignore:
Timestamp:
Oct 24, 2016 1:01:24 PM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
111491
Message:

Audio/DevIchAc97.cpp: Move the AC'97 streams and mixer sinks creation in ichac97StreamsInit() to match ichac97StreamsDestroy().

File:
1 edited

Legend:

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

    r64373 r64383  
    460460        case AC97SOUNDSOURCE_PO_INDEX: return pThis->pSinkOut;    break;
    461461        case AC97SOUNDSOURCE_MC_INDEX: return pThis->pSinkMicIn;  break;
    462         default:       break;
     462        default:                                                  break;
    463463    }
    464464
     
    677677    LogFlowFuncEnter();
    678678
    679     int rc = ichac97StreamInit    (&pThis->StreamLineIn, AC97SOUNDSOURCE_PI_INDEX);
     679    /*
     680     * Create all sinks and AC'97 streams.
     681     */
     682
     683    /* Line-In. */
     684    int rc = AudioMixerCreateSink(pThis->pMixer, "[Recording] Line In", AUDMIXSINKDIR_INPUT, &pThis->pSinkLineIn);
    680685    if (RT_SUCCESS(rc))
    681     {
    682         rc = ichac97StreamInit    (&pThis->StreamMicIn,  AC97SOUNDSOURCE_MC_INDEX);
     686        rc = ichac97StreamInit(&pThis->StreamLineIn, AC97SOUNDSOURCE_PI_INDEX);
     687
     688    /* Microphone-In. */
     689    if (RT_SUCCESS(rc))
     690    {
     691        rc = AudioMixerCreateSink(pThis->pMixer, "[Recording] Microphone In", AUDMIXSINKDIR_INPUT, &pThis->pSinkMicIn);
    683692        if (RT_SUCCESS(rc))
    684         {
    685             rc = ichac97StreamInit(&pThis->StreamOut,    AC97SOUNDSOURCE_PO_INDEX);
    686         }
    687     }
    688 
    689     /* Open all streams with the current AC'97 mixer settings. */
     693            rc = ichac97StreamInit(&pThis->StreamMicIn, AC97SOUNDSOURCE_MC_INDEX);
     694    }
     695
     696    /* Output. */
     697    if (RT_SUCCESS(rc))
     698    {
     699        rc = AudioMixerCreateSink(pThis->pMixer, "[Playback] PCM Output", AUDMIXSINKDIR_OUTPUT, &pThis->pSinkOut);
     700        if (RT_SUCCESS(rc))
     701            rc = ichac97StreamInit(&pThis->StreamOut, AC97SOUNDSOURCE_PO_INDEX);
     702    }
     703
     704    /*
     705     * Open all streams with the current AC'97 mixer settings.
     706     */
    690707    if (RT_SUCCESS(rc))
    691708    {
     
    28742891
    28752892    if (RT_SUCCESS(rc))
    2876     {
    28772893        rc = AudioMixerCreate("AC'97 Mixer", 0 /* uFlags */, &pThis->pMixer);
    2878         if (RT_SUCCESS(rc))
    2879         {
    2880             /* Add all required audio sinks. */
    2881             int rc2 = AudioMixerCreateSink(pThis->pMixer, "[Playback] PCM Output", AUDMIXSINKDIR_OUTPUT, &pThis->pSinkOut);
    2882             AssertRC(rc2);
    2883 
    2884             rc2 = AudioMixerCreateSink(pThis->pMixer, "[Recording] Line In", AUDMIXSINKDIR_INPUT, &pThis->pSinkLineIn);
    2885             AssertRC(rc2);
    2886 
    2887             rc2 = AudioMixerCreateSink(pThis->pMixer, "[Recording] Microphone In", AUDMIXSINKDIR_INPUT, &pThis->pSinkMicIn);
    2888             AssertRC(rc2);
    2889         }
    2890     }
    28912894
    28922895    ichac97Reset(pDevIns);
Note: See TracChangeset for help on using the changeset viewer.

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