locked
Implicit Audio Channel Positions

    Question

  • Hey James,

    Thanks for your answers on the data considerations between ARM and x86 and also the link about going from 16-bit to IEEE float. I'll give this link a look and do understand it's 3rd party docs. You may not be able to answer this one but if you get the opportunity to check in with one of the local audio architects, one thing I'd like to know is with the WASAPI, how is the data presented when calling the GetBuffer(...) method on the IAudioCaptureClient. If we have let's say two channels for the left and right, and let's say that it's 16 bit so each sample is represented by two bytes, does it get presented like...

    1.) LeftByte1,LeftByte2,RightByte1,RightByte2

    or reversed...

    2.) RightByte1, RightByte2, LeftByte1, LeftByte2

    or maybe interlaced like...

    3.) LeftByte1, RightByte1, LeftByte2, RightByte2

    If you do happen to find that out, it may be enough to put me on the right path. Appreciate all your assistance and support James for all my questions. Your a rock star and it's great to see your level of dedication and support to the local dev community on these forums! If this is your job, you deserve a raise. Thanks again and looking forward to your feedback.

    If anyone else out there in the community can shed some more light on this topic, I'd love to hear your thoughts as well.

    Thanks,

    Matthew

    Thursday, August 09, 2012 12:06 AM

Answers

  • Channels Implicit Channel Positions
    1 Always maps to FrontLeft and FrontRight at full scale in both speakers (special case for mono sounds)
    2 FrontLeft, FrontRight (basic stereo configuration)
    3 FrontLeft, FrontRight, LowFrequency (2.1 configuration)
    4 FrontLeft, FrontRight, BackLeft, BackRight (quadraphonic)
    5 FrontLeft, FrontRight, FrontCenter, SideLeft, SideRight (5.0 configuration)
    6 FrontLeft, FrontRight, FrontCenter, LowFrequency, SideLeft, SideRight (5.1 configuration) (see the following remarks)
    7 FrontLeft, FrontRight, FrontCenter, LowFrequency, SideLeft, SideRight, BackCenter (6.1 configuration)
    8 FrontLeft, FrontRight, FrontCenter, LowFrequency, BackLeft, BackRight, SideLeft, SideRight (7.1 configuration)
    9 or more No implicit positions (one-to-one mapping)

    http://msdn.microsoft.com/en-us/library/windows/hardware/ff537511(v=vs.85).aspx

    http://msdn.microsoft.com/en-us/library/windows/hardware/ff536230(v=vs.85).aspx

    I hope this helps,

    James


    Windows Media SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    • Marked as answer by Jesse Jiang Tuesday, August 14, 2012 7:14 AM
    Friday, August 10, 2012 1:46 AM
    Moderator