mbox series

[FFmpeg-devel,v5,00/13] dshow enhancements

Message ID 20211219192134.1296-1-dcnieho@gmail.com
Headers show
Series dshow enhancements | expand


Diederick C. Niehorster Dec. 19, 2021, 7:21 p.m. UTC
This series solves some outstanding bugs in the dshow device, implements
get_device_list so that `ffmpeg -sources dshow` works and adds logic to
select a video format with extended color information (color range,
space, etc) if exposed by the device.

v5 adresses a comment received offlist for patch 5/13 (now emits log
message when a sample timestamp is missing.

This is a new version of part of the patch series in
addressing review comments i got there. They have been previously OK'ed
offlist by the dshow maintainer Roger Pack. Specifically, these patches
are the enhancements that should be uncontroversial as they do not touch
the avformat API. I hope they can be swiftly pushed by someone, then
i'll re-send the other more controversial patches on top of these.

Diederick Niehorster (13):
  avdevice/dshow: prevent NULL access
  avdevice/dshow: implement option to use device video timestamps
  avdevice/dshow: add use_video_device_timestamps to docs
  avdevice/dshow: query graph and sample time only once
  avdevice/dshow: handle unknown sample time
  avdevice/dshow: set no-seek flags
  avdevice/dshow: implement get_device_list
  avdevice/dshow: list_devices: show media type(s) per device
  avdevice: add info about media types(s) to AVDeviceInfo
  avdevice/dshow: add media type info to get_device_list
  fftools: provide media type info for devices
  avdevice/dshow: discover source color range/space/etc
  avdevice/dshow: select format with extended color info

 doc/indevs.texi             |   6 +
 fftools/cmdutils.c          |  34 +-
 libavdevice/avdevice.c      |   2 +
 libavdevice/avdevice.h      |   2 +
 libavdevice/dshow.c         | 838 +++++++++++++++++++++++++++++++-----
 libavdevice/dshow_capture.h |   1 +
 libavdevice/dshow_pin.c     |  52 ++-
 libavdevice/version.h       |   2 +-
 8 files changed, 801 insertions(+), 136 deletions(-)