summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/h264.c2
-rw-r--r--libavcodec/h264data.h5
2 files changed, 5 insertions, 2 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 7f37cb46af..cd6facb9b0 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -7008,7 +7008,7 @@ static inline int decode_vui_parameters(H264Context *h, SPS *sps){
if( aspect_ratio_idc == EXTENDED_SAR ) {
sps->sar.num= get_bits(&s->gb, 16);
sps->sar.den= get_bits(&s->gb, 16);
- }else if(aspect_ratio_idc < 14){
+ }else if(aspect_ratio_idc < sizeof(pixel_aspect)/sizeof(*pixel_aspect)){
sps->sar= pixel_aspect[aspect_ratio_idc];
}else{
av_log(h->s.avctx, AV_LOG_ERROR, "illegal aspect ratio\n");
diff --git a/libavcodec/h264data.h b/libavcodec/h264data.h
index 79fc5da0ef..dce1666fc8 100644
--- a/libavcodec/h264data.h
+++ b/libavcodec/h264data.h
@@ -54,7 +54,7 @@ NAL_SPS_EXT,
NAL_AUXILIARY_SLICE=19
};
-static const AVRational pixel_aspect[14]={
+static const AVRational pixel_aspect[17]={
{0, 1},
{1, 1},
{12, 11},
@@ -69,6 +69,9 @@ static const AVRational pixel_aspect[14]={
{15, 11},
{64, 33},
{160,99},
+ {4, 3},
+ {3, 2},
+ {2, 1},
};
static const uint8_t golomb_to_pict_type[5]=