]> granicus.if.org Git - handbrake/commitdiff
Prevents a bus error at scan time with DVDs that have a weird cell structure. Much...
authorjbrjake <jb.rubin@gmail.com>
Fri, 17 Aug 2007 20:57:52 +0000 (20:57 +0000)
committerjbrjake <jb.rubin@gmail.com>
Fri, 17 Aug 2007 20:57:52 +0000 (20:57 +0000)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@828 b64f7644-9d1e-0410-96f1-a4d463321fa5

libhb/decmpeg2.c

index 359a79e355b2864b1a50d8b59555818481278438..77c6c0b9859dfd7673844a256b57bd0606c53619 100644 (file)
@@ -302,16 +302,19 @@ void hb_libmpeg2_info( hb_libmpeg2_t * m, int * width, int * height,
 {
     *width  = m->width;
     *height = m->height;
-    if( (m->info->display_picture->flags & PROGRESSIVE) && (m->height == 480) )
-      {
-          /* The frame is progressive and it's NTSC DVD height, so change its FPS to 23.976.
-             This might not be correct for the title. It's really just for scan.c's benefit.
-             Scan.c will reset the fps to 29.97, until a simple majority of the preview
-             frames report at 23.976.
-          */
-          //hb_log("Detecting NTSC Progressive Frame");
-          m->rate = 1126125;
-      }
+    if (m->info->display_fbuf)
+    {
+        if( (m->info->display_picture->flags & PROGRESSIVE) && (m->height == 480) )
+        {
+            /* The frame is progressive and it's NTSC DVD height, so change its FPS to 23.976.
+               This might not be correct for the title. It's really just for scan.c's benefit.
+               Scan.c will reset the fps to 29.97, until a simple majority of the preview
+               frames report at 23.976.
+            */
+            //hb_log("Detecting NTSC Progressive Frame");
+            m->rate = 1126125;
+        }
+    }
     *rate   = m->rate;
     *aspect_ratio = m->aspect_ratio;
 }