Bug 1242465 - when defined USING_MOZFFVPX use by default videoCodec in FindAVCodec. r?jya
--- a/dom/media/platforms/ffmpeg/FFmpegDecoderModule.h
+++ b/dom/media/platforms/ffmpeg/FFmpegDecoderModule.h
@@ -54,27 +54,30 @@ public:
RefPtr<MediaDataDecoder> decoder =
new FFmpegAudioDecoder<V>(mLib, aAudioTaskQueue, aCallback, aConfig);
return decoder.forget();
#endif
}
bool SupportsMimeType(const nsACString& aMimeType) const override
{
+ AVCodecID videoCodec = FFmpegVideoDecoder<V>::GetCodecId(aMimeType);
#ifdef USING_MOZFFVPX
- AVCodecID audioCodec = AV_CODEC_ID_NONE;
+ if (videoCodec == AV_CODEC_ID_NONE) {
+ return false;
+ }
+ return !!FFmpegDataDecoder<V>::FindAVCodec(mLib, videoCodec);
#else
AVCodecID audioCodec = FFmpegAudioDecoder<V>::GetCodecId(aMimeType);
-#endif
- AVCodecID videoCodec = FFmpegVideoDecoder<V>::GetCodecId(aMimeType);
if (audioCodec == AV_CODEC_ID_NONE && videoCodec == AV_CODEC_ID_NONE) {
return false;
}
AVCodecID codec = audioCodec != AV_CODEC_ID_NONE ? audioCodec : videoCodec;
return !!FFmpegDataDecoder<V>::FindAVCodec(mLib, codec);
+#endif
}
ConversionRequired
DecoderNeedsConversion(const TrackInfo& aConfig) const override
{
if (aConfig.IsVideo() &&
(aConfig.mMimeType.EqualsLiteral("video/avc") ||
aConfig.mMimeType.EqualsLiteral("video/mp4"))) {