Opened 14 months ago

Closed 13 months ago

Last modified 13 months ago

#7848 closed defect (fixed)

ffmpeg -devices doesn't show gdigrab as a device

Reported by: dangibson Owned by:
Priority: minor Component: avdevice
Version: git-master Keywords: gdigrab
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no


I've just started using ffmpeg and I think I've found an issue.

Running 'ffmpeg -devices' shows:

ffmpeg version 4.1.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 8.2.1 (GCC) 20190212
  configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbl
uray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy -
-enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg
--enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --
enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100
 D. = Demuxing supported
 .E = Muxing supported
 D  dshow           DirectShow capture
 D  lavfi           Libavfilter virtual input device
  E sdl,sdl2        SDL2 output device
 D  vfwcap          VfW video capture

The manpage for devices says it should show gdigrab as a device, but it's not appearing.

This also means that using av_input_video_device_next to enumerate the devices doesn't include gdigrab - I _think_ it should?

In libavdevice/gdigrab.c, the gdigrab_class structure doesn't include a line:


libavdevice/dshow.c does include that line.

As a result, running ffmpeg -devices doesn't show gdigrab as a device.

Change History (4)

comment:2 Changed 13 months ago by dangibson

Sorry, I don't know how to build ffmpeg, so I can't try it.

comment:3 Changed 13 months ago by cus

  • Resolution set to fixed
  • Status changed from new to closed

comment:4 Changed 13 months ago by cehoyos

  • Component changed from undetermined to avdevice
  • Keywords gdigrab added
  • Priority changed from normal to minor
  • Version changed from 4.1 to git-master
Note: See TracTickets for help on using tickets.