summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2021-04-15 14:51:40 +0200
committerLars Knoll <lars.knoll@qt.io>2021-04-19 11:07:14 +0000
commitb1525638dc5114d3ad110740045afea0b16adec6 (patch)
treea79ad63cbecc3318124a2e829c3842c1db6ad8d5 /examples
parent00fdf006f9740a3886ce24d885ed4907952a8c9e (diff)
Fix the declarative-camera example
Adjust it to the API changes that happened on the QML side. Change-Id: I17e6be334ce5a6afb4558f946d8bd7bbcd0a6d32 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'examples')
-rw-r--r--examples/multimedia/declarative-camera/CameraListButton.qml2
-rw-r--r--examples/multimedia/declarative-camera/CameraListPopup.qml2
-rw-r--r--examples/multimedia/declarative-camera/PhotoCaptureControls.qml12
-rw-r--r--examples/multimedia/declarative-camera/VideoCaptureControls.qml22
-rw-r--r--examples/multimedia/declarative-camera/VideoPreview.qml6
-rw-r--r--examples/multimedia/declarative-camera/declarative-camera.qml34
6 files changed, 41 insertions, 37 deletions
diff --git a/examples/multimedia/declarative-camera/CameraListButton.qml b/examples/multimedia/declarative-camera/CameraListButton.qml
index 2232140c5..8b0c280ed 100644
--- a/examples/multimedia/declarative-camera/CameraListButton.qml
+++ b/examples/multimedia/declarative-camera/CameraListButton.qml
@@ -67,7 +67,7 @@ Item {
CameraButton {
anchors.fill: parent
- text: popup.currentItem != null ? popup.currentItem.displayName : ""
+ text: popup.currentItem !== null ? popup.currentItem.description : ""
onClicked: popup.toggle()
}
diff --git a/examples/multimedia/declarative-camera/CameraListPopup.qml b/examples/multimedia/declarative-camera/CameraListPopup.qml
index 37b1b3f9d..31f320f20 100644
--- a/examples/multimedia/declarative-camera/CameraListPopup.qml
+++ b/examples/multimedia/declarative-camera/CameraListPopup.qml
@@ -79,7 +79,7 @@ Popup {
height: cameraListPopup.itemHeight
Text {
- text: modelData.displayName
+ text: modelData.description
anchors.fill: parent
anchors.margins: 5
diff --git a/examples/multimedia/declarative-camera/PhotoCaptureControls.qml b/examples/multimedia/declarative-camera/PhotoCaptureControls.qml
index 86c820699..41c91a374 100644
--- a/examples/multimedia/declarative-camera/PhotoCaptureControls.qml
+++ b/examples/multimedia/declarative-camera/PhotoCaptureControls.qml
@@ -52,7 +52,7 @@ import QtQuick
import QtMultimedia
FocusScope {
- property Camera camera
+ property CaptureSession captureSession
property bool previewAvailable : false
property int buttonsPanelWidth: buttonPaneShadow.width
@@ -81,8 +81,8 @@ FocusScope {
CameraButton {
text: "Capture"
- visible: camera.imageCapture.ready
- onClicked: camera.imageCapture.capture()
+ visible: captureSession.imageCapture.readyForCapture
+ onClicked: captureSession.imageCapture.capture()
}
CameraPropertyButton {
@@ -115,7 +115,7 @@ FocusScope {
text: "Fluorescent"
}
}
- onValueChanged: captureControls.camera.imageProcessing.whiteBalanceMode = wbModesButton.value
+ onValueChanged: captureControls.captureSession.camera.imageProcessing.whiteBalanceMode = wbModesButton.value
}
CameraButton {
@@ -136,8 +136,8 @@ FocusScope {
spacing: 8
CameraListButton {
- model: QtMultimedia.availableCameras
- onValueChanged: captureControls.camera.deviceId = value
+ model: MediaDeviceManager.videoInputs
+ onValueChanged: captureSession.camera.cameraInfo = value
}
CameraButton {
diff --git a/examples/multimedia/declarative-camera/VideoCaptureControls.qml b/examples/multimedia/declarative-camera/VideoCaptureControls.qml
index afcb4bc2c..1f13dec00 100644
--- a/examples/multimedia/declarative-camera/VideoCaptureControls.qml
+++ b/examples/multimedia/declarative-camera/VideoCaptureControls.qml
@@ -52,7 +52,7 @@ import QtQuick
import QtMultimedia
FocusScope {
- property Camera camera
+ property CaptureSession captureSession
property bool previewAvailable : false
property int buttonsPanelWidth: buttonPaneShadow.width
@@ -81,22 +81,22 @@ FocusScope {
CameraButton {
text: "Record"
- visible: camera.videoRecorder.recorderStatus == CameraRecorder.LoadedStatus
- onClicked: camera.videoRecorder.record()
+ visible: captureSession.encoder.status !== MediaEncoder.RecordingStatus
+ onClicked: captureSession.encoder.record()
}
CameraButton {
id: stopButton
text: "Stop"
- visible: camera.videoRecorder.recorderStatus == CameraRecorder.RecordingStatus
- onClicked: camera.videoRecorder.stop()
+ visible: captureSession.encoder.status === MediaEncoder.RecordingStatus
+ onClicked: captureSession.encoder.stop()
}
CameraButton {
text: "View"
onClicked: captureControls.previewSelected()
//don't show View button during recording
- visible: camera.videoRecorder.actualLocation && !stopButton.visible
+ visible: captureSession.encoder.actualLocation && !stopButton.visible
}
}
@@ -111,8 +111,8 @@ FocusScope {
spacing: 8
CameraListButton {
- model: QtMultimedia.availableCameras
- onValueChanged: captureControls.camera.deviceId = value
+ model: MediaDeviceManager.videoInputs
+ onValueChanged: captureSession.camera.cameraInfo = value
}
CameraButton {
@@ -135,8 +135,8 @@ FocusScope {
width : 100
height: parent.height
- currentZoom: camera.digitalZoom
- maximumZoom: Math.min(4.0, camera.maximumDigitalZoom)
- onZoomTo: camera.setDigitalZoom(value)
+ currentZoom: captureSession.camera.focus.zoomFactor
+ maximumZoom: captureSession.camera.focus.maximumZoomFactor
+ onZoomTo: captureSession.camera.focus.zoomFactor = value
}
}
diff --git a/examples/multimedia/declarative-camera/VideoPreview.qml b/examples/multimedia/declarative-camera/VideoPreview.qml
index 3a33634e1..5a2f90829 100644
--- a/examples/multimedia/declarative-camera/VideoPreview.qml
+++ b/examples/multimedia/declarative-camera/VideoPreview.qml
@@ -61,14 +61,16 @@ Item {
autoPlay: true
//switch back to viewfinder after playback finished
- onStatusChanged: {
+ onMediaStatusChanged: {
if (status == MediaPlayer.EndOfMedia)
videoPreview.closed();
}
+
+ videoOutput: output
}
VideoOutput {
- source: player
+ id: output
anchors.fill : parent
}
diff --git a/examples/multimedia/declarative-camera/declarative-camera.qml b/examples/multimedia/declarative-camera/declarative-camera.qml
index 48a683844..5f1eb30d3 100644
--- a/examples/multimedia/declarative-camera/declarative-camera.qml
+++ b/examples/multimedia/declarative-camera/declarative-camera.qml
@@ -90,21 +90,21 @@ Rectangle {
}
]
- Camera {
- id: camera
-
- imageCapture {
- onImageCaptured: {
- photoPreview.source = preview
- stillControls.previewAvailable = true
- cameraUI.state = "PhotoPreview"
- }
+ CaptureSession {
+ id: captureSession
+ camera: Camera {
+ id: camera
+ }
+ imageCapture: ImageCapture {
+ id: imageCapture
}
- videoRecorder {
- resolution: "640x480"
- frameRate: 30
+ encoder: MediaEncoder {
+ id: encoder
+// resolution: "640x480"
+// frameRate: 30
}
+ videoOutput: viewfinder
}
PhotoPreview {
@@ -113,6 +113,7 @@ Rectangle {
onClosed: cameraUI.state = "PhotoCapture"
visible: cameraUI.state == "PhotoPreview"
focus: visible
+ source: imageCapture.preview
}
VideoPreview {
@@ -123,7 +124,7 @@ Rectangle {
focus: visible
//don't load recorded video if preview is invisible
- source: visible ? camera.videoRecorder.actualLocation : ""
+ source: visible ? encoder.actualLocation : ""
}
VideoOutput {
@@ -136,22 +137,23 @@ Rectangle {
height: parent.height
source: camera
- autoOrientation: true
+// autoOrientation: true
}
PhotoCaptureControls {
id: stillControls
anchors.fill: parent
- camera: camera
+ captureSession: captureSession
visible: cameraUI.state == "PhotoCapture"
onPreviewSelected: cameraUI.state = "PhotoPreview"
onVideoModeSelected: cameraUI.state = "VideoCapture"
+ previewAvailable: imageCapture.preview.length !== 0
}
VideoCaptureControls {
id: videoControls
anchors.fill: parent
- camera: camera
+ captureSession: captureSession
visible: cameraUI.state == "VideoCapture"
onPreviewSelected: cameraUI.state = "VideoPreview"
onPhotoModeSelected: cameraUI.state = "PhotoCapture"