[FFmpeg-trac] #9420(avdevice:reopened): DirectShow (dshow) audio input limited to 44.1 kHz / 16-bit

FFmpeg trac at avcodec.org
Wed Sep 29 21:36:58 EEST 2021


#9420: DirectShow (dshow) audio input limited to 44.1 kHz / 16-bit
-------------------------------------+-------------------------------------
             Reporter:  Brad Isbell  |                    Owner:  (none)
                 Type:  defect       |                   Status:  reopened
             Priority:  normal       |                Component:  avdevice
              Version:  git-master   |               Resolution:
             Keywords:  dshow        |               Blocked By:
  directshow audio                   |
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Comment (by Brad Isbell):

 I think I found the issue.

 Poking around in the source, I found the check for stream settings and
 capability compatibility in dshow.c.  I commented out the check for sample
 rate:

 {{{
             if (ctx->sample_rate) {
                 /*if (ctx->sample_rate > acaps->MaximumSampleFrequency ||
                     ctx->sample_rate < acaps->MinimumSampleFrequency)
                     goto next;*/
                 fx->nSamplesPerSec = ctx->sample_rate;
             }
 }}}

 After that, I was able to set a 48 kHz sample rate and record audio, no
 problem.

 I then enabled logging with {{{EXTRA_CFLAGS="-DDSHOWDEBUG -DDEBUG
 -DTRACE"}}} so I could look at {{{AUDIO_STREAM_CONFIG_CAPS}}} and the
 {{{WAVEFORMATEX}}} within the {{{AM_MEDIA_TYPE}}} structure.  Then,
 running with {{{-list_options true}}}, we can see both structures:

 {{{
 ffmpeg_g.exe -loglevel trace -f dshow -list_options true -i audio="DVS
 Receive  7-8 (Dante Virtual Soundcard)"
 ffmpeg version git-2021-09-28-ed65498 Copyright (c) 2000-2021 the FFmpeg
 developers
   built with Microsoft (R) C/C++ Optimizing Compiler Version 19.29.30133
 for x64
   configuration: --prefix=./../../installed --toolchain=msvc --arch=x86_64
 --enable-x86asm --enable-asm --disable-shared --enable-static --enable-gpl
 --enable-debug=3 --extra-ldflags='-LIBPATH:./../../installed/lib/'
 --extra-cflags='-I./../../installed/include/ -DDSHOWDEBUG -DDEBUG -DTRACE'
   libavutil      57.  7.100 / 57.  7.100
   libavcodec     59.  9.101 / 59.  9.101
   libavformat    59.  5.100 / 59.  5.100
   libavdevice    59.  0.101 / 59.  0.101
   libavfilter     8.  9.100 /  8.  9.100
   libswscale      6.  1.100 /  6.  1.100
   libswresample   4.  0.100 /  4.  0.100
   libpostproc    56.  0.100 / 56.  0.100
 Splitting the commandline.
 Reading option '-loglevel' ... matched as option 'loglevel' (set logging
 level) with argument 'trace'.
 Reading option '-f' ... matched as option 'f' (force format) with argument
 'dshow'.
 Reading option '-list_options' ... matched as AVOption 'list_options' with
 argument 'true'.
 Reading option '-i' ... matched as input url with argument 'audio=DVS
 Receive  7-8 (Dante Virtual Soundcard)'.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option loglevel (set logging level) with argument trace.
 Successfully parsed a group of options.
 Parsing a group of options: input url audio=DVS Receive  7-8 (Dante
 Virtual Soundcard).
 Applying option f (force format) with argument dshow.
 Successfully parsed a group of options.
 Opening an input file: audio=DVS Receive  7-8 (Dante Virtual Soundcard).
 [dshow @ 000001D299D3F940] DirectShow audio only device options (from
 audio devices)
 [dshow @ 000001D299D3F940]  Pin "Capture" (alternative pin name "Capture")
 [dshow @ 000001D299D3F940] BRAD TEST: i=0    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFB10
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 176400
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=1    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCF930
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 176400
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=2    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCF970
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 88200
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=3    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCF9D0
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 32000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 128000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=4    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFB50
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 32000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 64000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=5    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFA30
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 22050
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 88200
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=6    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFB90
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 22050
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=7    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFBB0
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 11025
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=8    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFBF0
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 11025
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 22050
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=9    majortype  0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFC10
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 8000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 32000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=10    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFC30
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 8000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 16000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=11    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299DCFC70
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 88200
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=12    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      1
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D65F00
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 1
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=13    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D65F20
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 22050
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 44100
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=14    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      1
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D661C0
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 22050
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 22050
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 1
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=15    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D65B00
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 11025
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 22050
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=16    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      1
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D660C0
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 11025
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 11025
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 1
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=17    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D66020
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 8000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 16000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=18    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      1
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D65EE0
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 8000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 8000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 1
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 8
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=19    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D66140
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 48000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 192000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=20    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D65C80
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 48000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 96000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=21    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      4
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D65C60
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 2
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 96000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 384000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 4
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 [dshow @ 000001D299D3F940] BRAD TEST: i=22    majortype 0x73647561 0x0000
 0x0010 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     subtype  0x00000001 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]     bFixedSizeSamples        1
 [dshow @ 00007FF65C0B4078]     bTemporalCompression     0
 [dshow @ 00007FF65C0B4078]     lSampleSize      2
 [dshow @ 00007FF65C0B4078]     formattype       0x05589f81 0xc356 0x11ce
 bf0100aa0055595a
 [dshow @ 00007FF65C0B4078]     pUnk     0000000000000000
 [dshow @ 00007FF65C0B4078]     cbFormat 18
 [dshow @ 00007FF65C0B4078]     pbFormat 000001D299D65BC0
 [dshow @ 00007FF65C0B4078]       wFormatTag: 1
 [dshow @ 00007FF65C0B4078]       nChannels: 1
 [dshow @ 00007FF65C0B4078]       nSamplesPerSec: 96000
 [dshow @ 00007FF65C0B4078]       nAvgBytesPerSec: 192000
 [dshow @ 00007FF65C0B4078]       nBlockAlign: 2
 [dshow @ 00007FF65C0B4078]       wBitsPerSample: 16
 [dshow @ 00007FF65C0B4078]       cbSize: 0
 [dshow @ 00007FF65C0B4078]  AUDIO_STREAM_CONFIG_CAPS
 [dshow @ 00007FF65C0B4078]   guid       0x73647561 0x0000 0x0010
 800000aa00389b71
 [dshow @ 00007FF65C0B4078]   MinimumChannels    1
 [dshow @ 00007FF65C0B4078]   MaximumChannels    2
 [dshow @ 00007FF65C0B4078]   ChannelsGranularity        1
 [dshow @ 00007FF65C0B4078]   MinimumBitsPerSample       8
 [dshow @ 00007FF65C0B4078]   MaximumBitsPerSample       16
 [dshow @ 00007FF65C0B4078]   BitsPerSampleGranularity   8
 [dshow @ 00007FF65C0B4078]   MinimumSampleFrequency     11025
 [dshow @ 00007FF65C0B4078]   MaximumSampleFrequency     44100
 [dshow @ 00007FF65C0B4078]   SampleFrequencyGranularity 11025
 [dshow @ 000001D299D3F940]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16
 rate= 44100
 ...
 }}}

 Each iteration has the same {{{AUDIO_STREAM_CONFIG_CAPS}}}.  However, this
 structure does not adequately describe the audio interface.  I think the
 reason is that {{{SampleFrequencyGranularity}}} must be {{{11025}}} to
 describe sample rates of 44.1 kHz, 22.05 kHz, and 11.025 kHz.  48 kHz is
 not evenly divisible by 11,025.

 We can see in {{{AM_MEDIA_TYPE}}} that sample rates up to 96 kHz are
 supported for this interface.  It's just that we have to loop through and
 get that information.

 Rather than using {{{AUDIO_STREAM_CONFIG_CAPS}}}, I think we should
 enumerate all possible {{{AM_MEDIA_TYPE}}} and verify that {{{ctx}}} is
 compatible afterwards.

 I am not a C/C++ developer, nor familiar with the inner workings of
 FFmpeg, and I've never used the DirectShow APIs directly.  :-)  Is there
 anyone that could help with this refactor of dshow.c?

 If it's helpful at all, here's the relevant DirectShow API documentation:
 https://docs.microsoft.com/en-us/previous-versions/ms784114(v=vs.85)
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/9420#comment:14>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list