Pycharm + PyQt5 播放视频及MP3的一些配置

2 篇文章 0 订阅
1 篇文章 0 订阅
  1. 创建项目
  2. File->Settings->Project:×××->Project Interpreter
    安装PyQt5
  3. 通过安装包安装 pyqt5-toos
    链接:https://pan.baidu.com/s/1nUr01pxQOhryaM1SaNg3iA 提取码: deqp
    参考:https://blog.csdn.net/SeekAndFindYou/article/details/81264684


    apt-get install qt5-default qttools5-dev-tools
  4. 设置 Tools->External Tools
    点击 + 

    Program:/home/johnny/PycharmProjects/×××/venv/bin/python
    Arguments:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
    Workingdirectory:/home/johnny/PycharmProjects/×××/

    Program:/usr/bin/designer                       --designer 安装位置
    Arguments:$FileName$
    Workingdirectory:$ProjectFileDir$
  5. 安装 ffmpeg 插件
    sudo add-apt-repository ppa:djcj/hybrid  
    sudo apt-get update  
    sudo apt-get install ffmpeg  
  6. Linux 开发板报:no service found for - "org.qt-project.qt.mediaplayer"
    sudo apt-get install  libqt5multimedia5-plugins

     

 

 

 

附源码:

UI:

#UI
# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'MainForm.ui'
#
# Created by: PyQt5 UI code generator 5.9.2
#
# WARNING! All changes made in this file will be lost!


from PyQt5.QtCore import *
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QPalette
from PyQt5.QtMultimediaWidgets import QVideoWidget
from PyQt5.QtWidgets import *
from PyQt5.QtMultimedia import *

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.setWindowModality(QtCore.Qt.ApplicationModal)
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 571, 551))
        self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.btn_Play = QtWidgets.QPushButton(self.centralwidget)
        self.btn_Play.setGeometry(QtCore.QRect(650, 90, 99, 27))
        self.btn_Play.setObjectName("btn_Play")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(660, 200, 67, 17))
        self.label.setObjectName("label")
        MainWindow.setCentralWidget(self.centralwidget)
        # MainWindow.setCentralWidget(videoWidget)



        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 31))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.btn_Play.setText(_translate("MainWindow", "Play"))
        self.label.setText(_translate("MainWindow", "TextLabel"))

main: 

#MainForm

import time
import sys

from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtMultimediaWidgets import QVideoWidget
from PyQt5.QtWidgets import *
from PyQt5.QtMultimedia import *

from MainForm import *


class mainWindow(QMainWindow):
    def __init__(self):
        super(QMainWindow, self).__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)


if __name__ == "__main__":
    # Ui_MainWindow.verticalLayout.addWidget()

    app = QApplication(sys.argv)
    window = mainWindow()
    window.show()

    player = QMediaPlayer()

    player.setVolume(100)
    playlist = QMediaPlaylist()
    playlist.addMedia(QMediaContent(QUrl.fromLocalFile("/home/johnny/PycharmProjects/Python_1st/assets/videos/mv.mp4")))
    playlist.setPlaybackMode(QMediaPlaylist.CurrentItemInLoop)
    player.setPlaylist(playlist)
    videoWidget = QVideoWidget()
    palette = QPalette()
    palette.setBrush(QPalette.Background, Qt.black)
    player.setVideoOutput(videoWidget)
    videoWidget.show()
    player.play()
    window.ui.verticalLayout.addWidget(videoWidget)

    sys.exit(app.exec_())

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值