Opened 3 years ago

Closed 3 years ago

#9420 closed defect (fixed)

DirectShow (dshow) audio input limited to 44.1 kHz / 16-bit

Reported by: Brad Isbell Owned by:
Priority: normal Component: avdevice
Version: git-master Keywords: dshow directshow audio
Cc: Brad Isbell, gacuxz Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Most sound cards support sample rates of 48 kHz and above, with bit depths often 24-bit, some even higher. Yet, when using FFmepg to capture from these devices via DirectShow (dshow) input, FFmpeg doesn't support higher than 16-bit and 44.1 kHz.

For example, here's a sound device that supports 2 channels at 96 kHz, 32-bit, but -list_devices=true says otherwise:

ffmpeg -v 9 -loglevel 99 -f dshow -list_options true -i audio="DVS Receive  1-2 (Dante Virtual Soundcard)"
ffmpeg version 2021-09-11-git-3e127b595a-essentials_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10.3.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      57.  5.100 / 57.  5.100
  libavcodec     59.  7.103 / 59.  7.103
  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 '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
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  1-2 (Dante Virtual Soundcard)'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Successfully parsed a group of options.
Parsing a group of options: input url audio=DVS Receive  1-2 (Dante Virtual Soundcard).
Applying option f (force format) with argument dshow.
Successfully parsed a group of options.
Opening an input file: audio=DVS Receive  1-2 (Dante Virtual Soundcard).
[dshow @ 0000026f4e2bd880] DirectShow audio only device options (from audio devices)
[dshow @ 0000026f4e2bd880]  Pin "Capture" (alternative pin name "Capture")
[dshow @ 0000026f4e2bd880]   min ch=1 bits=8 rate= 11025 max ch=2 bits=16 rate= 44100
    Last message repeated 22 times
[dshow @ 0000026f4e2bd880] Selecting pin Capture on audio only
audio=DVS Receive  1-2 (Dante Virtual Soundcard): Immediate exit requested

If you try to set 48 kHz as a sample rate anyway, you get the error, "Could not set audio only options":

ffmpeg -v 9 -loglevel 99 -f dshow -ar 48000 -i audio="DVS Receive  1-2 (Dante Virtual Soundcard)"
ffmpeg version 2021-09-11-git-3e127b595a-essentials_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10.3.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      57.  5.100 / 57.  5.100
  libavcodec     59.  7.103 / 59.  7.103
  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 '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'dshow'.
Reading option '-ar' ... matched as option 'ar' (set audio sampling rate (in Hz)) with argument '48000'.
Reading option '-i' ... matched as input url with argument 'audio=DVS Receive  1-2 (Dante Virtual Soundcard)'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Successfully parsed a group of options.
Parsing a group of options: input url audio=DVS Receive  1-2 (Dante Virtual Soundcard).
Applying option f (force format) with argument dshow.
Applying option ar (set audio sampling rate (in Hz)) with argument 48000.
Successfully parsed a group of options.
Opening an input file: audio=DVS Receive  1-2 (Dante Virtual Soundcard).
[dshow @ 00000260e12bd800] Could not set audio only options
[dshow @ 00000260e12bd800] Searching for audio device within video devices for DVS Receive  1-2 (Dante Virtual Soundcard)
[dshow @ 00000260e12bd800] Could not find audio only device with name [DVS Receive  1-2 (Dante Virtual Soundcard)] among source devices of type video.
audio=DVS Receive  1-2 (Dante Virtual Soundcard): I/O error

This problem happens regardless of what sound device I use. I know these devices support 48 kHz, because that's the sample rate I'm currently running at. Windows also shows me in the control panel (mmsys.cpl):

https://i.imgur.com/Xeeyw9i.png

I know that these higher sample rates are supported on these devices via DirectSound because Audacity (which uses PortAudio internally) is able to record at these higher sample rates.

So, as best as I can tell, the problem lies somewhere in the FFmpeg implementation, but while skimming through the relevant code I did not see anything obvious. Anyone familiar with the details of DirectShow might have an idea?

Some related external posts:

Change History (25)

comment:1 by Balling, 3 years ago

Is not that cpl signalling WASAPI, not dshow? WASAPI input is not suported in ffmpeg, only output through SDL 2.

in reply to:  1 comment:2 by Brad Isbell, 3 years ago

Replying to Balling:

Is not that cpl signalling WASAPI, not dshow? WASAPI input is not suported in ffmpeg, only output through SDL 2.

Good question... I'm not sure either way.

However, I know these devices can operate at higher sample rates. For example, VLC can play 48 kHz via DirectShow. If I open a capture device and set to 48 kHz, it results in the following options:

:dshow-vdev=none :dshow-adev=DVS Receive  7-8 (Dante Virtual Soundcard)  :dshow-aspect-ratio=4\:3 :dshow-chroma= :dshow-fps=0 :no-dshow-config :no-dshow-tuner :dshow-tuner-channel=0 :dshow-tuner-frequency=0 :dshow-tuner-country=0 :dshow-tuner-standard=0 :dshow-tuner-input=0 :dshow-video-input=-1 :dshow-video-output=-1 :dshow-audio-input=-1 :dshow-audio-output=-1 :dshow-amtuner-mode=1 :dshow-audio-channels=0 :dshow-audio-samplerate=48000 :dshow-audio-bitspersample=0 :live-caching=300

We can see that the setting took effect by looking at the resulting sample rate and bitrate.

https://i.imgur.com/DELYw7j.png

https://i.imgur.com/bHoKNoN.png

comment:3 by gacuxz, 3 years ago

Cc: gacuxz added

comment:4 by Balling, 3 years ago

I just found out that even normal WASAPI in ffplay through SDL 2.0 is broken -- on 92000 Hz (artifacts through PCM through HDMI).

Yet it works in Potplayer. Oogh.

Last edited 3 years ago by Balling (previous) (diff)

comment:5 by Elon Musk, 3 years ago

Resolution: invalid
Status: newclosed

-ar is not option for dshow input device.

http://ffmpeg.org/ffmpeg-devices.html#dshow

comment:6 by gacuxz, 3 years ago

Regardless using incorrect -ar option for dshow input device, problem still exists because ffmpeg still detects incorrect audio options of the sound card.

comment:7 by gacuxz, 3 years ago

Resolution: invalid
Status: closedreopened

in reply to:  5 comment:8 by Brad Isbell, 3 years ago

Replying to Elon Musk:

-ar is not option for dshow input device.

Interesting... -ar does have an effect, in that setting -ar 48000 causes the failure with the error, "Could not set audio only options". This error does not occur with -ar 44100. So, perhaps -ar is a defacto alias to -sample_rate?

In any case, I get the exact same errors/effect with -sample_rate.

comment:9 by Elon Musk, 3 years ago

Resolution: invalid
Status: reopenedclosed

You get same error because input options must be before -f dshow.

in reply to:  9 comment:10 by Brad Isbell, 3 years ago

Replying to Elon Musk:

You get same error because input options must be before -f dshow.

This is not correct. The options just need to be before -i.

Please see this demonstration with a 22.05 kHz sample rate, which works with either ordering:

ffmpeg -v 9 -loglevel 99 -f dshow -sample_rate 22050 -i audio="DVS Receive  7-8 (Dante Virtual Soundcard)"
ffmpeg version 2021-09-22-git-447cf53774-essentials_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10.3.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      57.  6.100 / 57.  6.100
  libavcodec     59.  9.100 / 59.  9.100
  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 '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'dshow'.
Reading option '-sample_rate' ... matched as AVOption 'sample_rate' with argument '22050'.
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 v (set logging level) with argument 9.
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 @ 000001ce02dcd880] Selecting pin Capture on audio only
dshow passing through packet of type audio size    88200 timestamp 3101275470000 orig timestamp 3101275470000 graph timestamp 3101285590000 diff 10120000 DVS Receive  7-8 (Dante Virtual Soundcard)
[dshow @ 000001ce02dcd880] All info found
[dshow @ 000001ce02dcd880] stream 0: start_time: 310128 duration: NOPTS
[dshow @ 000001ce02dcd880] format: start_time: 310128 duration: NOPTS (estimate from bit rate) bitrate=705 kb/s
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, dshow, from 'audio=DVS Receive  7-8 (Dante Virtual Soundcard)':
  Duration: N/A, start: 310127.547000, bitrate: 705 kb/s
  Stream #0:0, 1, 1/10000000: Audio: pcm_s16le, 22050 Hz, stereo, s16, 705 kb/s
Successfully opened the file.
At least one output file must be specified
ffmpeg -v 9 -loglevel 99 -sample_rate 22050 -f dshow -i audio="DVS Receive  7-8 (Dante Virtual Soundcard)"
ffmpeg version 2021-09-22-git-447cf53774-essentials_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10.3.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      57.  6.100 / 57.  6.100
  libavcodec     59.  9.100 / 59.  9.100
  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 '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-sample_rate' ... matched as AVOption 'sample_rate' with argument '22050'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'dshow'.
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 v (set logging level) with argument 9.
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 @ 000001cf957cd880] Selecting pin Capture on audio only
dshow passing through packet of type audio size    88200 timestamp 3101464310000 orig timestamp 3101464310000 graph timestamp 3101474520000 diff 10210000 DVS Receive  7-8 (Dante Virtual Soundcard)
[dshow @ 000001cf957cd880] All info found
[dshow @ 000001cf957cd880] stream 0: start_time: 310146 duration: NOPTS
[dshow @ 000001cf957cd880] format: start_time: 310146 duration: NOPTS (estimate from bit rate) bitrate=705 kb/s
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, dshow, from 'audio=DVS Receive  7-8 (Dante Virtual Soundcard)':
  Duration: N/A, start: 310146.431000, bitrate: 705 kb/s
  Stream #0:0, 1, 1/10000000: Audio: pcm_s16le, 22050 Hz, stereo, s16, 705 kb/s
Successfully opened the file.
At least one output file must be specified
dshow passing through packet of type audio size     2524 timestamp 3101474520000 orig timestamp 3101474520000 graph timestamp 3101474680000 diff 160000 DVS Receive  7-8 (Dante Virtual Soundcard)

Furthermore, please see this example which fails at 48 kHz, despite using -sample_rate before -f dshow. The only difference here is 48 kHz, vs the 22.05 kHz above:

ffmpeg -v 9 -loglevel 99 -sample_rate 48000 -f dshow -i audio="DVS Receive  7-8 (Dante Virtual Soundcard)"
ffmpeg version 2021-09-22-git-447cf53774-essentials_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10.3.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      57.  6.100 / 57.  6.100
  libavcodec     59.  9.100 / 59.  9.100
  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 '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-sample_rate' ... matched as AVOption 'sample_rate' with argument '48000'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'dshow'.
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 v (set logging level) with argument 9.
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 @ 0000024b16b7d880] Could not set audio only options
[dshow @ 0000024b16b7d880] Searching for audio device within video devices for DVS Receive  7-8 (Dante Virtual Soundcard)
[dshow @ 0000024b16b7d880] Could not find audio only device with name [DVS Receive  7-8 (Dante Virtual Soundcard)] among source devices of type video.
audio=DVS Receive  7-8 (Dante Virtual Soundcard): I/O error

Again, the key error is: "Could not set audio only options"

If you believe this issue is invalid and you have a working command line, could you please share it? Thank you.

comment:11 by Brad Isbell, 3 years ago

Resolution: invalid
Status: closedreopened

comment:12 by Elon Musk, 3 years ago

Are you able to edit dshow device in source and recompile?

comment:13 by Brad Isbell, 3 years ago

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)

comment:14 by Brad Isbell, 3 years ago

(deleted double post)

Last edited 3 years ago by Brad Isbell (previous) (diff)

comment:15 by Brad Isbell, 3 years ago

Resolution: fixed
Status: reopenedclosed

comment:16 by jhcho, 3 years ago

Resolution: fixed
Status: closedreopened

I found this bug again with the latest master branch.

comment:18 by jhcho, 3 years ago

Here is the test result with your ffmpeg link.

>ffmpeg.exe -f dshow -list_options true -i audio="HDMI(ezcap USB Live Cam)"
ffmpeg version N-105642-g538be75a69-20220215 Copyright (c) 2000-2022 the FFmpeg developers

built with gcc 11.2.0 (crosstool-NG 1.24.0.533_681aaef)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb --disable-xlib --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librist --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp --extra-version=20220215
libavutil 57. 21.100 / 57. 21.100
libavcodec 59. 21.100 / 59. 21.100
libavformat 59. 17.101 / 59. 17.101
libavdevice 59. 5.100 / 59. 5.100
libavfilter 8. 27.100 / 8. 27.100
libswscale 6. 5.100 / 6. 5.100
libswresample 4. 4.100 / 4. 4.100
libpostproc 56. 4.100 / 56. 4.100

[dshow @ 00000283bb0ab7c0] DirectShow audio only device options (from audio devices)
[dshow @ 00000283bb0ab7c0] Pin "Capture" (alternative pin name "Capture")
[dshow @ 00000283bb0ab7c0] ch= 2, bits=16, rate= 44100

Last message repeated 1 times

[dshow @ 00000283bb0ab7c0] ch= 1, bits=16, rate= 44100
[dshow @ 00000283bb0ab7c0] ch= 2, bits=16, rate= 32000
[dshow @ 00000283bb0ab7c0] ch= 1, bits=16, rate= 32000
[dshow @ 00000283bb0ab7c0] ch= 2, bits=16, rate= 22050
[dshow @ 00000283bb0ab7c0] ch= 1, bits=16, rate= 22050
[dshow @ 00000283bb0ab7c0] ch= 2, bits=16, rate= 11025
[dshow @ 00000283bb0ab7c0] ch= 1, bits=16, rate= 11025
[dshow @ 00000283bb0ab7c0] ch= 2, bits=16, rate= 8000
[dshow @ 00000283bb0ab7c0] ch= 1, bits=16, rate= 8000
[dshow @ 00000283bb0ab7c0] ch= 2, bits= 8, rate= 44100
[dshow @ 00000283bb0ab7c0] ch= 1, bits= 8, rate= 44100
[dshow @ 00000283bb0ab7c0] ch= 2, bits= 8, rate= 22050
[dshow @ 00000283bb0ab7c0] ch= 1, bits= 8, rate= 22050
[dshow @ 00000283bb0ab7c0] ch= 2, bits= 8, rate= 11025
[dshow @ 00000283bb0ab7c0] ch= 1, bits= 8, rate= 11025
[dshow @ 00000283bb0ab7c0] ch= 2, bits= 8, rate= 8000
[dshow @ 00000283bb0ab7c0] ch= 1, bits= 8, rate= 8000
[dshow @ 00000283bb0ab7c0] ch= 2, bits=16, rate= 48000
[dshow @ 00000283bb0ab7c0] ch= 1, bits=16, rate= 48000
[dshow @ 00000283bb0ab7c0] ch= 2, bits=16, rate= 96000
[dshow @ 00000283bb0ab7c0] ch= 1, bits=16, rate= 96000
audio=HDMI(ezcap USB Live Cam): Immediate exit requested

>ffmpeg.exe -f dshow -sample_rate 48000 -i audio="HDMI(ezcap USB Live Cam)" test.mp4
ffmpeg version N-105642-g538be75a69-20220215 Copyright (c) 2000-2022 the FFmpeg developers

built with gcc 11.2.0 (crosstool-NG 1.24.0.533_681aaef)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb --disable-xlib --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librist --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp --extra-version=20220215
libavutil 57. 21.100 / 57. 21.100
libavcodec 59. 21.100 / 59. 21.100
libavformat 59. 17.101 / 59. 17.101
libavdevice 59. 5.100 / 59. 5.100
libavfilter 8. 27.100 / 8. 27.100
libswscale 6. 5.100 / 6. 5.100
libswresample 4. 4.100 / 4. 4.100
libpostproc 56. 4.100 / 56. 4.100

[dshow @ 0000027d05cdb840] Could not set audio only options
[dshow @ 0000027d05cdb840] Searching for audio device within video devices for HDMI(ezcap USB Live Cam)
[dshow @ 0000027d05cdb840] Could not find audio only device with name [HDMI(ezcap USB Live Cam)] among source devices of type video.
audio=HDMI(ezcap USB Live Cam): I/O error

Here is another test result which works well(You can check ffmpeg version below)
>ffmpeg.exe -f dshow -sample_rate 48000 -i audio="HDMI(ezcap USB Live Cam)" -y test.mp4
ffmpeg version N-104704-ge22dff43e7-20211130 Copyright (c) 2000-2021 the FFmpeg developers

built with gcc 10-win32 (GCC) 20210610
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --enable-libvmaf --disable-libxcb --disable-xlib --enable-amf --enable-libaom --disable-avisynth --enable-libdav1d --disable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --disable-frei0r --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librist --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-librav1e --disable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi --disable-libvidstab --enable-vulkan --enable-libglslang --enable-libplacebo --disable-libx264 --disable-libx265 --disable-libxavs2 --disable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp --extra-version=20211130
libavutil 57. 9.101 / 57. 9.101
libavcodec 59. 14.100 / 59. 14.100
libavformat 59. 9.102 / 59. 9.102
libavdevice 59. 0.101 / 59. 0.101
libavfilter 8. 17.100 / 8. 17.100
libswscale 6. 1.101 / 6. 1.101
libswresample 4. 0.100 / 4. 0.100

Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, dshow, from 'audio=HDMI(ezcap USB Live Cam)':

Duration: N/A, start: 22728.474000, bitrate: 1536 kb/s
Stream #0:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s

Stream mapping:

Stream #0:0 -> #0:0 (pcm_s16le (native) -> aac (native))

Press [q] to stop, ? for help
Output #0, mp4, to 'test.mp4':

Metadata:

encoder : Lavf59.9.102

Stream #0:0: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s

Metadata:

encoder : Lavc59.14.100 aac

size= 0kB time=00:00:01.94 bitrate= 0.2kbits/s speed=1.28x

[q] command received. Exiting.

size= 32kB time=00:00:01.99 bitrate= 133.1kbits/s speed=1.27x
video:0kB audio:31kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.843863%
[aac @ 000001f70e379a80] Qavg: 278.321

Last edited 3 years ago by jhcho (previous) (diff)

comment:19 by jhcho, 3 years ago

I think you need to check https://github.com/FFmpeg/FFmpeg/blame/master/libavdevice/dshow.c line 1005 ~ 1021 edited about 2 months ago.

comment:20 by Balling, 3 years ago

Resolution: fixed
Status: reopenedclosed

Please open a new ticket. That is not THAT HARD. Mention that reverting a1c4929f65cc75b7175622a007b1e4bd37043d41 fixed your bug.

Last edited 3 years ago by Balling (previous) (diff)

comment:21 by Diederick Niehorster, 3 years ago

Resolution: fixed
Status: closedreopened

I accidentally undid part of Brad's fix in my patches. Will submit the same fix again.

comment:22 by Balling, 3 years ago

Last edited 3 years ago by Balling (previous) (diff)

comment:23 by Diederick Niehorster, 3 years ago

yes, just that indeed. Same fix as last time (i should have used the word revert in my commit message)

comment:24 by Balling, 3 years ago

i should have used the word revert 

No, revert is done by separate git command and should be clean. You should have send the patch separately, because most of the time we do not apply one patch in a patchset.

comment:25 by Balling, 3 years ago

Resolution: fixed
Status: reopenedclosed

Fixed in f125c504d8fece6420bb97767f9e72414c26312a. I suppose since my tv supports 24 bit 192k I can create some virtual device and test this.

Note: See TracTickets for help on using tickets.