summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlessandro Decina <alessandro.d@gmail.com>2013-12-14 15:55:42 +0100
committerAlessandro Decina <alessandro.d@gmail.com>2013-12-14 19:18:41 +0100
commitd5eccb22855ff1a84ac587ff54821c388f9f0fc8 (patch)
tree1a253d3d2c3b83c6fb839099a85b654a838ce7aa
parent44e62613db1a17fa8860f2da52f0e6fdcc1313c4 (diff)
downloadgstreamer-plugins-bad-d5eccb22855ff1a84ac587ff54821c388f9f0fc8.tar.gz
applemedia: vtdec: handle level 3 in get_dpb_max_mb_s_from_level. oops.
-rw-r--r--sys/applemedia/vtdec.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/applemedia/vtdec.c b/sys/applemedia/vtdec.c
index 19f88256e..7ba162537 100644
--- a/sys/applemedia/vtdec.c
+++ b/sys/applemedia/vtdec.c
@@ -615,7 +615,7 @@ wrong_version:
}
static int
-get_dpb_max_mb_s_from_level (int level)
+get_dpb_max_mb_s_from_level (GstVtdec * vtdec, int level)
{
switch (level) {
case 10:
@@ -630,6 +630,7 @@ get_dpb_max_mb_s_from_level (int level)
case 21:
return 4752;
case 22:
+ case 30:
return 8100;
case 31:
return 18000;
@@ -646,6 +647,7 @@ get_dpb_max_mb_s_from_level (int level)
case 52:
return 184320;
default:
+ GST_ERROR_OBJECT (vtdec, "unknown level %d", level);
return -1;
}
}
@@ -681,7 +683,7 @@ compute_h264_decode_picture_buffer_length (GstVtdec * vtdec,
&profile, &level))
return FALSE;
- max_dpb_mb_s = get_dpb_max_mb_s_from_level (level);
+ max_dpb_mb_s = get_dpb_max_mb_s_from_level (vtdec, level);
if (max_dpb_mb_s == -1) {
GST_ELEMENT_ERROR (vtdec, STREAM, DECODE, (NULL),
("invalid level in codec_data, could not compute max_dpb_mb_s"));