Pyqt6中QMediaPlayer音視頻播放的使用
QMediaPlayer 是 PyQt6 中用于音視頻播放的類,提供了對(duì)多種媒體格式的支持,能夠播放本地文件、流媒體、音頻以及視頻等。它是 QtMultimedia 模塊的一部分,主要通過與 QMediaPlayer 結(jié)合使用的控件,如 QVideoWidget 來顯示視頻內(nèi)容。
主要功能:
1. 加載和播放媒體:
setSource():設(shè)置要播放的媒體源,可以是本地文件、URL 或媒體流。play():開始播放音頻或視頻。pause():暫停播放。stop():停止播放。
2. 控制音量:
setVolume():設(shè)置音量(0到100之間)。
3. 控制播放進(jìn)度:
setPosition():設(shè)置播放的當(dāng)前位置(以毫秒為單位)。position():獲取當(dāng)前播放位置。
4. 獲取媒體信息:
duration():獲取媒體的總時(shí)長(zhǎng)(以毫秒為單位)。media():獲取當(dāng)前播放的媒體內(nèi)容。
5. 信號(hào):
mediaStatusChanged: 當(dāng)媒體播放狀態(tài)發(fā)生變化時(shí)發(fā)出信號(hào)。positionChanged: 當(dāng)播放進(jìn)度改變時(shí)發(fā)出信號(hào)。durationChanged: 當(dāng)媒體的總時(shí)長(zhǎng)發(fā)生變化時(shí)發(fā)出信號(hào)。error: 當(dāng)播放出錯(cuò)時(shí)觸發(fā)。
6. 視頻輸出:
setVideoOutput(): 設(shè)置一個(gè)視頻控件(如QVideoWidget)來顯示播放的視頻內(nèi)容。
示例代碼:
from PyQt6.QtWidgets import QApplication, QPushButton, QVBoxLayout, QWidget
from PyQt6.QtMultimedia import QMediaPlayer, QAudioOutput
from PyQt6.QtCore import QUrl
app = QApplication([])
# 界面
window = QWidget()
layout = QVBoxLayout()
# 播放器
# 播放器
player = QMediaPlayer()
audio_output = QAudioOutput()
player.setAudioOutput(audio_output)
player.setSource(QUrl.fromLocalFile("./res/music/提示音1.mp3")) # 指定本地音頻文件
player.play()
player.setLoops(5) # 循環(huán)播放
# 播放按鈕
button = QPushButton("停止")
button.clicked.connect(player.stop)
layout.addWidget(button)
window.setLayout(layout)
window.show()
app.exec()
關(guān)鍵方法總結(jié):
setSource(): 設(shè)置媒體源。play(),pause(),stop(): 控制播放。setVolume(): 調(diào)整音量。setPosition(): 設(shè)置播放進(jìn)度。setVideoOutput(): 設(shè)置視頻輸出窗口。
到此這篇關(guān)于Pyqt6中QMediaPlayer音視頻播放的使用的文章就介紹到這了,更多相關(guān)Pyqt6 QMediaPlayer音視頻播放內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python使用redis實(shí)現(xiàn)消息隊(duì)列(異步)的實(shí)現(xiàn)完整例程
本文主要介紹了python使用redis實(shí)現(xiàn)消息隊(duì)列(異步)的實(shí)現(xiàn)完整例程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
利用Python探測(cè)附近WIFI密碼的詳細(xì)代碼
這篇文章主要介紹了利用Python探測(cè)附近WIFI密碼,基于python腳本實(shí)現(xiàn)wifi密碼的暴力破解從而實(shí)現(xiàn)免費(fèi)蹭網(wǎng),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-01-01
基于Python實(shí)現(xiàn)最新房?jī)r(jià)信息的獲取
這篇文章主要為大家介紹了如何利用Python獲取房?jī)r(jià)信息(以北京為例),整個(gè)數(shù)據(jù)獲取的信息是通過房源平臺(tái)獲取的,通過下載網(wǎng)頁(yè)元素并進(jìn)行數(shù)據(jù)提取分析完成整個(gè)過程,需要的可以參考一下2022-04-04
淺談PyTorch的數(shù)據(jù)讀取機(jī)制Dataloader與Dataset
這篇文章主要介紹了淺談PyTorch的數(shù)據(jù)讀取機(jī)制Dataloader與Dataset,DataLoader的作用是構(gòu)建一個(gè)可迭代的數(shù)據(jù)裝載器,每次執(zhí)行循環(huán)的時(shí)候,就從中讀取一批Batchsize大小的樣本進(jìn)行訓(xùn)練,需要的朋友可以參考下2023-07-07
python實(shí)現(xiàn)nao機(jī)器人身體軀干和腿部動(dòng)作操作
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)nao機(jī)器人身體軀干和腿部動(dòng)作操作,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-04-04
python實(shí)現(xiàn)按任意鍵繼續(xù)執(zhí)行程序
本文給大家分享的是如何使用Python腳本實(shí)現(xiàn)按任意鍵繼續(xù)執(zhí)行程序的代碼,非常的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下2016-12-12
詳解Python下Flask-ApScheduler快速指南
Flask是Python社區(qū)非常流行的一個(gè)Web開發(fā)框架,本文將嘗試將介紹APScheduler應(yīng)用于Flask之中,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-11-11

