Coffeehouse Thread

26 posts

Forum Read Only

This forum has been made read only by the site admins. No new threads or comments can be added.

SPDIF in Vista

Back to Forum: Coffeehouse
  • User profile image
    Reinhard

    Sven Groot wrote:

    On Vista, I get two audio devices (or "end-points" I suppose). One is called "Speakers", the other is "Spdif-output" (for the X-Fi) or "Digital output" (for the Realtek). The Speakers one is the default audio device by default.
    ........
    So far, regardless of whether I set "Speakers" or the specific "SPDIF" option as the default, no app can successfully use SPDIF.
    ........
     

    How to change default audio device ?
    If default audio device can be changed by program
    i think app can successfully switch to SPDIF.
    But in new API i only find Get default audio device (IMMDeviceEnumerator::GetDefaultAudioEndpoint)

  • User profile image
    Matthew van Eerde

    Apps can't change the default audio device easily, but they can get notified when the user changes the default audio device; see IMMNotificationClient::OnDefaultDeviceChanged

  • User profile image
    Sven Groot

    Maybe not easily, but they can do it. Media Center can, and I'll just assume MS has been nice enough not to use undocumented interfaces for that.

  • User profile image
    Reinhard

    Sven Groot wrote:
    Maybe not easily, but they can do it. Media Center can, and I'll just assume MS has been nice enough not to use undocumented interfaces for that.

    Thanks for your information.
    i have another problem.
    In SPDIF Device "format supported" property page, i only found three items "DTS" "Dolby Digital" "WMA".
    Does it mean that VISTA doesnt support "AAC" foramt?

  • User profile image
    Matthew van Eerde

    Sven Groot wrote:
    Media Center can


    Hmmm... I don't know how they're doing that.  Maybe they're scripting mmsys.cpl.

    I'm a little concerned about Raymond Chen's dictum "what if two programs did this?" -- I could easily see troubles arising from two programs that want to fight over the default audio device.

  • User profile image
    Larry​Osterman

    Matthew van Eerde wrote:
    
    Sven Groot wrote: Media Center can


    Hmmm... I don't know how they're doing that.  Maybe they're scripting mmsys.cpl.

    I'm a little concerned about Raymond Chen's dictum "what if two programs did this?" -- I could easily see troubles arising from two programs that want to fight over the default audio device.


    Matt brought this up internally. The answer is that setting the default audio device is an operation that's reserved for the user (like pinning items on the start menu, etc).  There is no documented mechanism that can be used to change the default devices, because it's the USERs choice, not some random application's choice.

    MediaCenter is a part of the operating system (and thus can use internal-to-the-os functionality), and it doesn't change the default audio device without asking the user to choose.  This is just fine, since the USER is still in control.

    And yes, think about what if two programs 3rd party audio solutions did this?

  • User profile image
    Sven Groot

    It would be better perhaps if an app could use an audio device that's not the default. As it stands, SPDIF only works when I manually set the SPDIF device as the default. It would be nice if a future version of PowerDVD could just use that device even if it was not the default.

    Not that it matters at the moment, the situation hasn't improved much over my complaints in this thread. Media Center has been fixed, no more stuttering and drop-outs. But Media Center remains the only application that can use SPDIF. WMP and PowerDVD still can't in 5744.

    Which means that I still have to boot XP to watch a DVD. Sure I could in theory watch it in Media Center, but I vastly prefer PowerDVD over Media Center, and besides MC won't let me play any DVDs that aren't region 2 (which is almost half my collection).

  • User profile image
    Reinhard

    Sven Groot wrote:
    It would be better perhaps if an app could use an audio device that's not the default. 

    i think app can use audio device that's not the default.
    i use windvd in vista 5600. if i set spdif device as default, it can SPDIF out. 
    But it can't select SPDIF out if defaut device is not SPDIF device. 
    I try the sample code in Microsoft vista sdk. it can select any device on your computer to output audio sound.
    To support switching SPDIF app should use new window api.

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.