Skip to content

Commit f14cddf

Browse files
author
Clement Champetier
committed
util - getVideo/AudioCodecOptions: don't skip codecs without encode function
1 parent 3063edb commit f14cddf

File tree

1 file changed

+16
-30
lines changed

1 file changed

+16
-30
lines changed

src/AvTranscoder/util.cpp

Lines changed: 16 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -229,29 +229,22 @@ OptionArrayMap getOutputFormatOptions()
229229

230230
OptionArrayMap getVideoCodecOptions()
231231
{
232-
std::map< std::string, std::vector<Option> > videoCodecOptions;
232+
OptionArrayMap videoCodecOptions;
233233

234234
AVCodec* codec = av_codec_next( NULL );
235235

236236
// iterate on codecs
237237
while( codec )
238238
{
239-
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 53, 34, 0 )
240-
if( codec->encode )
241-
#else
242-
if( codec->encode2 )
243-
#endif
239+
// add only video codec
240+
if( codec->type == AVMEDIA_TYPE_VIDEO )
244241
{
245-
// add only video codec
246-
if( codec->type == AVMEDIA_TYPE_VIDEO )
242+
if( codec->priv_class )
247243
{
248-
if( codec->priv_class )
249-
{
250-
std::string videoCodecName( codec->name );
251-
OptionArray options;
252-
loadOptions( options, (void*)&codec->priv_class, 0 );
253-
videoCodecOptions.insert( std::make_pair( videoCodecName, options ) );
254-
}
244+
std::string videoCodecName( codec->name );
245+
OptionArray options;
246+
loadOptions( options, (void*)&codec->priv_class, 0 );
247+
videoCodecOptions.insert( std::make_pair( videoCodecName, options ) );
255248
}
256249
}
257250
codec = av_codec_next( codec );
@@ -261,29 +254,22 @@ OptionArrayMap getVideoCodecOptions()
261254

262255
OptionArrayMap getAudioCodecOptions()
263256
{
264-
std::map< std::string, std::vector<Option> > audioCodecOptions;
257+
OptionArrayMap audioCodecOptions;
265258

266259
AVCodec* codec = av_codec_next( NULL );
267260

268261
// iterate on codecs
269262
while( codec )
270263
{
271-
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 53, 34, 0 )
272-
if( codec->encode )
273-
#else
274-
if( codec->encode2 )
275-
#endif
264+
// add only audio codec
265+
if( codec->type == AVMEDIA_TYPE_AUDIO )
276266
{
277-
// add only audio codec
278-
if( codec->type == AVMEDIA_TYPE_AUDIO )
267+
if( codec->priv_class )
279268
{
280-
if( codec->priv_class )
281-
{
282-
std::string audioCodecName( codec->name );
283-
OptionArray options;
284-
loadOptions( options, (void*)&codec->priv_class, 0 );
285-
audioCodecOptions.insert( std::make_pair( audioCodecName, options ) );
286-
}
269+
std::string audioCodecName( codec->name );
270+
OptionArray options;
271+
loadOptions( options, (void*)&codec->priv_class, 0 );
272+
audioCodecOptions.insert( std::make_pair( audioCodecName, options ) );
287273
}
288274
}
289275
codec = av_codec_next( codec );

0 commit comments

Comments
 (0)