VirtualBox

Changeset 88723 in vbox for trunk/include


Ignore:
Timestamp:
Apr 27, 2021 10:03:19 AM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
144041
Message:

Audio: The audio device (i.e. AudioMixer.cpp) is now responsible for initiating stream re-initialzation on backend device changes, as it needs to update the peek state with its mixer buffer. bugref:9890

Location:
trunk/include/VBox/vmm
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/pdmaudioifs.h

    r88720 r88723  
    910910 *  that this is an enabled stream! */
    911911#define PDMAUDIOSTREAMSTS_FLAGS_PAUSED          RT_BIT_32(2)
    912 /** Whether this stream was marked as being disabled
     912/** Indicates that the stream is draining (output only).
     913 *  Whether this stream was marked as being disabled
    913914 *  but there are still associated guest output streams
    914915 *  which rely on its data. */
    915916#define PDMAUDIOSTREAMSTS_FLAGS_PENDING_DISABLE RT_BIT_32(3)
    916 /** Whether this stream is in re-initialization phase.
    917  *  All other bits remain untouched to be able to restore
    918  *  the stream's state after the re-initialization bas been
    919  *  finished. */
    920 #define PDMAUDIOSTREAMSTS_FLAGS_PENDING_REINIT  RT_BIT_32(4)
     917/** Whether this stream is in re-initialization phase and requires the device
     918 *  to call pfnStreamReInit.
     919 *
     920 *  All other bits remain untouched to be able to restore the stream's state
     921 *  after the re-initialization has been completed. */
     922#define PDMAUDIOSTREAMSTS_FLAGS_NEED_REINIT     RT_BIT_32(4)
    921923/** Validation mask. */
    922924#define PDMAUDIOSTREAMSTS_VALID_MASK            UINT32_C(0x0000001F)
     
    10801082                                                PPDMAUDIOSTREAMCFG pCfgGuest, PPDMAUDIOSTREAM *ppStream));
    10811083
     1084
    10821085    /**
    10831086     * Destroys an audio stream.
     
    10871090     */
    10881091    DECLR3CALLBACKMEMBER(int, pfnStreamDestroy, (PPDMIAUDIOCONNECTOR pInterface, PPDMAUDIOSTREAM pStream));
     1092
     1093    /**
     1094     * Re-initializes the stream in response to PDMAUDIOSTREAMSTS_FLAGS_NEED_REINIT.
     1095     *
     1096     * @returns VBox status code.
     1097     * @param   pInterface      Pointer to this interface.
     1098     * @param   pStream         The audio stream needing re-initialization.
     1099     */
     1100    DECLR3CALLBACKMEMBER(int, pfnStreamReInit, (PPDMIAUDIOCONNECTOR pInterface, PPDMAUDIOSTREAM pStream));
    10891101
    10901102    /**
     
    12041216
    12051217/** PDMIAUDIOCONNECTOR interface ID. */
    1206 #define PDMIAUDIOCONNECTOR_IID                  "00ee6f8e-16ab-4e9a-977c-d506c163be77"
     1218#define PDMIAUDIOCONNECTOR_IID                  "ff6788cc-1a4d-4d4b-a2e0-9f56fce9b397"
    12071219
    12081220
  • trunk/include/VBox/vmm/pdmaudioinline.h

    r88626 r88723  
    435435                       | PDMAUDIOSTREAMSTS_FLAGS_ENABLED
    436436                       | PDMAUDIOSTREAMSTS_FLAGS_PAUSED
    437                        | PDMAUDIOSTREAMSTS_FLAGS_PENDING_REINIT ))
     437                       | PDMAUDIOSTREAMSTS_FLAGS_NEED_REINIT ))
    438438        == (  PDMAUDIOSTREAMSTS_FLAGS_INITIALIZED
    439439            | PDMAUDIOSTREAMSTS_FLAGS_ENABLED);
     
    459459                       | PDMAUDIOSTREAMSTS_FLAGS_PAUSED
    460460                       | PDMAUDIOSTREAMSTS_FLAGS_PENDING_DISABLE
    461                        | PDMAUDIOSTREAMSTS_FLAGS_PENDING_REINIT))
     461                       | PDMAUDIOSTREAMSTS_FLAGS_NEED_REINIT))
    462462        == (  PDMAUDIOSTREAMSTS_FLAGS_INITIALIZED
    463463            | PDMAUDIOSTREAMSTS_FLAGS_ENABLED);
     
    479479    return (fStatus & (  PDMAUDIOSTREAMSTS_FLAGS_INITIALIZED
    480480                       | PDMAUDIOSTREAMSTS_FLAGS_ENABLED
    481                        | PDMAUDIOSTREAMSTS_FLAGS_PENDING_REINIT))
     481                       | PDMAUDIOSTREAMSTS_FLAGS_NEED_REINIT))
    482482        == (  PDMAUDIOSTREAMSTS_FLAGS_INITIALIZED
    483483            | PDMAUDIOSTREAMSTS_FLAGS_ENABLED);
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