コード例 #1
0
    def init_video(self):
        self.old_bpm = 1.0

        self.video_widget = VideoWidget(self,
                                        self.show_video_preview,
                                        self.screen)
        self.media_player = QMediaPlayer(self.central)
        self.media_player.setVideoOutput(self.video_widget)

        self.playlist = QMediaPlaylist(self.media_player)
        dir_path = os.path.dirname(os.path.realpath(__file__))
        file_location = dir_path + "/resources/video_long.mp4"
        self.video_file = QUrl.fromLocalFile(file_location)
        self.playlist.addMedia(self.video_file)
        self.playlist.setPlaybackMode(QMediaPlaylist.Loop)
        self.playlist.setCurrentIndex(0)
        self.media_player.setPlaylist(self.playlist)
        self.media_player.mediaStatusChanged.connect(self.handle_media_state_changed)

        self.media_player.play()

        self.change_playback_rate(self.video_loop_bpm)

        if not self.show_video_preview:
            self.video_widget.hide()
コード例 #2
0
 def __init__(self):
     QMainWindow.__init__(self)
     Ui_MainWindow.__init__(self)
     self.setupUi(self)
     self.videoWidget = QVideoWidget()
     self.mediaPlayer = QMediaPlayer()
     self.mediaPlaylist = QMediaPlaylist()
     # Add the video file path
     self.mediaPlaylist.addMedia(QUrl.fromLocalFile(os.path.abspath("./sample_data/sampleVideo.mp4")))
     # Set the video to played in a loop once it ends.
     self.mediaPlaylist.setPlaybackMode(QMediaPlaylist.CurrentItemInLoop)
     # Set the QMediaPlaylist for the QMediaPlayer.
     self.mediaPlayer.setPlaylist(self.mediaPlaylist)
     # Add the QVideoWidget in the GridLayout.
     self.playerLayout.addWidget(self.videoWidget)
     # Set the video output from the QMediaPlayer to the QVideoWidget.
     self.mediaPlayer.setVideoOutput(self.videoWidget)
     # Set the QPushButtons to play, pause and stop the video in the QVideoWidget.
     self.playButton.clicked.connect(self.play_video)
     self.pauseButton.clicked.connect(self.pause_video)
     self.stopButton.clicked.connect(self.stop_video)
     # Set the total range for the QSlider.
     self.mediaPlayer.durationChanged.connect(self.change_duration)
     # Set the current value for the QSlider.
     self.mediaPlayer.positionChanged.connect(self.change_position)
     # Set the video position in QMediaPlayer based on the QSlider position.
     self.horizontalSlider.sliderMoved.connect(self.video_position)
コード例 #3
0
ファイル: xlfview.py プロジェクト: kongwonkeun/RdtCms
 def __init__(self, media, parent):
     super(VideoMediaView_, self).__init__(media, parent)
     self.widget = QVideoWidget(parent)
     self.player = QMediaPlayer()
     self.playlist = QMediaPlaylist()
     self.player.setPlaylist(self.playlist)
     self.player.setVideoOutput(self.widget)
     self.widget.setGeometry(media['geometry'])
     self.set_default_widget_prop()
     self.widget.setDisabled(True)
コード例 #4
0
ファイル: SPlayer.py プロジェクト: mekhti/PyMultiview
    def __init__(self, inputStream: StreamConfiguration):
        super(SPlayer, self).__init__()
        self.inputStream = inputStream
        self.mediaPlaylist = QMediaPlaylist()
        self.mediaPlaylist.addMedia(QUrl(self.inputStream.sURI))
        self.setMedia(self.mediaPlaylist)
        self.setMuted(False)

        self.stateChanged.connect(lambda state: print(state))

        self.play()
コード例 #5
0
ファイル: youtubeplayer.py プロジェクト: Kalebros/QtMetale
    def __init__(self,
                 titles: List[Title] = [],
                 widgetToPlay: QVideoWidget = None):
        QObject.__init__(self)

        self.__titles = titles
        self.__playlist = QMediaPlaylist(self)
        self.__player = QMediaPlayer(self)
        self.__videoWidget = widgetToPlay
        self.__player.setVideoOutput(self.__videoWidget)

        self.titlesListChanged.connect(self.resetPlayList)
コード例 #6
0
ファイル: GPlayer.py プロジェクト: mekhti/PyMultiview
 def __init__(self, parent, inputStream: StreamConfiguration):
     super(GPlayer, self).__init__()
     self.objectID = uuid4()
     self.lcDispatcher = LinkChecker()
     self.parentVideoWidgetItem = parent
     self.inputStream = inputStream
     self.mediaPlaylist = QMediaPlaylist()
     self.lcDispatcher.setInputStream(self.inputStream)
     self.setMuted(True)
     # self.stateChanged.connect(lambda: self.videoStateChanged())
     self.stateChanged.connect(lambda: self.vsc())
     self.error.connect(lambda: self.errorHandler(self.errorString()))
     self.mediaStatusChanged.connect(lambda: self.mStatusChanged())
     self.__initPlayer__()
     self.play()
コード例 #7
0
    def __init__(self, url: str):        
        super(VideoPlayer, self).__init__()
        self.player = QMediaPlayer()    

        QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
        self.playlist = QMediaPlaylist(self.player)
        self.playlist.addMedia(QUrl(url))

        self.video_widget = QVideoWidget()
        self.player.setVideoOutput(self.video_widget)

        self.playlist.setCurrentIndex(0)
        self.player.setPlaylist(self.playlist)

        self.layout = QtWidgets.QVBoxLayout()
        self.layout.addWidget(self.video_widget)
        self.setLayout(self.layout)

        self.player.play()
        QApplication.restoreOverrideCursor() 
コード例 #8
0
    def __init__(self,
                 name: T.Optional[str],
                 parent: T.Optional[QObject] = None) -> None:
        super().__init__(parent)
        self.name = name
        self.slider_volume: Number = 100
        self.threshold = PlaybackThreshold.Everything

        self._loop_sound: T.Optional[Sound] = None
        self._loop_player = QMediaPlayer(self)
        self._loop_volume_adjustment: Number = 0
        self._loop_player.setAudioRole(QAudio.GameRole)
        self._loop_playlist = QMediaPlaylist(self)
        self._loop_playlist.setPlaybackMode(QMediaPlaylist.CurrentItemOnce)
        self._loop_player.setPlaylist(self._loop_playlist)
        self._loop_player.stateChanged.connect(
            self._on_loop_player_state_changed)

        self._one_shot_player = QMediaPlayer(self)
        self._one_shot_volume_adjustment: Number = 0
        self._one_shot_player.setAudioRole(QAudio.GameRole)
        self._one_shot_player.stateChanged.connect(
            self._on_one_shot_player_state_changed)
コード例 #9
0
    def __init__(self):
        super(MainWindow, self).__init__()
        # Create widgets
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.mediaPlayer = QMediaPlayer()
        self.playlist = QMediaPlaylist()

        #mediaContent1 = QMediaContent(QUrl.fromLocalFile("big_buck_bunny.avi"))
        #mediaContent2=QMediaContent(QUrl.fromLocalFile("Doom.Patrol1.mp4"))
        #self.playlist.addMedia(mediaContent1)
        #self.playlist.addMedia(mediaContent2)
        #self.playlist.setCurrentIndex(1)

        #self.mediaPlayer.setMedia(self.playlist)
        self.mediaPlayer.setVideoOutput(self.ui.wvideo)

        self.ui.ltemps.setText("")
        self.ui.lduree.setText("")
        self.ui.dialVolume.setValue(0)
        self.ui.lvolume_2.setText(str(self.ui.dialVolume.value()))

        self.ui.pblecture.clicked.connect(self.lectureClicked)
        self.ui.pbpause.clicked.connect(self.pauseClicked)
        self.ui.pbstop.clicked.connect(self.stopClicked)
        self.ui.pbsuivant.clicked.connect(self.suivantClicked)
        self.ui.pbprecedent.clicked.connect(self.precedentClicked)
        self.ui.pbajouter.clicked.connect(self.ajouter2)
        self.ui.pbsupprimer.clicked.connect(self.supprimer)
        self.ui.listWidget.itemDoubleClicked.connect(self.mediaSelected2)

        self.ui.dialVolume.valueChanged.connect(self.volumeChanged)
        #self.mediaPlayer.positionChanged.connect(self.tempsChanged)

        self.mediaPlayer.positionChanged.connect(self.lectureEnCours)
        #self.mediaPlayer.positionChanged.connect(self.progressionChanged)
        self.ui.stpscourant.sliderMoved.connect(self.sliderMove)
コード例 #10
0
    def __init__(self):
        super(MainWindow, self).__init__()

        self.player = QMediaPlayer()
        self.playlist = QMediaPlaylist()

        toolBar = QToolBar()
        self.addToolBar(toolBar)
        playIcon = self.style().standardIcon(QStyle.SP_MediaPlay)
        previousIcon = self.style().standardIcon(QStyle.SP_MediaSkipBackward)
        nextIcon = self.style().standardIcon(QStyle.SP_MediaSkipForward)
        pauseIcon = self.style().standardIcon(QStyle.SP_MediaPause)
        stopIcon = self.style().standardIcon(QStyle.SP_MediaStop)

        self.playAction = toolBar.addAction(playIcon, "Play")
        self.previousAction = toolBar.addAction(previousIcon, "Previous")
        self.nextAction = toolBar.addAction(nextIcon, "Next")
        self.pauseAction = toolBar.addAction(pauseIcon, "Pause")
        self.stopAction = toolBar.addAction(stopIcon, "Stop")
        self.playAction.triggered.connect(self.player.play)
        self.previousAction.triggered.connect(self.previousClicked)
        self.nextAction.triggered.connect(self.playlist.next)
        self.pauseAction.triggered.connect(self.player.pause)
        self.stopAction.triggered.connect(self.player.stop)

        self.volSlider = QSlider()
        self.volSlider.setOrientation(Qt.Horizontal)
        self.volSlider.setMinimum(0)
        self.volSlider.setMaximum(100)
        self.volSlider.setFixedWidth(120)
        self.volSlider.setValue(self.player.volume())
        self.volSlider.setTickInterval(10)
        self.volSlider.setTickPosition(QSlider.TicksBelow)
        self.volSlider.setToolTip("Volume")
        self.volSlider.valueChanged.connect(self.player.setVolume)
        toolBar.addWidget(self.volSlider)

        openAction = QAction(QIcon.fromTheme("document-open"),
                             "&Open...",
                             self,
                             shortcut=QKeySequence.Open,
                             triggered=self.open)
        exitAction = QAction(QIcon.fromTheme("application-exit"),
                             "E&xit",
                             self,
                             shortcut="Ctrl+Q",
                             triggered=self.close)
        aboutQtAct = QAction("About &Qt", self, triggered=qApp.aboutQt)
        fileMenu = self.menuBar().addMenu("&File")
        fileMenu.addAction(openAction)
        fileMenu.addAction(exitAction)
        playMenu = self.menuBar().addMenu("&Play")
        playMenu.addAction(self.playAction)
        playMenu.addAction(self.previousAction)
        playMenu.addAction(self.nextAction)
        playMenu.addAction(self.pauseAction)
        playMenu.addAction(self.stopAction)
        aboutMenu = self.menuBar().addMenu("&About")
        aboutMenu.addAction(aboutQtAct)

        self.videoWidget = QVideoWidget()
        self.setCentralWidget(self.videoWidget)

        self.player.setPlaylist(self.playlist)
        self.player.stateChanged.connect(self.updateButtons)
        self.player.setVideoOutput(self.videoWidget)
        self.updateButtons(self.player.state())
コード例 #11
0
    def __init__(self):
        global pixmapDict, specialDescriptionDict
        super(MainWindow, self).__init__()
        self.ui = Ui_pipboy()
        self.ui.setupUi(self)

        self.ui.chartContainer.setContentsMargins(0, 0, 0, 0)

        self.anim = QTimeLine(20000, self)
        self.anim.setFrameRange(0, 500)
        self.anim.setLoopCount(0)
        self.anim.setUpdateInterval(16)
        self.anim.frameChanged[int].connect(
            self.ui.perks_description.verticalScrollBar().setValue)
        self.anim.frameChanged[int].connect(
            self.ui.aid_effect_label.verticalScrollBar().setValue)
        self.anim.frameChanged[int].connect(
            self.ui.data_description.verticalScrollBar().setValue)

        #self.anim2 = QPropertyAnimation(self.ui.main_tab, b"pos")
        #self.anim2.setEasingCurve(QEasingCurve.OutBounce)
        #self.anim2.setDuration(2000)
        #self.anim2.setStartValue(QPoint(10, -400))
        #self.anim2.setEndValue(QPoint(10, 0))
        #self.anim2.start()

        self.random = QRandomGenerator.global_()

        self.ui.stat_tab.setFocus()
        self.ui.stat_tab.currentChanged.connect(self.shift)
        self.ui.stat_tab.installEventFilter(self)
        self.ui.inv_tab.installEventFilter(self)

        self.ui.special_list.installEventFilter(self)
        self.ui.perks_list.installEventFilter(self)
        self.ui.test_list.installEventFilter(self)
        self.ui.apparel_list.installEventFilter(self)
        self.ui.aid_list.installEventFilter(self)
        self.ui.ammo_list.installEventFilter(self)
        self.ui.data_list.installEventFilter(self)
        self.ui.radio_list.installEventFilter(self)

        self.ui.main_img.setPixmap(description.main_img_pixmap)

        self.ui.special_image.setPixmap(description.pixmapDict.get(0))
        self.ui.perks_image.setPixmap(description.pixmatPerksDict.get(0))
        self.ui.weapon_image.setPixmap(description.pixmapWeaponDict.get(0))
        self.ui.apparel_image.setPixmap(description.pixmapWeaponDict.get(0))
        self.ui.aid_image.setPixmap(description.pixmapAidDict.get(0))
        self.ui.ammo_image.setPixmap(description.pixmapAmmoDict.get(0))

        lay = QVBoxLayout(self.ui.chartContainer)
        lay.setContentsMargins(0, 0, 0, 0)

        self.chartview = QtCharts.QChartView()
        self.chartview.setContentsMargins(0, 0, 0, 0)
        lay.addWidget(self.chartview)

        self.chart = QtCharts.QChart()
        self.chart.legend().hide()
        self.chart.setAnimationOptions(QtCharts.QChart.SeriesAnimations)

        self.series = QtCharts.QLineSeries()
        self.pen = QPen(QColor(119, 251, 81, 255))
        self.pen.setWidth(3)
        self.pen.setJoinStyle(Qt.RoundJoin)
        self.series.setPen(self.pen)

        backgroundGradient = QLinearGradient(QPointF(100, 100),
                                             QPointF(200, 200))

        backgroundGradient.setColorAt(0, QColor(0, 0, 0, 255))
        backgroundGradient.setColorAt(1, QColor(0, 0, 0, 255))
        self.chart.setBackgroundBrush(backgroundGradient)
        self.chart.setPlotAreaBackgroundBrush(backgroundGradient)

        self.chart.addSeries(self.series)

        self.chart.createDefaultAxes()

        self.chart.axisX(self.series).setVisible(False)
        self.chart.axisY(self.series).setVisible(False)
        self.chart.axisY(self.series).setRange(0, 100)
        self.chartview.setChart(self.chart)

        self.play = False
        self.player = QMediaPlayer()

        self.playlistFalloutNewVegas = QMediaPlaylist(self.player)
        self.playlistFalloutNewVegas.addMedia(
            QMediaContent(description.falooutNewVegas))
        self.playlistFalloutNewVegas.setCurrentIndex(1)

        self.playListMohaveMusic = QMediaPlaylist(self.player)

        for url in description.mohaveMusic:
            self.playListMohaveMusic.addMedia(QMediaContent(url))

        self.playListMohaveMusic.setCurrentIndex(1)

        self.playlisNewVegas = QMediaPlaylist(self.player)

        for url in description.newVegas:
            self.playlisNewVegas.addMedia(QMediaContent(url))

        self.playlisNewVegas.setCurrentIndex(1)

        self.playlistDict = {
            0: self.playlistFalloutNewVegas,
            1: self.playListMohaveMusic,
            2: self.playlisNewVegas
        }
コード例 #12
0
class Ui_MainWindow(QWidget):

    #create media player object
    mediaPlayer = QMediaPlayer(None, QMediaPlayer.VideoSurface)
    repeatMedia = False
    repeatItem = ""
    playlist = QMediaPlaylist()

    def formatTime(self, ms):

        h, r = divmod(ms, 3600000)
        m, r = divmod(r, 60000)
        s, _ = divmod(r, 1000)
        return ("%02d:%02d:%02d" % (h, m, s)) if h else ("%02d:%02d" % (m, s))

    def browseFile(self):
        if self.mediaPlayer.state() == QMediaPlayer.PlayingState:
            self.play.setIcon(self.playIcon)
            self.mediaPlayer.pause()
        elif self.mediaPlayer.state() == QMediaPlayer.PausedState:
            self.play.setIcon(self.pauseIcon)
            self.mediaPlayer.play()
        elif not (self.playlist.isEmpty()):
            self.mediaPlayer.setPlaylist(self.playlist)
            self.mediaPlayer.play()
            self.play.setIcon(self.pauseIcon)
        else:
            media, _ = QFileDialog.getOpenFileName(self, "Open Video")

            if media != "":
                self.mediaPlayer.setMedia(
                    QMediaContent(QUrl.fromLocalFile(media)))
                self.playlist.addMedia(QMediaContent(
                    QUrl.fromLocalFile(media)))
                self.mediaPlayer.play()
                self.play.setIcon(self.pauseIcon)

    def openFile(self):
        media, _ = QFileDialog.getOpenFileName(self, "Open Video")

        if media != "":
            self.mediaPlayer.setMedia(QMediaContent(QUrl.fromLocalFile(media)))
            self.mediaPlayer.play()

    def closeFile(self):
        quit()

    def pauseVideo(self):
        self.mediaPlayer.pause()

    def stopVideo(self):
        self.mediaPlayer.stop()

    def vidPosition(self, position):
        self.mediaPlayer.setPosition(position)

    def locationChanged(self, position):
        self.duration.setValue(position)

        if position >= 0:
            self.startTime.setText(self.formatTime(position))

        if self.mediaPlayer.state() == 0:

            if self.repeatMedia:
                self.mediaPlayer.play()
            else:
                self.duration.setValue(0)
                self.play.setIcon(self.playIcon)
                self.startTime.setText("--:--")
                self.endTime.setText("--:--")

    def durationChanged(self, duration):
        self.duration.setRange(0, duration)

        playTime = self.mediaPlayer.duration()
        self.endTime.setText(self.formatTime(playTime))

    def volumeControl(self, percentage):
        self.mediaPlayer.setVolume(percentage)

        if percentage <= 100 and percentage >= 60:
            self.volume.setIcon(self.volumeUp)
        elif percentage < 60 and percentage >= 30:
            self.volume.setIcon(self.volumeMed)
        elif percentage < 30 and percentage >= 1:
            self.volume.setIcon(self.volumeDown)
        else:
            self.volume.setIcon(self.volumeMute)

    def muteVolume(self):
        if self.mediaPlayer.isMuted() == True:
            self.mediaPlayer.setMuted(False)
            self.volumeControl(self.volume_2.value())
        else:
            self.mediaPlayer.setMuted(True)
            self.volume.setIcon(self.volumeMute)

    def loopMedia(self):
        if self.repeatMedia == True:
            self.repeatMedia = False
            self.repeat.setIcon(self.repeatDeactive)
        elif self.repeatMedia == False:
            self.repeatMedia = True
            self.repeat.setIcon(self.repeatActive)

    def changetoPlaylist(self):
        from playlist import Ui_playlistWindow
        self.window = QtWidgets.QMainWindow()
        self.ui = Ui_playlistWindow(self.window)
        self.ui.setupUi(self.window)
        self.window.show()
        self.playlist = Ui_playlistWindow.playlist

    def playlistPrev(self):
        self.playlist.previous()

    def playlistNext(self):
        self.playlist.next()

    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1027, 648)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/imgs/white Icons/video.svg"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        MainWindow.setWindowIcon(icon)
        MainWindow.setStyleSheet("#startTime, #endTime{\n"
                                 "    color: #fff;\n"
                                 "}")
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.frame = QtWidgets.QFrame(self.centralwidget)
        self.frame.setStyleSheet("#frame{\n"
                                 "background-color:rgb(0, 13, 20);\n"
                                 "}\n"
                                 "\n"
                                 "QPushButton{\n"
                                 "background: transparent;\n"
                                 "text-align: center;\n"
                                 "font: 75 15pt \"Comic Sans MS\";\n"
                                 "color:  rgb(58, 180, 204);\n"
                                 "border-radius: 30px;\n"
                                 "}\n"
                                 "")
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.frame)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.verticalLayout_4 = QtWidgets.QVBoxLayout()
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.videoWidget = QVideoWidget(self.frame)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.videoWidget.sizePolicy().hasHeightForWidth())
        self.videoWidget.setSizePolicy(sizePolicy)
        self.videoWidget.setMinimumSize(QtCore.QSize(700, 200))
        ##        self.videoWidget.setStyleSheet("background-color: #43549C")
        self.videoWidget.setStyleSheet("background-color: #e33a0b")
        self.videoWidget.setObjectName("videoWidget")
        self.verticalLayout_4.addWidget(self.videoWidget)
        self.verticalLayout_3.addLayout(self.verticalLayout_4)
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.startTime = QtWidgets.QLabel(self.frame)
        self.startTime.setObjectName("startTime")
        self.horizontalLayout_2.addWidget(self.startTime)
        self.duration = QtWidgets.QSlider(self.frame)
        self.duration.setMouseTracking(False)
        self.duration.setTabletTracking(False)
        self.duration.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.duration.setAcceptDrops(False)
        self.duration.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.duration.setAutoFillBackground(False)
        self.duration.setStyleSheet("background: transparent;\n"
                                    "-webkit-appearance:round;\n"
                                    "border-radius: 5px;\n"
                                    "color:  rgb(0, 255, 204);\n"
                                    "")
        self.duration.setInputMethodHints(QtCore.Qt.ImhNone)
        self.duration.setSingleStep(1)
        self.duration.setProperty("value", 0)
        self.duration.setSliderPosition(0)
        self.duration.setTracking(True)
        self.duration.setOrientation(QtCore.Qt.Horizontal)
        self.duration.setInvertedAppearance(False)
        self.duration.setInvertedControls(False)
        self.duration.setObjectName("duration")
        self.horizontalLayout_2.addWidget(self.duration)
        self.endTime = QtWidgets.QLabel(self.frame)
        self.endTime.setObjectName("endTime")
        self.horizontalLayout_2.addWidget(self.endTime)
        self.verticalLayout_3.addLayout(self.horizontalLayout_2)
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.frame_2 = QtWidgets.QFrame(self.frame)
        self.frame_2.setStyleSheet("QPushButoon{\n"
                                   "border-radius: 20px;\n"
                                   "}")
        self.frame_2.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame_2.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_2.setObjectName("frame_2")
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout(self.frame_2)
        self.horizontalLayout_6.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_6.setSpacing(7)
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
        self.volume = QtWidgets.QPushButton(self.frame_2)
        font = QtGui.QFont()
        font.setFamily("Comic Sans MS")
        font.setPointSize(15)
        font.setBold(False)
        font.setItalic(False)
        font.setWeight(9)
        self.volume.setFont(font)
        self.volume.setStyleSheet(
            "#volume:hover{\n"
            "icon: url(:/buttons/white Icons/mute-hover.svg);\n"
            "cursor: pointer;\n"
            "}")
        self.volume.setText("")
        self.volumeMute = QtGui.QIcon()
        self.volumeMute.addPixmap(
            QtGui.QPixmap(":/buttons/white Icons/mute1.svg"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.volumeDown = QtGui.QIcon()
        self.volumeDown.addPixmap(
            QtGui.QPixmap(":/buttons/white Icons/volume-down.svg"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.volumeMed = QtGui.QIcon()
        self.volumeMed.addPixmap(
            QtGui.QPixmap(":/buttons/white Icons/volume-medium.svg"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.volumeUp = QtGui.QIcon()
        self.volumeUp.addPixmap(
            QtGui.QPixmap(":/buttons/white Icons/volume-up.svg"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)

        self.volume.setIcon(self.volumeUp)
        self.volume.setIconSize(QtCore.QSize(35, 35))
        self.volume.setFlat(False)
        self.volume.setObjectName("volume")
        self.horizontalLayout_6.addWidget(self.volume)
        self.volume_2 = QtWidgets.QSlider(self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.volume_2.sizePolicy().hasHeightForWidth())
        self.volume_2.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setPointSize(1)
        self.volume_2.setFont(font)
        self.volume_2.setMaximum(26)
        self.volume_2.setPageStep(6)
        self.volume_2.setOrientation(QtCore.Qt.Horizontal)
        self.volume_2.setObjectName("volume_2")
        self.horizontalLayout_6.addWidget(self.volume_2)
        self.prev = QtWidgets.QPushButton(self.frame_2)
        self.prev.setStyleSheet(
            "#prev:hover{\n"
            "icon: url(:/buttons/cyan icons/previous.svg);\n"
            "}")
        self.prev.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(
            QtGui.QPixmap(":/buttons/white Icons/previous (1).svg"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.prev.setIcon(icon2)
        self.prev.setIconSize(QtCore.QSize(35, 35))
        self.prev.setObjectName("prev")
        self.horizontalLayout_6.addWidget(self.prev)
        self.play = QtWidgets.QPushButton(self.frame_2)
        self.play.setToolTip("")
        self.play.setStyleSheet("border-radius: 38px;")
        self.play.setText("")
        self.playIcon = QtGui.QIcon()
        self.playIcon.addPixmap(QtGui.QPixmap(":/imgs/cyan icons/play.svg"),
                                QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pauseIcon = QtGui.QIcon()
        self.pauseIcon.addPixmap(QtGui.QPixmap(":/imgs/cyan icons/pause.svg"),
                                 QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.play.setIcon(self.playIcon)
        self.play.setIconSize(QtCore.QSize(70, 70))
        self.play.setObjectName("play")
        self.horizontalLayout_6.addWidget(self.play)
        self.next = QtWidgets.QPushButton(self.frame_2)
        self.next.setStyleSheet(
            "#next:hover{\n"
            "icon: url(:/buttons/cyan icons/next (1).svg);\n"
            "}")
        self.next.setText("")
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(":/buttons/white Icons/next.svg"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.next.setIcon(icon4)
        self.next.setIconSize(QtCore.QSize(35, 35))
        self.next.setObjectName("next")
        self.horizontalLayout_6.addWidget(self.next)
        self.repeat = QtWidgets.QPushButton(self.frame_2)
        self.repeat.setWhatsThis("")
        self.repeat.setAccessibleName("")
        self.repeat.setAccessibleDescription("")
        self.repeat.setStyleSheet(
            "#repeat{\n"
            "border-radius: 10px;\n"
            "}\n"
            "#repeat:hover{\n"
            "icon: url(:/buttons/cyan icons/repeat (1).svg);\n"
            "}")
        self.repeat.setText("")
        self.repeatDeactive = QtGui.QIcon()
        self.repeatDeactive.addPixmap(
            QtGui.QPixmap(":/buttons/white Icons/repeat.svg"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.repeatActive = QtGui.QIcon()
        self.repeatActive.addPixmap(
            QtGui.QPixmap(":/buttons/cyan icons/repeat (1).svg"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)

        self.repeat.setIcon(self.repeatDeactive)
        self.repeat.setIconSize(QtCore.QSize(35, 35))
        self.repeat.setObjectName("repeat")
        self.horizontalLayout_6.addWidget(self.repeat)
        self.playlistbtn = QtWidgets.QPushButton(self.frame_2)
        self.playlistbtn.setText("")
        icon6 = QtGui.QIcon()
        icon6.addPixmap(QtGui.QPixmap(":/imgs/cyan icons/playlist.svg"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.playlistbtn.setIcon(icon6)
        self.playlistbtn.setIconSize(QtCore.QSize(40, 40))
        self.playlistbtn.setObjectName("playlist")
        self.horizontalLayout_6.addWidget(self.playlistbtn)
        self.horizontalLayout_5.addWidget(self.frame_2)
        self.verticalLayout_3.addLayout(self.horizontalLayout_5)
        self.horizontalLayout.addWidget(self.frame)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menuBar = QtWidgets.QMenuBar(MainWindow)
        self.menuBar.setGeometry(QtCore.QRect(0, 0, 1027, 21))
        self.menuBar.setObjectName("menuBar")
        self.menuFile = QtWidgets.QMenu(self.menuBar)
        self.menuFile.setObjectName("menuFile")
        MainWindow.setMenuBar(self.menuBar)
        self.actionOpen_File = QtWidgets.QAction(MainWindow)
        self.actionOpen_File.setObjectName("actionOpen_File")
        self.actionPlaylist = QtWidgets.QAction(MainWindow)
        self.actionPlaylist.setObjectName("actionPlaylist")
        self.actionQuit = QtWidgets.QAction(MainWindow)
        self.actionQuit.setObjectName("actionQuit")
        self.menuFile.addAction(self.actionOpen_File)
        self.menuFile.addAction(self.actionPlaylist)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionQuit)
        self.menuBar.addAction(self.menuFile.menuAction())

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

        ################### Video Widget ################
        self.mediaPlayer.setVideoOutput(self.videoWidget)
        #################################################

        ################### Video Slider #################
        self.duration.setRange(0, 0)
        self.duration.sliderMoved.connect(self.vidPosition)
        self.mediaPlayer.positionChanged.connect(self.locationChanged)
        self.mediaPlayer.durationChanged.connect(self.durationChanged)
        ##################################################

        ################### Play Button ##################
        self.play.clicked.connect(self.browseFile)
        ##################################################

        ################### Prev Next Buttons ############
        self.prev.pressed.connect(self.playlistPrev)
        self.next.pressed.connect(self.playlistNext)
        ##################################################

        ################### Repeat Button ################
        self.repeat.clicked.connect(self.loopMedia)
        ##################################################

        ################### Volume Icon ##################
        self.volume.clicked.connect(self.muteVolume)
        ##################################################

        ################### Volume Slider ################
        self.volume_2.setRange(0, 100)
        self.volume_2.setValue(100)
        self.volume_2.valueChanged.connect(self.volumeControl)
        ##################################################

        ################### Open Button ##################
        self.actionOpen_File.triggered.connect(self.openFile)
        ##################################################

        ################### Close Button #################
        self.actionQuit.triggered.connect(self.closeFile)
        ##################################################

        ################### Playlist Button #################
        self.playlistbtn.clicked.connect(self.changetoPlaylist)
        ##################################################

        self.mediaPlayer.setPlaylist(self.playlist)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Music Player"))
        self.startTime.setText(_translate("MainWindow", "--:--"))
        self.endTime.setText(_translate("MainWindow", "--:--"))
        self.volume.setToolTip(_translate("MainWindow", "volume"))
        self.volume.setShortcut(_translate("MainWindow", "P"))
        self.prev.setToolTip(_translate("MainWindow", "previous"))
        self.prev.setShortcut(_translate("MainWindow", "P"))
        self.play.setShortcut(_translate("MainWindow", "Space"))
        self.next.setToolTip(_translate("MainWindow", "next"))
        self.next.setShortcut(_translate("MainWindow", "N"))
        self.repeat.setToolTip(_translate("MainWindow", "repeat"))
        self.repeat.setShortcut(_translate("MainWindow", "R"))
        self.playlistbtn.setToolTip(_translate("MainWindow", "playlist"))
        self.playlistbtn.setShortcut(_translate("MainWindow", "P"))
        self.menuFile.setTitle(_translate("MainWindow", "File"))
        self.actionOpen_File.setText(_translate("MainWindow", "Open File..."))
        self.actionPlaylist.setText(_translate("MainWindow", "Playlist"))
        self.actionQuit.setText(_translate("MainWindow", "Quit"))
コード例 #13
0
    def __init__(self):
        super().__init__()

        self.setWindowTitle("Trivial Purfuit Board")
        self.num_row_tiles = 9
        self.num_col_tiles = 9

        self.board_tile_width = 95
        self.board_tile_height = self.board_tile_width

        self.board_width = self.num_row_tiles * self.board_tile_width
        self.board_height = self.num_col_tiles * self.board_tile_height

        monitor = QApplication.desktop().geometry()
        self.resize(monitor.width(), self.board_height)

        #default is event
        self.qtype1_tile_color = Qt.white
        #default is holidau
        self.qtype2_tile_color = Qt.green
        #default is location
        self.qtype3_tile_color = Qt.blue
        #default is people
        self.qtype4_tile_color = Qt.red
        self.roll_again_tile_color = Qt.darkGray

        self.players_initialized = False
        self.dice_initialized = False

        # Background music playlist
        self.playlist = QMediaPlaylist()

        self.playlist.addMedia(
            QUrl.fromLocalFile(
                definitions.ROOT_DIR +
                "/Trivial_Purfuit/resources/audio/sea_change.mp3"))
        self.playlist.addMedia(
            QUrl.fromLocalFile(definitions.ROOT_DIR +
                               "/Trivial_Purfuit/resources/audio/feblu.mp3"))
        self.playlist.addMedia(
            QUrl.fromLocalFile(
                definitions.ROOT_DIR +
                "/Trivial_Purfuit/resources/audio/vals_de_rodrigues.mp3"))
        self.playlist.addMedia(
            QUrl.fromLocalFile(
                definitions.ROOT_DIR +
                "/Trivial_Purfuit/resources/audio/escaping_time.mp3"))

        self.playlist.setPlaybackMode(QMediaPlaylist.Loop)

        self.playlist_player = QMediaPlayer(None, QMediaPlayer.VideoSurface)
        self.playlist_player.setPlaylist(self.playlist)

        self.number_of_players = 0
        self.player_list = []
        self.die = Die()
        self.board_menu = BoardMenu()
        self.qa_manager = QuestionManager(
            definitions.ROOT_DIR +
            "/Trivial_Purfuit/csvs/questions-and-answers.csv")
        self.question_categories = [
            definitions.question_type1, definitions.question_type2,
            definitions.question_type3, definitions.question_type4
        ]
        self.image_path = definitions.ROOT_DIR + "/Trivial_Purfuit/src/board/images/"
        self.restart_menu = RestartMenu()
コード例 #14
0
    def __init__(self, ui_file, parent=None):

        #reference to our music player
        self.music_player = QMediaPlayer()
        self.music_player.setVolume(50)

        #call parent QObject constructor
        super(MainWindow, self).__init__(parent)

        #load the UI file into Python
        ui_file = QFile(ui_file)
        ui_file.open(QFile.ReadOnly)
        loader = QUiLoader()
        self.window = loader.load(ui_file)

        #always remember to close files
        ui_file.close()

        #add playlist object
        self.playlist = QMediaPlaylist()
        self.playlist.setPlaybackMode(QMediaPlaylist.Sequential)
        self.music_player.setPlaylist(self.playlist)
        self.music_player.setNotifyInterval(50)

        #add a listener to change audio filename displayed

        #add playlist display object
        self.playlistDisplay = self.window.findChild(QListWidget,
                                                     'PlayListWidget')
        #self.playlist.setPlaybackMode(QMediaPlaylist.CurrentItemOnce)
        #self.playlist.setPlaybackMode(QMediaPlaylist.CurrentItemInLoop)
        #self.playlist.setPlaybackMode(QMediaPlaylist.Random)
        #self.playlist.setPlaybackMode(QMediaPlaylist.Loop)

        #add event listeners
        self.add_media_action = self.window.findChild(QAction,
                                                      'action_add_media')
        self.add_media_action.triggered.connect(self.add_media_triggered)

        self.quit_action = self.window.findChild(QAction, 'action_quit')
        self.quit_action.triggered.connect(self.quit_action_triggered)

        self.NextButton = self.window.findChild(QPushButton, 'NextButton')
        self.NextButton.clicked.connect(self.next_button_clicked)

        self.PauseButton = self.window.findChild(QPushButton, 'PauseButton')
        self.PauseButton.clicked.connect(self.pause_button_clicked)

        #PlayAllRadioButton = self.window.findChild(QRadioButton, 'PlayAllRadioButton')
        #PlayAllRadioButton.clicked.connect(self.play_all_button_clicked)

        self.PlayButton = self.window.findChild(QPushButton, 'PlayButton')
        self.PlayButton.clicked.connect(self.play_button_clicked)

        self.PreviousButton = self.window.findChild(QPushButton,
                                                    'PreviousButton')
        self.PreviousButton.clicked.connect(self.previous_button_clicked)

        #ProgressBar = self.window.findChild(QProgressBar, 'ProgressBar')
        #ProgressBar.valueChanged.connect(self.progress_bar_moved)

        self.RepeatOnceRadioButton = self.window.findChild(
            QRadioButton, 'RepeatOnceRadioButton')
        self.RepeatOnceRadioButton.clicked.connect(
            self.repeat_once_button_clicked)

        self.RepeatRadioButton = self.window.findChild(QRadioButton,
                                                       'RepeatRadioButton')
        self.RepeatRadioButton.clicked.connect(self.repeat_button_clicked)

        #ShuffleCheckBox = self.window.findChild(QCheckBox, 'ShuffleCheckBox')
        #ShuffleCheckBox.clicked.connect(self.shuffle_checkbox_clicked)

        #ShuttleSlider = self.window.findChild(QSlider, 'ShuttleSlider')
        #ShuttleSlider.valueChanged.connect(self.shuttle_slider_moved)

        self.VolumeSlider = self.window.findChild(QSlider, 'VolumeSlider')
        self.VolumeSlider.setValue(50)
        self.VolumeSlider.valueChanged.connect(self.change_volume_level)

        self.ProgressBar = self.window.findChild(QProgressBar, 'ProgressBar')
        self.music_player.durationChanged.connect(
            self.progress_bar_maximum_changed)
        self.music_player.positionChanged.connect(
            self.progress_bar_position_changed)

        #self.Playlist = self.window.findChild(QMediaPlaylist, 'Playlist')
        #self.Playlist.itemDoubleClicked.connect(self.volume_slider_moved)

        #show window to user
        self.window.show()
コード例 #15
0
ファイル: main.py プロジェクト: xavierdms/qt-media-player
    def __init__(self, ui_file, parent=None):

        #reference to our music player
        self.music_player = QMediaPlayer()

        self.music_playlist = QMediaPlaylist()
        self.music_player.setVolume(80)

        #call parent QObject constructor
        super(MainWindow, self).__init__(parent)

        #load the UI file into Python
        ui_file = QFile(ui_file)
        ui_file.open(QFile.ReadOnly)
        loader = QUiLoader()
        self.window = loader.load(ui_file)

        self.window.setWindowFlags(Qt.MSWindowsFixedSizeDialogHint)
        self.window.setWindowTitle("SynthWAV")

        #always remember to close files
        ui_file.close()

        #add event listeners
        open_action = self.window.findChild(QAction, 'action_open')
        open_action.triggered.connect(self.open_action_triggered)

        quit_action = self.window.findChild(QAction, 'action_quit')
        quit_action.triggered.connect(self.quit_action_triggered)

        open_button = self.window.findChild(QPushButton, 'open_button')
        open_button.clicked.connect(self.open_action_triggered)

        quit_button = self.window.findChild(QPushButton, 'quit_button')
        quit_button.clicked.connect(self.quit_action_triggered)

        play_button = self.window.findChild(QPushButton, 'play_button')
        play_button.clicked.connect(self.play_button_clicked)

        pause_button = self.window.findChild(QPushButton, 'pause_button')
        pause_button.clicked.connect(self.pause_button_clicked)

        stop_button = self.window.findChild(QPushButton, 'stop_button')
        stop_button.clicked.connect(self.stop_button_clicked)

        progress_slider = self.window.findChild(QSlider, 'progress_slider')
        self.music_player.positionChanged.connect(self.update_progress)
        progress_slider.sliderMoved.connect(self.scrub_progress)

        volume_slider = self.window.findChild(QSlider, 'volume_slider')
        volume_slider.setValue(self.music_player.volume())
        volume_slider.sliderMoved.connect(self.adjust_volume)

        next_button = self.window.findChild(QPushButton, 'next_button')
        next_button.clicked.connect(self.next_button_clicked)

        previous_button = self.window.findChild(QPushButton, 'previous_button')
        previous_button.clicked.connect(self.previous_button_clicked)

        fforward_button = self.window.findChild(QPushButton, 'fforward_button')
        fforward_button.clicked.connect(self.fforward_button_clicked)

        fbackward_button = self.window.findChild(QPushButton,
                                                 'fbackward_button')
        fbackward_button.clicked.connect(self.fbackward_button_clicked)

        self.music_playlist.currentMediaChanged.connect(self.change_title)

        #show window to user
        self.window.show()