]> git.sesse.net Git - vlc/commitdiff
mediacodec: do not accept codecs declaring no capabilities
authorFelix Abecassis <felix.abecassis@gmail.com>
Wed, 19 Feb 2014 15:36:09 +0000 (16:36 +0100)
committerJean-Baptiste Kempf <jb@videolan.org>
Wed, 19 Feb 2014 15:42:24 +0000 (16:42 +0100)
Previously, if profileLevels was NULL or length 0, the codec was
accepted.  Some devices have several codecs for mime type video/avc,
the first one is rejected based on the profile capability but the
second one was accepted since there was no capability declared. Since
the actual capability of the second codec was not better than the
first one, decoding failed.

Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
modules/codec/omxil/android_mediacodec.c

index bc990b1e9d6d2ffe9c6c171a239e676b21664330..330997dbb9beee6c685f1c7ec8f2032eaba1db0c 100644 (file)
@@ -323,7 +323,7 @@ static int OpenDecoder(vlc_object_t *p_this)
                 /* The mime type is matching for this component. We
                    now check if the capabilities of the codec is
                    matching the video format. */
-                if (p_dec->fmt_in.i_codec == VLC_CODEC_H264 && fmt_profile && profile_levels_len) {
+                if (p_dec->fmt_in.i_codec == VLC_CODEC_H264 && fmt_profile) {
                     for (int i = 0; i < profile_levels_len && !found; ++i) {
                         jobject profile_level = (*env)->GetObjectArrayElement(env, profile_levels, i);