]> granicus.if.org Git - handbrake/commitdiff
WinGui: Simplify the GetPreview code and remove code that was causing the BitMap...
authorsr55 <sr55.hb@outlook.com>
Thu, 20 Jul 2017 18:38:15 +0000 (19:38 +0100)
committersr55 <sr55.hb@outlook.com>
Thu, 20 Jul 2017 18:39:02 +0000 (19:39 +0100)
win/CS/HandBrake.ApplicationServices/Interop/HandBrakeInstance.cs

index 7919086ccb0972c3f943e2253ec37e41e8042858..dda3e39c7dd45d06f253a31271ddb2fe22ae3807 100644 (file)
@@ -292,16 +292,6 @@ namespace HandBrake.ApplicationServices.Interop
                 }\r
             };\r
 \r
-            // Sanitize the input.\r
-            Geometry resultGeometry = AnamorphicFactory.CreateGeometry(settings, new SourceVideoInfo(new Size(title.Geometry.Width, title.Geometry.Height), new Size(title.Geometry.PAR.Num, title.Geometry.PAR.Den)));\r
-            int width = resultGeometry.Width * resultGeometry.PAR.Num / resultGeometry.PAR.Den;\r
-            int height = resultGeometry.Height;\r
-\r
-            uiGeometry.geometry.width = width;\r
-            uiGeometry.geometry.height = height;\r
-            uiGeometry.geometry.par.num = settings.PixelAspectX;\r
-            uiGeometry.geometry.par.den = settings.PixelAspectY;\r
-\r
             // Fetch the image data from LibHb\r
             IntPtr resultingImageStuct = HBFunctions.hb_get_preview2(this.hbHandle, settings.TitleNumber, previewNumber, ref uiGeometry, 0);\r
             hb_image_s image = InteropUtilities.ToStructureFromPtr<hb_image_s>(resultingImageStuct);\r
@@ -314,8 +304,9 @@ namespace HandBrake.ApplicationServices.Interop
             byte[] managedBuffer = new byte[imageBufferSize];\r
             Marshal.Copy(image.plane[0].data, managedBuffer, 0, imageBufferSize);\r
 \r
-            var bitmap = new Bitmap(width, height);\r
-            BitmapData bitmapData = bitmap.LockBits(new Rectangle(0, 0, width, height), ImageLockMode.WriteOnly, PixelFormat.Format32bppRgb);\r
+            var bitmap = new Bitmap(image.width, image.height);\r
+\r
+            BitmapData bitmapData = bitmap.LockBits(new Rectangle(0, 0, image.width, image.height), ImageLockMode.WriteOnly, PixelFormat.Format32bppRgb);\r
 \r
             IntPtr ptr = bitmapData.Scan0; // Pointer to the first pixel.\r
             for (int i = 0; i < image.height; i++)\r
@@ -323,7 +314,7 @@ namespace HandBrake.ApplicationServices.Interop
                 try\r
                 {\r
                     Marshal.Copy(managedBuffer, i * stride_width, ptr, stride_width);\r
-                    ptr = IntPtr.Add(ptr, width * 4);\r
+                    ptr = IntPtr.Add(ptr, image.width * 4);\r
                 }\r
                 catch (Exception exc)\r
                 {\r