winscreencap: Fix compiling with mingw
authorRaimo Järvi <raimo.jarvi@gmail.com>
Tue, 20 Mar 2012 22:17:47 +0000 (00:17 +0200)
committerTim-Philipp Müller <tim.muller@collabora.co.uk>
Tue, 20 Mar 2012 22:46:05 +0000 (22:46 +0000)
https://bugzilla.gnome.org/show_bug.cgi?id=672505

sys/winscreencap/gstdx9screencapsrc.c
sys/winscreencap/gstgdiscreencapsrc.c

index 72a04ce..029053d 100644 (file)
@@ -296,14 +296,15 @@ gst_dx9screencapsrc_set_caps (GstBaseSrc * bsrc, GstCaps * caps)
     src->src_rect.bottom = src->src_rect.top + src->capture_h;
   }
 
-  if (framerate = gst_structure_get_value (structure, "framerate")) {
+  framerate = gst_structure_get_value (structure, "framerate");
+  if (framerate) {
     src->rate_numerator = gst_value_get_fraction_numerator (framerate);
     src->rate_denominator = gst_value_get_fraction_denominator (framerate);
   }
 
   GST_DEBUG_OBJECT (src, "size %dx%d, %d/%d fps",
-      src->src_rect.right - src->src_rect.left,
-      src->src_rect.bottom - src->src_rect.top,
+      (gint) (src->src_rect.right - src->src_rect.left),
+      (gint) (src->src_rect.bottom - src->src_rect.top),
       src->rate_numerator, src->rate_denominator);
 
   return TRUE;
@@ -390,26 +391,26 @@ gst_dx9screencapsrc_create_caps_from_format (D3DFORMAT fmt,
       depth = 15;
       endianness = G_BYTE_ORDER;
       alpha = GST_VIDEO_ALPHA_MASK_15_INT;
-      red = GST_VIDEO_RED_MASK_15_INT;
-      green = GST_VIDEO_GREEN_MASK_15_INT;
-      blue = GST_VIDEO_BLUE_MASK_15_INT;
+      red = GST_VIDEO_COMP1_MASK_15_INT;
+      green = GST_VIDEO_COMP2_MASK_15_INT;
+      blue = GST_VIDEO_COMP3_MASK_15_INT;
       break;
     case D3DFMT_X1R5G5B5:
       bpp = 16;
       depth = 15;
       endianness = G_BYTE_ORDER;
       alpha = 0;
-      red = GST_VIDEO_RED_MASK_15_INT;
-      green = GST_VIDEO_GREEN_MASK_15_INT;
-      blue = GST_VIDEO_BLUE_MASK_15_INT;
+      red = GST_VIDEO_COMP1_MASK_15_INT;
+      green = GST_VIDEO_COMP2_MASK_15_INT;
+      blue = GST_VIDEO_COMP3_MASK_15_INT;
       break;
     case D3DFMT_R5G6B5:
       bpp = depth = 16;
       endianness = G_BYTE_ORDER;
       alpha = 0;
-      red = GST_VIDEO_RED_MASK_16_INT;
-      green = GST_VIDEO_GREEN_MASK_16_INT;
-      blue = GST_VIDEO_BLUE_MASK_16_INT;
+      red = GST_VIDEO_COMP1_MASK_15_INT;
+      green = GST_VIDEO_COMP2_MASK_15_INT;
+      blue = GST_VIDEO_COMP3_MASK_15_INT;
       break;
     default:
       return NULL;
@@ -478,7 +479,6 @@ static void
 gst_dx9screencapsrc_get_times (GstBaseSrc * basesrc,
     GstBuffer * buffer, GstClockTime * start, GstClockTime * end)
 {
-  GstDX9ScreenCapSrc *src = GST_DX9SCREENCAPSRC (basesrc);
   GstClockTime timestamp;
 
   timestamp = GST_BUFFER_TIMESTAMP (buffer);
@@ -501,7 +501,8 @@ gst_dx9screencapsrc_create (GstPushSrc * push_src, GstBuffer ** buf)
   gint new_buf_size, i;
   gint width, height, stride;
   GstClock *clock;
-  GstClockTime time, buf_time;
+  GstClockTime time = GST_CLOCK_TIME_NONE;
+  GstClockTime buf_time;
   D3DLOCKED_RECT locked_rect;
   LPBYTE p_dst, p_src;
   HRESULT hres;
@@ -536,7 +537,7 @@ gst_dx9screencapsrc_create (GstPushSrc * push_src, GstBuffer ** buf)
   }
 
   GST_LOG_OBJECT (src,
-      "creating buffer of %lu bytes with %dx%d image for frame %d",
+      "creating buffer of %d bytes with %dx%d image for frame %d",
       new_buf_size, width, height, (gint) src->frames);
 
   res = gst_pad_alloc_buffer_and_set_caps (GST_BASE_SRC_PAD (src),
index a10a2fc..3e0cd6f 100644 (file)
@@ -315,7 +315,8 @@ gst_gdiscreencapsrc_set_caps (GstBaseSrc * bsrc, GstCaps * caps)
     src->src_rect.bottom = src->src_rect.top + src->capture_h;
   }
 
-  if (framerate = gst_structure_get_value (structure, "framerate")) {
+  framerate = gst_structure_get_value (structure, "framerate");
+  if (framerate) {
     src->rate_numerator = gst_value_get_fraction_numerator (framerate);
     src->rate_denominator = gst_value_get_fraction_denominator (framerate);
   }
@@ -349,8 +350,8 @@ gst_gdiscreencapsrc_set_caps (GstBaseSrc * bsrc, GstCaps * caps)
   ReleaseDC (capture, device);
 
   GST_DEBUG_OBJECT (src, "size %dx%d, %d/%d fps",
-      src->info.bmiHeader.biWidth,
-      -src->info.bmiHeader.biHeight,
+      (gint) src->info.bmiHeader.biWidth,
+      (gint) (-src->info.bmiHeader.biHeight),
       src->rate_numerator, src->rate_denominator);
 
   return TRUE;
@@ -378,7 +379,8 @@ gst_gdiscreencapsrc_get_caps (GstBaseSrc * bsrc)
   }
 
   GST_DEBUG ("width = %d, height=%d",
-      rect_dst.right - rect_dst.left, rect_dst.bottom - rect_dst.top);
+      (gint) (rect_dst.right - rect_dst.left),
+      (gint) (rect_dst.bottom - rect_dst.top));
 
   return gst_caps_new_simple ("video/x-raw-rgb",
       "bpp", G_TYPE_INT, 24,
@@ -416,7 +418,6 @@ static void
 gst_gdiscreencapsrc_get_times (GstBaseSrc * basesrc, GstBuffer * buffer,
     GstClockTime * start, GstClockTime * end)
 {
-  GstGDIScreenCapSrc *src = GST_GDISCREENCAPSRC (basesrc);
   GstClockTime timestamp;
 
   timestamp = GST_BUFFER_TIMESTAMP (buffer);
@@ -438,7 +439,7 @@ gst_gdiscreencapsrc_create (GstPushSrc * push_src, GstBuffer ** buf)
   GstFlowReturn res;
   gint new_buf_size;
   GstClock *clock;
-  GstClockTime time;
+  GstClockTime time = GST_CLOCK_TIME_NONE;
   GstClockTime base_time;
 
   if (G_UNLIKELY (!src->info.bmiHeader.biWidth ||
@@ -455,9 +456,9 @@ gst_gdiscreencapsrc_create (GstPushSrc * push_src, GstBuffer ** buf)
       (-src->info.bmiHeader.biHeight);
 
   GST_LOG_OBJECT (src,
-      "creating buffer of %lu bytes with %dx%d image for frame %d",
-      new_buf_size, src->info.bmiHeader.biWidth,
-      -src->info.bmiHeader.biHeight, (gint) src->frames);
+      "creating buffer of %d bytes with %dx%d image for frame %d",
+      new_buf_size, (gint) src->info.bmiHeader.biWidth,
+      (gint) (-src->info.bmiHeader.biHeight), (gint) src->frames);
 
   res =
       gst_pad_alloc_buffer_and_set_caps (GST_BASE_SRC_PAD (src),