Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Diederick Niehorster <dcnieho@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Cc: Diederick Niehorster <dcnieho@gmail.com>
Subject: [FFmpeg-devel] [PATCH v5 09/13] avdevice: add info about media types(s) to AVDeviceInfo
Date: Sun, 19 Dec 2021 20:21:30 +0100
Message-ID: <20211219192134.1296-10-dcnieho@gmail.com> (raw)
In-Reply-To: <20211219192134.1296-1-dcnieho@gmail.com>

An avdevice, regardless of whether its category says its an audio or
video device, may provide access to devices providing different media
types, or even single devices providing multiple media types. Also, some
devices may provide no media types. dshow is an example encompassing all
of these cases. Users should be provided with this information, so
AVDeviceInfo is extended to provide it.

Bump avdevice version

Signed-off-by: Diederick Niehorster <dcnieho@gmail.com>
---
 libavdevice/avdevice.c | 2 ++
 libavdevice/avdevice.h | 2 ++
 libavdevice/version.h  | 2 +-
 3 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/libavdevice/avdevice.c b/libavdevice/avdevice.c
index 2ae26ab8e3..712ef1e80c 100644
--- a/libavdevice/avdevice.c
+++ b/libavdevice/avdevice.c
@@ -157,6 +157,8 @@ void avdevice_free_list_devices(AVDeviceInfoList **device_list)
         if (dev) {
             av_freep(&dev->device_name);
             av_freep(&dev->device_description);
+            if (dev->media_types)
+                av_freep(&dev->media_types);
             av_free(dev);
         }
     }
diff --git a/libavdevice/avdevice.h b/libavdevice/avdevice.h
index 8370bbc7f2..6f24976dcc 100644
--- a/libavdevice/avdevice.h
+++ b/libavdevice/avdevice.h
@@ -457,6 +457,8 @@ void avdevice_capabilities_free(AVDeviceCapabilitiesQuery **caps, AVFormatContex
 typedef struct AVDeviceInfo {
     char *device_name;                   /**< device name, format depends on device */
     char *device_description;            /**< human friendly name */
+    enum AVMediaType *media_types;       /**< array indicating what media types(s), if any, a device can provide. If null, cannot provide any */
+    int nb_media_types;                  /**< length of media_types array, 0 if device cannot provide any media types */
 } AVDeviceInfo;
 
 /**
diff --git a/libavdevice/version.h b/libavdevice/version.h
index 914e156ec7..c549768e12 100644
--- a/libavdevice/version.h
+++ b/libavdevice/version.h
@@ -28,7 +28,7 @@
 #include "libavutil/version.h"
 
 #define LIBAVDEVICE_VERSION_MAJOR  59
-#define LIBAVDEVICE_VERSION_MINOR   0
+#define LIBAVDEVICE_VERSION_MINOR   1
 #define LIBAVDEVICE_VERSION_MICRO 101
 
 #define LIBAVDEVICE_VERSION_INT AV_VERSION_INT(LIBAVDEVICE_VERSION_MAJOR, \
-- 
2.28.0.windows.1

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  parent reply	other threads:[~2021-12-19 19:23 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-19 19:21 [FFmpeg-devel] [PATCH v5 00/13] dshow enhancements Diederick Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 01/13] avdevice/dshow: prevent NULL access Diederick Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 02/13] avdevice/dshow: implement option to use device video timestamps Diederick Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 03/13] avdevice/dshow: add use_video_device_timestamps to docs Diederick Niehorster
2021-12-20  0:42   ` Andreas Rheinhardt
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 04/13] avdevice/dshow: query graph and sample time only once Diederick Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 05/13] avdevice/dshow: handle unknown sample time Diederick Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 06/13] avdevice/dshow: set no-seek flags Diederick Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 07/13] avdevice/dshow: implement get_device_list Diederick Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 08/13] avdevice/dshow: list_devices: show media type(s) per device Diederick Niehorster
2021-12-20  0:55   ` Andreas Rheinhardt
2021-12-19 19:21 ` Diederick Niehorster [this message]
2021-12-20  0:59   ` [FFmpeg-devel] [PATCH v5 09/13] avdevice: add info about media types(s) to AVDeviceInfo Andreas Rheinhardt
2021-12-20  9:54     ` Diederick C. Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 10/13] avdevice/dshow: add media type info to get_device_list Diederick Niehorster
2021-12-20  1:04   ` Andreas Rheinhardt
2021-12-20  8:01     ` Diederick C. Niehorster
2021-12-21 11:55       ` Diederick C. Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 11/13] fftools: provide media type info for devices Diederick Niehorster
2021-12-20  1:22   ` Andreas Rheinhardt
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 12/13] avdevice/dshow: discover source color range/space/etc Diederick Niehorster
2021-12-20  1:27   ` Andreas Rheinhardt
2021-12-20  8:10     ` Diederick C. Niehorster
2021-12-19 19:21 ` [FFmpeg-devel] [PATCH v5 13/13] avdevice/dshow: select format with extended color info Diederick Niehorster
2021-12-20  1:32   ` Andreas Rheinhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211219192134.1296-10-dcnieho@gmail.com \
    --to=dcnieho@gmail.com \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git