libbluray | branch: master | Ian Curtis <[email protected]> | Mon Apr  7 
11:21:32 2014 +0300| [36f17664cd0103680f9c011114d9f0d9322e98c3] | committer: 
hpi1

BDGraphics: optimize scaling of transparent areas

> http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=36f17664cd0103680f9c011114d9f0d9322e98c3
---

 src/libbluray/bdj/java/java/awt/BDGraphicsBase.java |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/libbluray/bdj/java/java/awt/BDGraphicsBase.java 
b/src/libbluray/bdj/java/java/awt/BDGraphicsBase.java
index a4762c5..491ad7d 100644
--- a/src/libbluray/bdj/java/java/awt/BDGraphicsBase.java
+++ b/src/libbluray/bdj/java/java/awt/BDGraphicsBase.java
@@ -1141,6 +1141,11 @@ abstract class BDGraphicsBase extends Graphics2D 
implements ConstrainableGraphic
                 int cA = (c >> 24) & 0xff;
                 int dA = (d >> 24) & 0xff;
 
+                if (aA + bA + cA + dA < 1) {
+                    outImage[position++] = 0;
+                    continue;
+                }
+
                 // blue element
                 // Yb = Ab(1-w)(1-h) + Bb(w)(1-h) + Cb(h)(1-w) + Db(wh)
                 blue = (a & 0xff) * (1-x_diff) * (1-y_diff) * aA +

_______________________________________________
libbluray-devel mailing list
[email protected]
https://mailman.videolan.org/listinfo/libbluray-devel

Reply via email to