最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python+QTimer計(jì)時(shí)器實(shí)現(xiàn)攝像頭視頻的播放和暫停

 更新時(shí)間:2024年11月18日 09:31:58   作者:天颶  
這篇文章主要為大家詳細(xì)介紹了Python如何通過(guò)QTimer計(jì)時(shí)器實(shí)現(xiàn)攝像頭視頻的播放和暫停功能,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

在上一篇文章《Python學(xué)習(xí)之簡(jiǎn)易視頻播放器》中,通過(guò)python-opencv-pyqt5,實(shí)現(xiàn)了有界面的視頻播放。但是,上文代碼只有播放,卻無(wú)法讓播放的視頻暫停。這是因?yàn)?,我們?cè)诓シ胖惺褂玫氖莣hile(self.cap.isOpened())循環(huán)。若要讓視頻在播放過(guò)程可以暫停,就要借助QTimer()函數(shù)來(lái)實(shí)現(xiàn)了。不多說(shuō)了,直接上代碼:

import cv2
import sys
from PyQt5 import  QtWidgets
from PyQt5.QtCore import Qt, QTimer
from PyQt5.QtGui import QPixmap,  QImage
from PyQt5.QtWidgets import QWidget,  QHBoxLayout, QPushButton, QVBoxLayout, QLabel
 
 
class UI_FROM(QWidget):
    def __init__(self):
        super(UI_FROM, self).__init__()
        self.resize(800, 600)
        self.timer_camera = QTimer()
        self.vl = QVBoxLayout(self)
        self.hl = QHBoxLayout(self)
        btn1 = QPushButton('播放')
        btn1.clicked.connect(self.ShowCamera)
        self.hl.addWidget(btn1)
        btn2 = QPushButton('暫停')
        btn2.clicked.connect(self.timer_camera.stop)
        self.hl.addWidget(btn2)
        self.vl.addLayout(self.hl)
        self.label = QLabel(self)
        self.label.setGeometry(20, 20, 640, 480)
        self.label.setStyleSheet("QLabel{background: black;}")
        self.label.setAlignment(Qt.AlignTop)
        self.label.setAlignment(Qt.AlignLeft)
        self.label.setFrameShape(QtWidgets.QFrame.Box)
        self.label.setScaledContents(True)
        self.vl.addWidget(self.label)
        self.cap = cv2.VideoCapture(0)
        print('攝像頭是否開(kāi)啟: {}'.format(self.cap.isOpened()))
 
    def Stop(self):
        self.timer_camera.stop()
 
    def ShowCamera(self):
        self.timer_camera.start(100)
        self.timer_camera.timeout.connect(self.ShowData)
 
    def ShowData(self):
        self.ret, color_frame = self.cap.read()
        if self.ret :
            color_frame = cv2.flip(color_frame, 1)
            cv2.waitKey(1)
            im = cv2.cvtColor(color_frame, cv2.COLOR_RGB2BGR)
            img = QImage(im.data, im.shape[1], im.shape[0], QImage.Format_RGB888)
            self.label.setPixmap(QPixmap.fromImage(img))
        else:
            self.cap.release()
            self.timer_camera.stop()
 
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    ui =UI_FROM()
    ui.show()
    sys.exit(app.exec_())

如上代碼,界面就放置了3個(gè)控件,分別是播放和暫停按鈕,以及用于加載視頻的QLabel,然后通過(guò)QVBoxLayout和QHBoxLayout進(jìn)行了簡(jiǎn)單布局。程序執(zhí)行后,會(huì)先去打開(kāi)本地?cái)z像頭,然后點(diǎn)擊播放按鈕后,才會(huì)讀取視頻流數(shù)據(jù)。點(diǎn)擊暫停按鈕,則會(huì)通過(guò)暫停計(jì)時(shí)器,從而實(shí)現(xiàn)視頻播放的暫停。具體效果圖如下:

好了,現(xiàn)在可以把上面的代碼和《Python學(xué)習(xí)之簡(jiǎn)易視頻播放器》的代碼結(jié)合一下,讓播放器的功能進(jìn)一步完善吧!

到此這篇關(guān)于Python+QTimer計(jì)時(shí)器實(shí)現(xiàn)攝像頭視頻的播放和暫停的文章就介紹到這了,更多相關(guān)Python視頻播放和暫停內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python結(jié)合DeepSeek API實(shí)現(xiàn)PDF轉(zhuǎn)Word的方案

    Python結(jié)合DeepSeek API實(shí)現(xiàn)PDF轉(zhuǎn)Word的方案

    隨著信息化時(shí)代的不斷推進(jìn),PDF和Word文件格式已經(jīng)成為了日常辦公中最常見(jiàn)的文檔格式,在許多工作場(chǎng)景中,我們需要將PDF文件轉(zhuǎn)換成Word格式,本文將介紹如何結(jié)合DeepSeek API與Python,快速實(shí)現(xiàn)一個(gè)PDF轉(zhuǎn)Word的工具,需要的朋友可以參考下
    2025-02-02
  • Python?OpenCV實(shí)現(xiàn)圖片預(yù)處理的方法詳解

    Python?OpenCV實(shí)現(xiàn)圖片預(yù)處理的方法詳解

    這篇文章主要為大家詳細(xì)介紹了Python?OpenCV實(shí)現(xiàn)圖片預(yù)處理的方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的可以了解一下
    2022-09-09
  • python刪除特定文件的方法

    python刪除特定文件的方法

    這篇文章主要介紹了python刪除特定文件的方法,涉及Python文件查找及刪除的相關(guān)技巧,需要的朋友可以參考下
    2015-07-07
  • python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生管理系統(tǒng)

    python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-02-02
  • 利用Python暴力破解zip文件口令的方法詳解

    利用Python暴力破解zip文件口令的方法詳解

    這篇文章主要給大家介紹了關(guān)于利用Python暴力破解zip文件口令的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-12-12
  • flask post獲取前端請(qǐng)求參數(shù)的三種方式總結(jié)

    flask post獲取前端請(qǐng)求參數(shù)的三種方式總結(jié)

    這篇文章主要介紹了flask post獲取前端請(qǐng)求參數(shù)的三種方式總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 簡(jiǎn)單學(xué)習(xí)Python time模塊

    簡(jiǎn)單學(xué)習(xí)Python time模塊

    這篇文章主要和大家一起簡(jiǎn)單學(xué)習(xí)一下Python time模塊,Python time模塊提供了一些用于管理時(shí)間和日期的C庫(kù)函數(shù),對(duì)time模塊感興趣的小伙伴們可以參考一下
    2016-04-04
  • Python基于paramunittest模塊實(shí)現(xiàn)excl參數(shù)化

    Python基于paramunittest模塊實(shí)現(xiàn)excl參數(shù)化

    這篇文章主要介紹了Python基于paramunittest模塊實(shí)現(xiàn)excl參數(shù)化,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Python里隱藏的“禪”

    Python里隱藏的“禪”

    這篇文章主要介紹了IT柏拉圖翻譯的python的lib目錄下this.py文件中的一首詩(shī),蘊(yùn)含了Python程序設(shè)計(jì)中很多哲理性的規(guī)律,需要的朋友可以參考下
    2014-06-06
  • python使用Windows的wmic命令監(jiān)控文件運(yùn)行狀況,如有異常發(fā)送郵件報(bào)警

    python使用Windows的wmic命令監(jiān)控文件運(yùn)行狀況,如有異常發(fā)送郵件報(bào)警

    這篇文章主要介紹了python使用Windows的wmic命令監(jiān)控文件運(yùn)行狀況,如有異常發(fā)送郵件報(bào)警的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01

最新評(píng)論

宝鸡市| 临邑县| 正定县| 邯郸县| 崇义县| 齐齐哈尔市| 昭平县| 行唐县| 河南省| 安溪县| 南阳市| 贵溪市| 广东省| 东乌珠穆沁旗| 贵定县| 惠东县| 红安县| 明溪县| 常山县| 江城| 德钦县| 子洲县| 泸溪县| 开封县| 桦甸市| 台南县| 改则县| 长宁县| 乌拉特前旗| 修水县| 辽中县| 徐闻县| 霍州市| 孝昌县| 高雄市| 西昌市| 新河县| 玉门市| 南丹县| 镇安县| 瓦房店市|