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

基于Python制作簡易視頻播放器

 更新時間:2024年11月18日 09:27:08   作者:天颶  
本文將用python-pyqt5-opencv做出來的簡易視頻播放器,主要實現(xiàn)本地視頻文件播放、本地攝像頭播放和遠程攝像頭播放三個功能,需要的可以參考下

先上效果圖:

 這個就是用python-pyqt5-opencv做出來的簡易視頻播放器,主要實現(xiàn)本地視頻文件播放、本地攝像頭播放和遠程攝像頭播放三個功能。

核心代碼:

def ShowCamera(self, url):
    try:
        if url == None:
            self.cap = cv2.VideoCapture(0)
        else:
            self.cap = cv2.VideoCapture(url)
 
        print('攝像頭是否開啟: {}'.format(self.cap.isOpened()))
        if self.cap.isOpened:
            self.cap.set(cv2.CAP_PROP_FRAME_WIDTH, 640)
            self.cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 480)
            self.cap.set(cv2.CAP_PROP_FPS, 25)
 
            print(self.cap.get(3))
            print(self.cap.get(4))
            print(self.cap.get(5))
            print('開始讀取攝像頭數(shù)據(jù)......')
 
            while(True):
                ret, color_frame = self.cap.read()
                if ret == False:
                    return
                if url == None:
                    color_frame = cv2.flip(color_frame, 1)
                cv2.waitKey(1)
                im = cv2.cvtColor(color_frame, cv2.COLOR_RGB2BGR)
                a = QImage(im.data, im.shape[1], im.shape[0], QImage.Format_RGB888)
                self.setPic(a)
 
            self.cap.release()
        else:
            print('camera open failed')
    except Exception as e:
        print(str(e))

三類播放使用的都是同一個showcamera()函數(shù),唯一的區(qū)別就是函數(shù)中的url參數(shù)不同。

文件播放:url=文件名

本地相機:url=0

網(wǎng)絡(luò)串流:url=‘rtsp://……’

除了這個核心代碼,打開文件使用的是QFileDialog,打開網(wǎng)絡(luò)串流使用的是自定義的QinputDialog,兩個代碼如下:

def OpenFile(self):
    fileName, filetype = QFileDialog.getOpenFileName(self, '選擇文件')
    print(fileName, filetype)
    self.ShowCamera(fileName)
def Remote(self):
    input_dialog = QtWidgets.QInputDialog(self)
    input_dialog.setInputMode(QInputDialog.TextInput)
    input_dialog.setWindowTitle('打開網(wǎng)絡(luò)串流')
    input_dialog.setLabelText('請輸入網(wǎng)絡(luò)串流地址rtsp://')
    input_dialog.setFixedSize(500, 100)
    input_dialog.show()
    if input_dialog.exec_() == input_dialog.Accepted:
        text = input_dialog.textValue()
        if text != '':
            print(text)
            self.ShowCamera(text)
        else:
            print('地址錯誤或空')

最后,是用Qlabel加載圖片的代碼:

def setPic(self, image):
    self.label.setPixmap(QPixmap.fromImage(image))

剩下的就是UI界面的定義了

到此這篇關(guān)于基于Python制作簡易視頻播放器的文章就介紹到這了,更多相關(guān)Python視頻播放器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python刪除文本中行數(shù)標(biāo)簽的方法

    python刪除文本中行數(shù)標(biāo)簽的方法

    這篇文章主要為大家詳細介紹了python刪除文本中行數(shù)標(biāo)簽的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • python3實現(xiàn)Dijkstra算法最短路徑的實現(xiàn)

    python3實現(xiàn)Dijkstra算法最短路徑的實現(xiàn)

    這篇文章主要介紹了python3實現(xiàn)Dijkstra算法最短路徑的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • 一篇文章從零開始創(chuàng)建conda環(huán)境、常用命令的使用及pycharm配置項目環(huán)境

    一篇文章從零開始創(chuàng)建conda環(huán)境、常用命令的使用及pycharm配置項目環(huán)境

    在Conda中創(chuàng)建新環(huán)境是一個非常有用的做法,尤其是當(dāng)你需要為不同的項目安裝不同版本的軟件包時,這篇文章主要給大家介紹了關(guān)于從零開始創(chuàng)建conda環(huán)境、常用命令的使用及pycharm配置項目環(huán)境的相關(guān)資料,需要的朋友可以參考下
    2024-07-07
  • Python3基于plotly模塊保存圖片表格

    Python3基于plotly模塊保存圖片表格

    這篇文章主要介紹了Python3基于plotly模塊保存圖片表格,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • Python調(diào)用edge-tts實現(xiàn)在線文字轉(zhuǎn)語音效果

    Python調(diào)用edge-tts實現(xiàn)在線文字轉(zhuǎn)語音效果

    edge-tts是一個 Python 模塊,允許通過Python代碼或命令的方式使用 Microsoft Edge 的在線文本轉(zhuǎn)語音服務(wù),這篇文章主要介紹了Python調(diào)用edge-tts實現(xiàn)在線文字轉(zhuǎn)語音效果,需要的朋友可以參考下
    2024-03-03
  • Pthon批量處理將pdb文件生成dssp文件

    Pthon批量處理將pdb文件生成dssp文件

    這篇文章主要介紹了Pthon批量處理將pdb文件生成dssp文件,通過本例主要學(xué)習(xí)遍歷目錄下文件的方法,需要的朋友可以參考下
    2015-06-06
  • 淺析pandas隨機排列與隨機抽樣

    淺析pandas隨機排列與隨機抽樣

    這篇文章主要介紹了pandas隨機排列與隨機抽樣的相關(guān)資料,幫助大家更好的利用pandas進行數(shù)據(jù)分析,感興趣的朋友可以了解下
    2021-01-01
  • 使用Python實現(xiàn)跳一跳自動跳躍功能

    使用Python實現(xiàn)跳一跳自動跳躍功能

    這篇文章主要介紹了使用Python實現(xiàn)跳一跳自動跳躍功能,本文圖文并茂通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • 謹慎使用Python進行矩陣計算解析

    謹慎使用Python進行矩陣計算解析

    這篇文章主要介紹了使用Python進行矩陣計算原理解析,真正的單位矩陣,只有對角線元素為1,其他元素為0,用 np.identity(N) 生成單位矩陣,需要的朋友可以參考下
    2023-08-08
  • Python使用稀疏矩陣節(jié)省內(nèi)存實例

    Python使用稀疏矩陣節(jié)省內(nèi)存實例

    這篇文章主要介紹了Python使用稀疏矩陣節(jié)省內(nèi)存實例,矩陣中非零元素的個數(shù)遠遠小于矩陣元素的總數(shù),并且非零元素的分布沒有規(guī)律,則稱該矩陣為稀疏矩陣,需要的朋友可以參考下
    2014-06-06

最新評論

宁国市| 南城县| 南和县| 彰化县| 从化市| 博湖县| 宁河县| 西华县| 宁海县| 平顺县| 宣化县| 屏山县| 栾川县| 泰顺县| 务川| 武隆县| 澎湖县| 田林县| 龙游县| 大化| 香港 | 霍邱县| 和顺县| 彰化县| 莱西市| 大同县| 宁都县| 疏附县| 成安县| 淅川县| 白朗县| 富锦市| 大庆市| 百色市| 黔南| 交口县| 苏尼特右旗| 长武县| 常山县| 凌源市| 平定县|