diff options
author | Andreas Rheinhardt <andreas.rheinhardt@gmail.com> | 2021-02-25 03:11:32 +0100 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2021-04-27 10:43:08 -0300 |
commit | 56450a0ee4fdda160f4039fc2ae33edfd27765c9 (patch) | |
tree | a7566fa8dba9d38e4c748db1d1e673aee09c5244 /fftools | |
parent | f0c7fa2c484e197dae05fbda70a15b5e2ce81e9a (diff) | |
download | ffmpeg-56450a0ee4fdda160f4039fc2ae33edfd27765c9.tar.gz |
avformat: Constify the API wrt AV(In|Out)putFormat
Also constify AVProbeData.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'fftools')
-rw-r--r-- | fftools/ffmpeg_opt.c | 12 | ||||
-rw-r--r-- | fftools/ffplay.c | 7 | ||||
-rw-r--r-- | fftools/ffprobe.c | 2 |
3 files changed, 12 insertions, 9 deletions
diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index 807e783422..9e26de5a94 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -1068,7 +1068,7 @@ static int open_input_file(OptionsContext *o, const char *filename) { InputFile *f; AVFormatContext *ic; - AVInputFormat *file_iformat = NULL; + const AVInputFormat *file_iformat = NULL; int err, i, ret; int64_t timestamp; AVDictionary *unused_opts = NULL; @@ -1117,20 +1117,22 @@ static int open_input_file(OptionsContext *o, const char *filename) av_dict_set_int(&o->g->format_opts, "sample_rate", o->audio_sample_rate[o->nb_audio_sample_rate - 1].u.i, 0); } if (o->nb_audio_channels) { + const AVClass *priv_class; /* because we set audio_channels based on both the "ac" and * "channel_layout" options, we need to check that the specified * demuxer actually has the "channels" option before setting it */ - if (file_iformat && file_iformat->priv_class && - av_opt_find(&file_iformat->priv_class, "channels", NULL, 0, + if (file_iformat && (priv_class = file_iformat->priv_class) && + av_opt_find(&priv_class, "channels", NULL, 0, AV_OPT_SEARCH_FAKE_OBJ)) { av_dict_set_int(&o->g->format_opts, "channels", o->audio_channels[o->nb_audio_channels - 1].u.i, 0); } } if (o->nb_frame_rates) { + const AVClass *priv_class; /* set the format-level framerate option; * this is important for video grabbers, e.g. x11 */ - if (file_iformat && file_iformat->priv_class && - av_opt_find(&file_iformat->priv_class, "framerate", NULL, 0, + if (file_iformat && (priv_class = file_iformat->priv_class) && + av_opt_find(&priv_class, "framerate", NULL, 0, AV_OPT_SEARCH_FAKE_OBJ)) { av_dict_set(&o->g->format_opts, "framerate", o->frame_rates[o->nb_frame_rates - 1].u.str, 0); diff --git a/fftools/ffplay.c b/fftools/ffplay.c index e14c800b8f..0be1d90bf9 100644 --- a/fftools/ffplay.c +++ b/fftools/ffplay.c @@ -203,7 +203,7 @@ typedef struct Decoder { typedef struct VideoState { SDL_Thread *read_tid; - AVInputFormat *iformat; + const AVInputFormat *iformat; int abort_request; int force_refresh; int paused; @@ -308,7 +308,7 @@ typedef struct VideoState { } VideoState; /* options specified by the user */ -static AVInputFormat *file_iformat; +static const AVInputFormat *file_iformat; static const char *input_filename; static const char *window_title; static int default_width = 640; @@ -3075,7 +3075,8 @@ static int read_thread(void *arg) return 0; } -static VideoState *stream_open(const char *filename, AVInputFormat *iformat) +static VideoState *stream_open(const char *filename, + const AVInputFormat *iformat) { VideoState *is; diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index a2cb7dc986..13ed16431d 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -257,7 +257,7 @@ static const OptionDef *options; /* FFprobe context */ static const char *input_filename; static const char *print_input_filename; -static AVInputFormat *iformat = NULL; +static const AVInputFormat *iformat = NULL; static struct AVHashContext *hash; |