[FFmpeg-devel] [PATCH 77/87] avdevice/avdevice: Constify av_*_device_next API
James Almer
jamrial at gmail.com
Mon Apr 19 17:10:14 EEST 2021
From: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
---
doc/APIchanges | 4 ++++
fftools/cmdutils.c | 4 ++--
libavdevice/alldevices.c | 16 ++++++++--------
libavdevice/avdevice.h | 8 ++++----
4 files changed, 18 insertions(+), 14 deletions(-)
diff --git a/doc/APIchanges b/doc/APIchanges
index 443cb84b27..f405cd789c 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -17,6 +17,10 @@ API changes, most recent first:
2021-04-17 - xxxxxxxxxx - lavu 56.73.100 - frame.h detection_bbox.h
Add AV_FRAME_DATA_DETECTION_BBOXES
+2021-04-14 - xxxxxxxxxx - lavd yyyyyyyyy - avdevice.h
+ The av_*_device_next API functions now accept and return
+ pointers to const AVInputFormat resp. AVOutputFormat.
+
2021-04-14 - xxxxxxxxxx - lavd yyyyyyyyy - avdevice.h
avdevice_list_input_sources and avdevice_list_output_sinks now accept
pointers to const AVInputFormat resp. const AVOutputFormat.
diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c
index 822fa8df45..4148285971 100644
--- a/fftools/cmdutils.c
+++ b/fftools/cmdutils.c
@@ -2289,7 +2289,7 @@ static int show_sinks_sources_parse_arg(const char *arg, char **dev, AVDictionar
int show_sources(void *optctx, const char *opt, const char *arg)
{
- AVInputFormat *fmt = NULL;
+ const AVInputFormat *fmt = NULL;
char *dev = NULL;
AVDictionary *opts = NULL;
int ret = 0;
@@ -2327,7 +2327,7 @@ int show_sources(void *optctx, const char *opt, const char *arg)
int show_sinks(void *optctx, const char *opt, const char *arg)
{
- AVOutputFormat *fmt = NULL;
+ const AVOutputFormat *fmt = NULL;
char *dev = NULL;
AVDictionary *opts = NULL;
int ret = 0;
diff --git a/libavdevice/alldevices.c b/libavdevice/alldevices.c
index 92b27a1d14..f65317018a 100644
--- a/libavdevice/alldevices.c
+++ b/libavdevice/alldevices.c
@@ -68,7 +68,7 @@ void avdevice_register_all(void)
avpriv_register_devices(outdev_list, indev_list);
}
-static void *next_input(const AVInputFormat *prev, AVClassCategory c2)
+static const void *next_input(const AVInputFormat *prev, AVClassCategory c2)
{
const AVClass *pc;
const AVClassCategory c1 = AV_CLASS_CATEGORY_DEVICE_INPUT;
@@ -91,10 +91,10 @@ static void *next_input(const AVInputFormat *prev, AVClassCategory c2)
continue;
category = pc->category;
} while (category != c1 && category != c2);
- return (AVInputFormat *)fmt;
+ return fmt;
}
-static void *next_output(const AVOutputFormat *prev, AVClassCategory c2)
+static const void *next_output(const AVOutputFormat *prev, AVClassCategory c2)
{
const AVClass *pc;
const AVClassCategory c1 = AV_CLASS_CATEGORY_DEVICE_OUTPUT;
@@ -117,25 +117,25 @@ static void *next_output(const AVOutputFormat *prev, AVClassCategory c2)
continue;
category = pc->category;
} while (category != c1 && category != c2);
- return (AVOutputFormat *)fmt;
+ return fmt;
}
-AVInputFormat *av_input_audio_device_next(AVInputFormat *d)
+const AVInputFormat *av_input_audio_device_next(const AVInputFormat *d)
{
return next_input(d, AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT);
}
-AVInputFormat *av_input_video_device_next(AVInputFormat *d)
+const AVInputFormat *av_input_video_device_next(const AVInputFormat *d)
{
return next_input(d, AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT);
}
-AVOutputFormat *av_output_audio_device_next(AVOutputFormat *d)
+const AVOutputFormat *av_output_audio_device_next(const AVOutputFormat *d)
{
return next_output(d, AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT);
}
-AVOutputFormat *av_output_video_device_next(AVOutputFormat *d)
+const AVOutputFormat *av_output_video_device_next(const AVOutputFormat *d)
{
return next_output(d, AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT);
}
diff --git a/libavdevice/avdevice.h b/libavdevice/avdevice.h
index d0b0f23f5d..8370bbc7f2 100644
--- a/libavdevice/avdevice.h
+++ b/libavdevice/avdevice.h
@@ -77,7 +77,7 @@ void avdevice_register_all(void);
* if d is non-NULL, returns the next registered input audio/video device after d
* or NULL if d is the last one.
*/
-AVInputFormat *av_input_audio_device_next(AVInputFormat *d);
+const AVInputFormat *av_input_audio_device_next(const AVInputFormat *d);
/**
* Video input devices iterator.
@@ -86,7 +86,7 @@ AVInputFormat *av_input_audio_device_next(AVInputFormat *d);
* if d is non-NULL, returns the next registered input audio/video device after d
* or NULL if d is the last one.
*/
-AVInputFormat *av_input_video_device_next(AVInputFormat *d);
+const AVInputFormat *av_input_video_device_next(const AVInputFormat *d);
/**
* Audio output devices iterator.
@@ -95,7 +95,7 @@ AVInputFormat *av_input_video_device_next(AVInputFormat *d);
* if d is non-NULL, returns the next registered output audio/video device after d
* or NULL if d is the last one.
*/
-AVOutputFormat *av_output_audio_device_next(AVOutputFormat *d);
+const AVOutputFormat *av_output_audio_device_next(const AVOutputFormat *d);
/**
* Video output devices iterator.
@@ -104,7 +104,7 @@ AVOutputFormat *av_output_audio_device_next(AVOutputFormat *d);
* if d is non-NULL, returns the next registered output audio/video device after d
* or NULL if d is the last one.
*/
-AVOutputFormat *av_output_video_device_next(AVOutputFormat *d);
+const AVOutputFormat *av_output_video_device_next(const AVOutputFormat *d);
typedef struct AVDeviceRect {
int x; /**< x coordinate of top left corner */
--
2.31.1
More information about the ffmpeg-devel
mailing list