src/audio/winmm/SDL_winmm.c
changeset 10249 0abfef2f7fc5
parent 10248 7c430819edd2
child 10250 a3faa23abdbb
equal deleted inserted replaced
10248:7c430819edd2 10249:0abfef2f7fc5
    34 #include "SDL_winmm.h"
    34 #include "SDL_winmm.h"
    35 
    35 
    36 #ifndef WAVE_FORMAT_IEEE_FLOAT
    36 #ifndef WAVE_FORMAT_IEEE_FLOAT
    37 #define WAVE_FORMAT_IEEE_FLOAT 0x0003
    37 #define WAVE_FORMAT_IEEE_FLOAT 0x0003
    38 #endif
    38 #endif
       
    39 
       
    40 /* !!! FIXME:
       
    41 
       
    42 WAVExxxCAPS gives you 31 bytes for the device name, and just truncates if it's
       
    43 longer. However, since WinXP, you can use the WAVExxxCAPS2 structure, which
       
    44 will give you a name GUID. The full name is in the Windows Registry under
       
    45 that GUID, located here: HKLM\System\CurrentControlSet\Control\MediaCategories
       
    46 
       
    47 Note that drivers can report GUID_NULL for the name GUID, in which case,
       
    48 Windows makes a best effort to fill in those 31 bytes in the usual place.
       
    49 This info summarized from MSDN:
       
    50 
       
    51 http://web.archive.org/web/20131027093034/http://msdn.microsoft.com/en-us/library/windows/hardware/ff536382(v=vs.85).aspx
       
    52 
       
    53 */
    39 
    54 
    40 #define DETECT_DEV_IMPL(iscap, typ, capstyp) \
    55 #define DETECT_DEV_IMPL(iscap, typ, capstyp) \
    41 static void DetectWave##typ##Devs(void) { \
    56 static void DetectWave##typ##Devs(void) { \
    42     const UINT iscapture = iscap ? 1 : 0; \
    57     const UINT iscapture = iscap ? 1 : 0; \
    43     const UINT devcount = wave##typ##GetNumDevs(); \
    58     const UINT devcount = wave##typ##GetNumDevs(); \