diff options
12 files changed, 106 insertions, 17 deletions
diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBillboard.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBillboard.qml index 021b8d778..c4e1b204e 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBillboard.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBillboard.qml @@ -39,10 +39,16 @@ Effect { name: "Grid Spacing" value: 0.5 } + onDataChanged: updateGrid() + } + + function updateGrid() + { + grid = parameters.get(0).value * 10; } // Transform slider values, and bind result to shader uniforms - property real grid: parameters.get(0).value * 10 + property real grid: 5.0 property real step_x: 0.0015625 property real step_y: targetHeight ? (step_x * targetWidth / targetHeight) : 0.0 diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBlackAndWhite.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBlackAndWhite.qml index 8cfe5a78a..f1e53e005 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBlackAndWhite.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectBlackAndWhite.qml @@ -39,10 +39,15 @@ Effect { name: "Threshold" value: 0.5 } + onDataChanged: updateThreshold() } + function updateThreshold() + { + threshold = parameters.get(0).value; + } // Transform slider values, and bind result to shader uniforms - property real threshold: parameters.get(0).value + property real threshold: 0.5 fragmentShaderFilename: "blackandwhite.fsh" } 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 diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectIsolate.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectIsolate.qml index 24a281db6..5af8b6fd6 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectIsolate.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectIsolate.qml @@ -43,11 +43,18 @@ Effect { name: "Width" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + targetHue = parameters.get(0).value * 360 + windowWidth = parameters.get(1).value * 60 } // Transform slider values, and bind result to shader uniforms - property real targetHue: parameters.get(0).value * 360 - property real windowWidth: parameters.get(1).value * 60 + property real targetHue: 0.5 * 360 + property real windowWidth: 0.5 * 60 fragmentShaderFilename: "isolate.fsh" } diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectMagnify.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectMagnify.qml index 5e8c9e0ef..76535ea7e 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectMagnify.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectMagnify.qml @@ -46,6 +46,13 @@ Effect { name: "Diffraction" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + radius = parameters.get(0).value * 100; + diffractionIndex = parameters.get(1).value; } property real posX: -1 @@ -59,8 +66,8 @@ Effect { } // Transform slider values, and bind result to shader uniforms - property real radius: parameters.get(0).value * 100 - property real diffractionIndex: parameters.get(1).value + property real radius: 0.5 * 100 + property real diffractionIndex: 0.5 onTargetWidthChanged: { if (posX == -1) diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPageCurl.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPageCurl.qml index 4ccad8b58..4980b1ddf 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPageCurl.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPageCurl.qml @@ -40,10 +40,16 @@ Effect { name: "Extent" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + curlExtent = 1.0 - parameters.get(0).value; } // Transform slider values, and bind result to shader uniforms - property real curlExtent: 1.0 - parameters.get(0).value + property real curlExtent: 0.5 fragmentShaderFilename: "pagecurl.fsh" } diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPixelate.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPixelate.qml index cea15c285..40453f93f 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPixelate.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPixelate.qml @@ -39,10 +39,16 @@ Effect { name: "Granularity" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + granularity = parameters.get(0).value * 20.0; } // Transform slider values, and bind result to shader uniforms - property real granularity: parameters.get(0).value * 20 + property real granularity: 0.5 * 20 fragmentShaderFilename: "pixelate.fsh" } diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPosterize.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPosterize.qml index bba48dcd8..c8b1893d1 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPosterize.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectPosterize.qml @@ -39,10 +39,16 @@ Effect { name: "Gamma" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + gamma = parameters.get(0).value; } // Transform slider values, and bind result to shader uniforms - property real gamma: parameters.get(0).value + property real gamma: 0.5 property real numColors: 8.0 diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectRipple.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectRipple.qml index e47eadfb4..67eae30ea 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectRipple.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectRipple.qml @@ -44,11 +44,18 @@ Effect { name: "Frequency" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + amplitude = parameters.get(0).value * 0.03; + n = parameters.get(1).value * 7; } // Transform slider values, and bind result to shader uniforms - property real amplitude: parameters.get(0).value * 0.03 - property real n: parameters.get(1).value * 7 + property real amplitude: 0.5 * 0.03 + property real n: 0.5 * 7 property real pixDens: Screen.pixelDensity property real time: 0 diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSharpen.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSharpen.qml index 9b80dd4b2..094270c01 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSharpen.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSharpen.qml @@ -39,10 +39,16 @@ Effect { name: "Sharpness" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + amount = parameters.get(0).value * 18; } // Transform slider values, and bind result to shader uniforms - property real amount: parameters.get(0).value * 18 + property real amount: 0.5 * 18 fragmentShaderFilename: "sharpen.fsh" } diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectShockwave.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectShockwave.qml index 0e0520c29..a20f2445e 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectShockwave.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectShockwave.qml @@ -40,11 +40,18 @@ Effect { name: "Amplitude" value: 0.5 } + onDataChanged: updateParameters() + } + + function updateParameters() + { + granularity = parameters.get(0).value * 20; + weight = parameters.get(0).value; } // Transform slider values, and bind result to shader uniforms - property real granularity: parameters.get(0).value * 20 - property real weight: parameters.get(0).value + property real granularity: 0.5 * 20 + property real weight: 0.5 property real centerX property real centerY diff --git a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSobelEdgeDetection1.qml b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSobelEdgeDetection1.qml index 8da5c26be..936571c89 100644 --- a/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSobelEdgeDetection1.qml +++ b/examples/multimedia/video/qmlvideofx/qml/qmlvideofx/EffectSobelEdgeDetection1.qml @@ -39,10 +39,16 @@ Effect { name: "Threshold" value: 0.5 } + onDataChanged: updateMixLevel() + } + + function updateMixLevel() + { + mixLevel = parameters.get(0).value; } // Transform slider values, and bind result to shader uniforms - property real mixLevel: parameters.get(0).value + property real mixLevel: 0.5 property real targetSize: 250 - (200 * mixLevel) // TODO: fix ... property real resS: targetSize property real resT: targetSize |