为了python和qml的爱
soloman的Python项目详细描述
索罗曼
为了python和qml的爱
安装
pip install soloman
Python用法
播放音频
^{pr2}$Qml使用
在示例.py在
importsoloman...engine=QQmlApplicationEngine()...engine.load('example.qml')
播放音频
示例.qml
importQtQuick2.14...importsoloman2.4SAudio{id: aud}Button{text:"Play"onClicked:aud.play('path/to/music.mp3')}
播放视频
示例.qml
播放视频文件
importQtQuick2.14...importsoloman2.4SVideo{id: vid}Button{text:"Play video"onClicked:vid.play('path/to/video.mp4')}
播放静像
选项一
...onClicked:vid.play('path/to/video_stills_01.jpg')#possiblythefirstimage...
选项二
...onClicked:vid.play('path/to/')#makesurefoldercontainsonlystills...
显示cv2帧
在示例.py在
importsysimportcv2importthreadingfromtimeimportsleepfromPyQt5.QtGuiimportQGuiApplicationfromPyQt5.QtQmlQQmlApplicationEngineimportsolomanapp=QGuiApplication(sys.argv)# Create a QML engine.engine=QQmlApplicationEngine()engine.quit.connect(app.quit)engine.load(QUrl('example.qml'))# Get SVideovid=soloman.Video(engine)vid.get_SVideo('screen_01')# objectName goes here# Capturecapture=cv2.VideoCapture(0)# capture cameradefstart_capt():# start threado_thread=threading.Thread(target=_start_capt)o_thread.daemon=Trueo_thread.start()def_start_capt():whileTrue:ret,frame=capture.read()ifnotret:breakvid.show_frame(frame)sleep(1/24)# Call to start capturingstart_capt()# Run the appret_value=app.exec_()capture.release()sys.exit(0)
在示例.qml在
importQtQuick2.14importQtQuick.Controls2.14importsolomon2.4ApplicationWindow{visible:truewidth:800height:500SVideo{objectName:"screen_01"// declare objectName to be used in python}}
维基
wiki可以位于here
- 项目
标签: