Diederick Niehorster: > 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 <dcni...@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_freep() can handle the case of dev->media_types == NULL just fine, so the check can be removed (yes, this might be a tiny bit slower in case dev->media_types is NULL, but this is not hot code). > 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 */ Personally, I'd prefer it if this were unsigned given that negative values don't make sense. But this is just a personal preference. > } 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 MICRO should be reset if MINOR is bumped. > > #define LIBAVDEVICE_VERSION_INT AV_VERSION_INT(LIBAVDEVICE_VERSION_MAJOR, \ > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".