[SCM] libav/experimental: Move aspect ratio 0/0 avoidance code so the values in the sps struct are not missed. This preempts issues with av_cmp_q(0/0, X)

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:16:57 UTC 2013


The following commit has been merged in the experimental branch:
commit cfa5a81ea672ac355afad88ea239f7ba5c3d72f0
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Tue Oct 5 01:43:25 2010 +0000

    Move aspect ratio 0/0 avoidance code so the values in the sps struct are not missed.
    This preempts issues with av_cmp_q(0/0, X)
    
    Originally committed as revision 25337 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index a6e30df..247dbb2 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -38,6 +38,7 @@
 #include "mathops.h"
 #include "rectangle.h"
 #include "vdpau_internal.h"
+#include "libavutil/avassert.h"
 
 #include "cabac.h"
 
@@ -1826,8 +1827,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0){
 
         avcodec_set_dimensions(s->avctx, s->width, s->height);
         s->avctx->sample_aspect_ratio= h->sps.sar;
-        if(!s->avctx->sample_aspect_ratio.den)
-            s->avctx->sample_aspect_ratio.den = 1;
+        av_assert0(s->avctx->sample_aspect_ratio.den);
 
         if(h->sps.video_signal_type_present_flag){
             s->avctx->color_range = h->sps.full_range ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG;
diff --git a/libavcodec/h264_ps.c b/libavcodec/h264_ps.c
index 6c5e065..6e12700 100644
--- a/libavcodec/h264_ps.c
+++ b/libavcodec/h264_ps.c
@@ -387,6 +387,9 @@ int ff_h264_decode_seq_parameter_set(H264Context *h){
         if (decode_vui_parameters(h, sps) < 0)
             goto fail;
 
+    if(!sps->sar.den)
+        sps->sar.den= 1;
+
     if(s->avctx->debug&FF_DEBUG_PICT_INFO){
         av_log(h->s.avctx, AV_LOG_DEBUG, "sps:%u profile:%d/%d poc:%d ref:%d %dx%d %s %s crop:%d/%d/%d/%d %s %s %d/%d\n",
                sps_id, sps->profile_idc, sps->level_idc,

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list