Author: post
Date: 2012-07-08 20:25:59 +0200 (Sun, 08 Jul 2012)
New Revision: 430

Modified:
   RawSpeed/RawDecoder.cpp
   RawSpeed/RawImage.cpp
   RawSpeed/RawImage.h
   RawSpeed/RawImageDataU16.cpp
   RawSpeed/RawSpeed.vcproj
Log:
Skip upscale if not needed.
Transfer ISO value to raw image.

Modified: RawSpeed/RawDecoder.cpp
===================================================================
--- RawSpeed/RawDecoder.cpp     2012-07-08 13:09:24 UTC (rev 429)
+++ RawSpeed/RawDecoder.cpp     2012-07-08 18:25:59 UTC (rev 430)
@@ -214,6 +214,7 @@
 }
 
 void RawDecoder::setMetaData(CameraMetaData *meta, string make, string model, 
string mode, int iso_speed) {
+  mRaw->isoSpeed = iso_speed;
   TrimSpaces(make);
   TrimSpaces(model);
   Camera *cam = meta->getCamera(make, model, mode);

Modified: RawSpeed/RawImage.cpp
===================================================================
--- RawSpeed/RawImage.cpp       2012-07-08 13:09:24 UTC (rev 429)
+++ RawSpeed/RawImage.cpp       2012-07-08 18:25:59 UTC (rev 430)
@@ -36,6 +36,7 @@
   blackLevelSeparate[0] = blackLevelSeparate[1] = blackLevelSeparate[2] = 
blackLevelSeparate[3] = -1;
   pthread_mutex_init(&mymutex, NULL);
   subsampling.x = subsampling.y = 1;
+  isoSpeed = 0;
 }
 
 RawImageData::RawImageData(iPoint2D _dim, uint32 _bpc, uint32 _cpp) :
@@ -45,6 +46,7 @@
     uncropped_dim(0, 0) {
   blackLevelSeparate[0] = blackLevelSeparate[1] = blackLevelSeparate[2] = 
blackLevelSeparate[3] = -1;
   subsampling.x = subsampling.y = 1;
+  isoSpeed = 0;
   createData();
   pthread_mutex_init(&mymutex, NULL);
 }

Modified: RawSpeed/RawImage.h
===================================================================
--- RawSpeed/RawImage.h 2012-07-08 13:09:24 UTC (rev 429)
+++ RawSpeed/RawImage.h 2012-07-08 18:25:59 UTC (rev 430)
@@ -61,6 +61,7 @@
   vector<BlackArea> blackAreas;
   iPoint2D subsampling;
   string mode;
+  int isoSpeed;
 protected:
   RawImageType dataType;
   RawImageData(void);

Modified: RawSpeed/RawImageDataU16.cpp
===================================================================
--- RawSpeed/RawImageDataU16.cpp        2012-07-08 13:09:24 UTC (rev 429)
+++ RawSpeed/RawImageDataU16.cpp        2012-07-08 18:25:59 UTC (rev 430)
@@ -116,7 +116,7 @@
 }
 
 void RawImageDataU16::scaleBlackWhite() {
-  const int skipBorder = 150;
+  const int skipBorder = 250;
   int gw = (dim.x - skipBorder) * cpp;
   if ((blackAreas.empty() && blackLevelSeparate[0] < 0 && blackLevel < 0) || 
whitePoint == 65536) {  // Estimate
     int b = 65536;
@@ -133,9 +133,13 @@
       blackLevel = b;
     if (whitePoint == 65536)
       whitePoint = m;
-    printf("Estimated black:%d, Estimated white: %d\n", blackLevel, 
whitePoint);
+    printf("ISO:%d, Estimated black:%d, Estimated white: %d\n", isoSpeed, 
blackLevel, whitePoint);
   }
 
+  /* Skip, if not needed */
+  if (blackAreas.size() == 0 && blackLevel == 0 && whitePoint == 65535 && 
blackLevelSeparate[0] < 0)
+    return;
+
   /* If filter has not set separate blacklevel, compute or fetch it */
   if (blackLevelSeparate[0] < 0)
     calculateBlackAreas();

Modified: RawSpeed/RawSpeed.vcproj
===================================================================
--- RawSpeed/RawSpeed.vcproj    2012-07-08 13:09:24 UTC (rev 429)
+++ RawSpeed/RawSpeed.vcproj    2012-07-08 18:25:59 UTC (rev 430)
@@ -125,6 +125,7 @@
                                FavorSizeOrSpeed="1"
                                AdditionalIncludeDirectories="..\include"
                                PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+                               MinimalRebuild="true"
                                RuntimeLibrary="0"
                                BufferSecurityCheck="true"
                                EnableEnhancedInstructionSet="1"


_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit

Reply via email to