@@ -109,12 +109,13 @@ std::string getSampleFormatName(const AVSampleFormat sampleFormat)
109
109
return formatName ?std::string (formatName) :" " ;
110
110
}
111
111
112
- std::vector<AVOutputFormat*>getAvailableFormats ()
112
+ std::vector<const AVOutputFormat*>getAvailableFormats ()
113
113
{
114
- std::vector<AVOutputFormat*> formats;
114
+ std::vector<const AVOutputFormat*> formats;
115
+ void * formatOpaque =NULL ;
115
116
116
- AVOutputFormat* fmt =NULL ;
117
- while ((fmt =av_oformat_next (fmt )))
117
+ const AVOutputFormat* fmt =NULL ;
118
+ while ((fmt =av_muxer_iterate (&formatOpaque )))
118
119
{
119
120
if (!fmt->name )
120
121
continue ;
@@ -127,10 +128,10 @@ std::vector<AVOutputFormat*> getAvailableFormats()
127
128
NamesMapgetAvailableFormatsNames ()
128
129
{
129
130
NamesMap formatsNames;
130
- std::vector<AVOutputFormat*> formats =getAvailableFormats ();
131
+ std::vector<const AVOutputFormat*> formats =getAvailableFormats ();
131
132
for (size_t i =0 ; i < formats.size (); ++i)
132
133
{
133
- AVOutputFormat* fmt = formats.at (i);
134
+ const AVOutputFormat* fmt = formats.at (i);
134
135
formatsNames.insert (std::make_pair (std::string (fmt->name ),std::string (fmt->long_name ? fmt->long_name :" " )));
135
136
}
136
137
return formatsNames;
@@ -139,10 +140,10 @@ NamesMap getAvailableFormatsNames()
139
140
NamesMapgetAvailableVideoFormatsNames ()
140
141
{
141
142
NamesMap formatsNames;
142
- std::vector<AVOutputFormat*> formats =getAvailableFormats ();
143
+ std::vector<const AVOutputFormat*> formats =getAvailableFormats ();
143
144
for (size_t i =0 ; i < formats.size (); ++i)
144
145
{
145
- AVOutputFormat* fmt = formats.at (i);
146
+ const AVOutputFormat* fmt = formats.at (i);
146
147
// skip format which cannot handle video
147
148
if (fmt->video_codec == AV_CODEC_ID_NONE)
148
149
continue ;
@@ -154,10 +155,10 @@ NamesMap getAvailableVideoFormatsNames()
154
155
NamesMapgetAvailableAudioFormatsNames ()
155
156
{
156
157
NamesMap formatsNames;
157
- std::vector<AVOutputFormat*> formats =getAvailableFormats ();
158
+ std::vector<const AVOutputFormat*> formats =getAvailableFormats ();
158
159
for (size_t i =0 ; i < formats.size (); ++i)
159
160
{
160
- AVOutputFormat* fmt = formats.at (i);
161
+ const AVOutputFormat* fmt = formats.at (i);
161
162
// skip format which cannot handle audio
162
163
if (fmt->audio_codec == AV_CODEC_ID_NONE)
163
164
continue ;
@@ -166,12 +167,13 @@ NamesMap getAvailableAudioFormatsNames()
166
167
return formatsNames;
167
168
}
168
169
169
- std::vector<AVCodec*>getAvailableCodecs ()
170
+ std::vector<const AVCodec*>getAvailableCodecs ()
170
171
{
171
- std::vector<AVCodec*> codecs;
172
+ std::vector<const AVCodec*> codecs;
172
173
173
- AVCodec* c =NULL ;
174
- while ((c =av_codec_next (c)))
174
+ const AVCodec* c =NULL ;
175
+ void * cOpaque =NULL ;
176
+ while ((c =av_codec_iterate (&cOpaque)))
175
177
{
176
178
if (!c->name )
177
179
continue ;
@@ -184,10 +186,10 @@ std::vector<AVCodec*> getAvailableCodecs()
184
186
NamesMapgetAvailableVideoCodecsNames ()
185
187
{
186
188
NamesMap videoCodecsNames;
187
- std::vector<AVCodec*> codecs =getAvailableCodecs ();
189
+ std::vector<const AVCodec*> codecs =getAvailableCodecs ();
188
190
for (size_t i =0 ; i < codecs.size (); ++i)
189
191
{
190
- AVCodec* c = codecs.at (i);
192
+ const AVCodec* c = codecs.at (i);
191
193
if (c->type == AVMEDIA_TYPE_VIDEO)
192
194
{
193
195
videoCodecsNames.insert (std::make_pair (std::string (c->name ),std::string (c->long_name ? c->long_name :" " )));
@@ -199,10 +201,10 @@ NamesMap getAvailableVideoCodecsNames()
199
201
NamesMapgetAvailableAudioCodecsNames ()
200
202
{
201
203
NamesMap audioCodecsNames;
202
- std::vector<AVCodec*> codecs =getAvailableCodecs ();
204
+ std::vector<const AVCodec*> codecs =getAvailableCodecs ();
203
205
for (size_t i =0 ; i < codecs.size (); ++i)
204
206
{
205
- AVCodec* c = codecs.at (i);
207
+ const AVCodec* c = codecs.at (i);
206
208
if (c->type == AVMEDIA_TYPE_AUDIO)
207
209
{
208
210
audioCodecsNames.insert (std::make_pair (std::string (c->name ),std::string (c->long_name ? c->long_name :" " )));
@@ -215,7 +217,8 @@ OptionArrayMap getAvailableOptionsPerOutputFormat()
215
217
{
216
218
OptionArrayMap optionsPerFormat;
217
219
218
- AVOutputFormat* outputFormat =av_oformat_next (NULL );
220
+ void * outputFormatOpaque =NULL ;
221
+ const AVOutputFormat* outputFormat =av_muxer_iterate (&outputFormatOpaque);
219
222
220
223
// iterate on formats
221
224
while (outputFormat)
@@ -230,7 +233,7 @@ OptionArrayMap getAvailableOptionsPerOutputFormat()
230
233
loadOptions (options, (void *)&outputFormat->priv_class ,0 );
231
234
}
232
235
optionsPerFormat.insert (std::make_pair (outputFormatName, options));
233
- outputFormat =av_oformat_next (outputFormat );
236
+ outputFormat =av_muxer_iterate (&outputFormatOpaque );
234
237
}
235
238
return optionsPerFormat;
236
239
}
@@ -239,7 +242,8 @@ OptionArrayMap getAvailableOptionsPerVideoCodec()
239
242
{
240
243
OptionArrayMap videoCodecOptions;
241
244
242
- AVCodec* codec =av_codec_next (NULL );
245
+ void * codecOpaque =NULL ;
246
+ const AVCodec* codec =av_codec_iterate (&codecOpaque);
243
247
244
248
// iterate on codecs
245
249
while (codec)
@@ -258,7 +262,7 @@ OptionArrayMap getAvailableOptionsPerVideoCodec()
258
262
}
259
263
videoCodecOptions.insert (std::make_pair (videoCodecName, options));
260
264
}
261
- codec =av_codec_next (codec );
265
+ codec =av_codec_iterate (&codecOpaque );
262
266
}
263
267
return videoCodecOptions;
264
268
}
@@ -267,7 +271,8 @@ OptionArrayMap getAvailableOptionsPerAudioCodec()
267
271
{
268
272
OptionArrayMap audioCodecOptions;
269
273
270
- AVCodec* codec =av_codec_next (NULL );
274
+ void * codecOpaque =NULL ;
275
+ const AVCodec* codec =av_codec_iterate (&codecOpaque);
271
276
272
277
// iterate on codecs
273
278
while (codec)
@@ -286,7 +291,7 @@ OptionArrayMap getAvailableOptionsPerAudioCodec()
286
291
}
287
292
audioCodecOptions.insert (std::make_pair (audioCodecName, options));
288
293
}
289
- codec =av_codec_next (codec );
294
+ codec =av_codec_iterate (&codecOpaque );
290
295
}
291
296
return audioCodecOptions;
292
297
}