summaryrefslogtreecommitdiffstats
path: root/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectGaussianBlur.qml
diff options
context:
space:
mode:
Diffstat (limited to 'examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectGaussianBlur.qml')
-rw-r--r--examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectGaussianBlur.qml24
1 files changed, 22 insertions, 2 deletions
diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectGaussianBlur.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectGaussianBlur.qml
index 3ccf1c678..7941eac63 100644
--- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectGaussianBlur.qml
+++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectGaussianBlur.qml
@@ -44,17 +44,37 @@ Item {
name: "Radius"
value: 0.5
}
+ onDataChanged: updateBlurSize()
+ }
+
+ function updateBlurSize()
+ {
+ if ((targetHeight > 0) && (targetWidth > 0))
+ {
+ verticalBlurSize = 4.0 * parameters.get(0).value / targetHeight;
+ horizontalBlurSize = 4.0 * parameters.get(0).value / targetWidth;
+ }
}
property alias targetWidth: verticalShader.targetWidth
property alias targetHeight: verticalShader.targetHeight
property alias source: verticalShader.source
+ property alias horizontalBlurSize: horizontalShader.blurSize
+ property alias verticalBlurSize: verticalShader.blurSize
+
Effect {
id: verticalShader
anchors.fill: parent
dividerValue: parent.dividerValue
- property real blurSize: 4.0 * parent.parameters.get(0).value / targetHeight
+ property real blurSize: 0.0
+
+ onTargetHeightChanged: {
+ updateBlurSize()
+ }
+ onTargetWidthChanged: {
+ updateBlurSize()
+ }
fragmentShaderFilename: "gaussianblur_v.fsh"
}
@@ -62,7 +82,7 @@ Item {
id: horizontalShader
anchors.fill: parent
dividerValue: parent.dividerValue
- property real blurSize: 4.0 * parent.parameters.get(0).value / parent.targetWidth
+ property real blurSize: 0.0
fragmentShaderFilename: "gaussianblur_h.fsh"
source: horizontalShaderSource