我正在使用相机拍电影
我想使用滑块来缩放视频,例如谷歌地图的缩放
我找到了另一个Question on SO,但建议的解决方案适用于点击,而我想为滑块开发解决方案。
我编写的代码无法正常工作。
我没有发现错误,但视频大小会非常大,然后我看不到视频
我尝试将digitalZoom设置为相机,但我有这个错误:
相机不支持缩放。。我知道我的相机不支持" DigitalZoom"和" OpticalZoom"。我想找到一种方法来放大从相机拍摄的视频
的 My camera is dino ccd.
对不起朋友,我无法添加评论,我有这个错误:"你必须有50个评论的声誉"。
VideoOutput {
id: viewfinder
source: camera
anchors.fill: parent
focus : true
transform: [
Scale {
id: zoomScale
},
Translate {
id: zoomTranslate
}
]
//Keys.onLeftPressed: viewfinder.seek(viewfinder.position - 5000)
//Keys.onRightPressed: viewfinder.seek(viewfinder.position + 5000)
MouseArea {
anchors.fill: parent
acceptedButtons: Qt.AllButtons
onClicked: {
var zoomIn = mouse.button === Qt.LeftButton;
zoomScale.origin.x = mouse.x;
zoomScale.origin.y = mouse.y;
}
}
Slider {
id:zoomVideo
orientation: Qt.Vertical
minimumValue: 0
maximumValue: 100
stepSize: 10
onValueChanged: {
zoomScale.xScale = zoomVideo.value
zoomScale.yScale = zoomVideo.value
}
}
}
答案 0 :(得分:0)
您是否尝试使用滑块实现放大/缩小功能,就像普通的移动相机应用一样,如果是,请考虑下面未经测试的代码段,因为目前我没有安装Qt IDE的机器,但它应该有助于你理解这个概念。
Camera {
id: camera
digitalZoom:zoomSlider.value
//if opticalZoom is supported uncomment below line
//opticalZoom:zoomSlider.value
// rest of your settings
}
VideoOutput {
id: viewfinder
source: camera
anchors.fill: parent
focus : true
}
Slider {
id:zoomSlider
orientation: Qt.Vertical
minimumValue: 0
maximumValue: camera.maximumDigitalZoom //or camera.maximumOpticalZoom
stepSize:camera.maximumDigitalZoom/10 // going through 10 steps
value:1.0 // initial zoom level
anchors{
left:parent.left
leftMargin:5
verticalCenter:parent.verticalCenter
}
}