Exemplo n.º 1
0
    def setupUi(self):
        bar = QtGui.QToolBar()

        bar.addAction(self.playAction)
        bar.addAction(self.pauseAction)
        bar.addAction(self.stopAction)

        self.seekSlider = Phonon.SeekSlider(self)
        self.seekSlider.setMediaObject(self.mediaObject)

        self.volumeSlider = Phonon.VolumeSlider(self)
        self.volumeSlider.setAudioOutput(self.audioOutput)
        self.volumeSlider.setSizePolicy(QtGui.QSizePolicy.Maximum,
                                        QtGui.QSizePolicy.Maximum)

        volumeLabel = QtGui.QLabel()
        volumeLabel.setPixmap(QtGui.QPixmap('images/volume.png'))

        palette = QtGui.QPalette()
        palette.setBrush(QtGui.QPalette.Light, QtCore.Qt.darkGray)

        self.timeLcd = QtGui.QLCDNumber()
        self.timeLcd.setPalette(palette)

        headers = [
            self.tr("Title"),
            self.tr("Artist"),
            self.tr("Album"),
            self.tr("Year")
        ]

        self.musicTable = QtGui.QTableWidget(0, 4)
        self.musicTable.setHorizontalHeaderLabels(headers)
        self.musicTable.setSelectionMode(
            QtGui.QAbstractItemView.SingleSelection)
        self.musicTable.setSelectionBehavior(
            QtGui.QAbstractItemView.SelectRows)
        self.connect(self.musicTable, QtCore.SIGNAL('cellPressed(int, int)'),
                     self.tableClicked)

        seekerLayout = QtGui.QHBoxLayout()
        seekerLayout.addWidget(self.seekSlider)
        seekerLayout.addWidget(self.timeLcd)

        playbackLayout = QtGui.QHBoxLayout()
        playbackLayout.addWidget(bar)
        playbackLayout.addStretch()
        playbackLayout.addWidget(volumeLabel)
        playbackLayout.addWidget(self.volumeSlider)

        mainLayout = QtGui.QVBoxLayout()
        mainLayout.addWidget(self.musicTable)
        mainLayout.addLayout(seekerLayout)
        mainLayout.addLayout(playbackLayout)

        widget = QtGui.QWidget()
        widget.setLayout(mainLayout)

        self.setCentralWidget(widget)
        self.setWindowTitle("Phonon Music Player")
Exemplo n.º 2
0
    def setupUI(self):
        """UI生成シーケンス.
        可視性を高めるため別に記述
        """

        # Ctrl UI
        self.btn_start = QPushButton('PLAY', self)
        self.volume_slider = Phonon.VolumeSlider(self)
        self.volume_slider.setAudioOutput(self.audio)
        self.seek_slider = Phonon.SeekSlider(self.media, self)
        self.seek_slider.setSingleStep(1 / 30 * 1000)  # [ms]

        # Status Label
        self.status_label = QLabel("00:00:00", self)
        self.status_label.setAlignment(Qt.AlignRight | Qt.AlignCenter)

        # Layout
        layout = QGridLayout(self)
        # 一段目
        layout.addWidget(self.btn_start, 0, 0)
        layout.addWidget(self.volume_slider, 0, 1)
        layout.addWidget(self.status_label, 0, 2)
        # 二段目
        layout.addWidget(self.seek_slider, 1, 0, 1, 3)

        # Signal
        self.media.stateChanged.connect(self._handle_StateChanged)
        self.media.aboutToFinish.connect(self.restart)
        self.btn_start.clicked.connect(self._handle_BtnStart)
Exemplo n.º 3
0
 def _init_ui(self):
     self.setEnabled(False)
     self.actionPlay = QtGui.QAction(self)
     self.actionPlay.setText("Play")
     self.actionPlay.setIcon(QtGui.QIcon(":/play.png"))
     self.actionPlay.setEnabled(True)
     self.actionPause = QtGui.QAction(self)
     self.actionPause.setText("Pause")
     self.actionPause.setIcon(QtGui.QIcon(":/pause.png"))
     self.actionPause.setEnabled(False)
     self.actionStop = QtGui.QAction(self)
     self.actionStop.setText("Stop")
     self.actionStop.setIcon(QtGui.QIcon(":/stop.png"))
     self.actionStop.setEnabled(False)
     self.addAction(self.actionPlay)
     self.addAction(self.actionPause)
     self.addAction(self.actionStop)
     self.addSeparator()
     self.volumeSlider = Phonon.VolumeSlider(self)
     self.volumeSlider.setMaximumWidth(200)
     self.volumeSlider.setAudioOutput(self._audioOutput)
     self.addWidget(self.volumeSlider)
     self.addSeparator()
     self.labelStart = QtGui.QLabel(" Start:", self)
     self.tsbStart = QtGui.QTimeEdit(self)
     self.tsbStart.setDisplayFormat("hh 'h' mm 'm' ss.zzz 's'")
     self.labelEnd = QtGui.QLabel(" End:", self)
     self.tsbEnd = QtGui.QTimeEdit(self)
     self.tsbEnd.setDisplayFormat("hh 'h' mm 'm' ss.zzz 's'")
     self.labelPosition = QtGui.QLabel(" Position:", self)
     self.tsbPosition = QtGui.QTimeEdit(self)
     self.tsbPosition.setDisplayFormat("hh 'h' mm 'm' ss.zzz 's'")
     self.tsbPosition.setReadOnly(True)
     self.addWidget(self.labelStart)
     self.addWidget(self.tsbStart)
     self.addWidget(self.labelEnd)
     self.addWidget(self.tsbEnd)
     self.addWidget(self.labelPosition)
     self.addWidget(self.tsbPosition)
     # connect ui
     self.actionPlay.triggered.connect(self.on_play)
     self.actionStop.triggered.connect(self.on_stop)
     self.actionPause.triggered.connect(self._mediaObject.pause)
     self.tsbStart.timeChanged.connect(self.on_start_time_changed)
     self.tsbEnd.timeChanged.connect(self.on_end_time_changed)
Exemplo n.º 4
0
    def __init__(self):
        #QtGui.QWidget.__init__(self)
        super(QPlayer, self).__init__()
        self.audioOuptut = Phonon.AudioOutput(Phonon.MusicCategory, self)
        self.player = Phonon.MediaObject(self)
        Phonon.createPath(self.player, self.audioOuptut)

        self.videoWidget = Phonon.VideoWidget(self)
        Phonon.createPath(self.player, self.videoWidget)

        self.player.setTickInterval(1000)
        self.connect(self.player, QtCore.SIGNAL("tick(qint64)"), self.tick)

        self.seekSlider = Phonon.SeekSlider(self.player, self)
        self.volumeSlider = Phonon.VolumeSlider(self.audioOuptut, self)

        self.buildGUI()
        self.setupConnections()
Exemplo n.º 5
0
 def __init__(self, parent=None):
     super(VolumeWidget, self).__init__(parent)
     self.setMaximumWidth(15)
     self.setWindowFlags(Qt.SplashScreen)
     self.setWindowOpacity(0.8)
     self.setMouseTracking(True)
     main_layout = QVBoxLayout(self)
     main_layout.setSpacing(0)
     main_layout.setContentsMargins(0, 0, 0, 0)
     self.silence_btn = PlayerButton("volume_on", self)
     self.volume_slider = Phonon.VolumeSlider()
     self.volume_slider.setMuteVisible(False)
     self.volume_slider.setFixedHeight(200)
     self.volume_slider.setOrientation(Qt.Vertical)
     self.volume_slider.setSizePolicy(QSizePolicy.Expanding,
                                      QSizePolicy.Fixed)
     main_layout.addWidget(self.silence_btn)
     main_layout.addWidget(self.volume_slider)
    def __init__(self, settings):
        super(QPlayer, self).__init__()
        self.audioOuptut = Phonon.AudioOutput(Phonon.MusicCategory, self)
        self.player = Phonon.MediaObject(self)
        Phonon.createPath(self.player, self.audioOuptut)

        self.videoWidget = cVideoWidget()
        Phonon.createPath(self.player, self.videoWidget)

        self.player.setTickInterval(500)  #1000
        self.connect(self.player, QtCore.SIGNAL("tick(qint64)"), self.tick)

        self.seekSlider = Phonon.SeekSlider(self.player, self)
        self.volumeSlider = Phonon.VolumeSlider(self.audioOuptut, self)
        #self.volumeSlider.setMaximumVolume(0.35)

        self.buildGUI()
        self.setupConnections()
        self.init = True  # used to test before loading file when PLAY is pushed
Exemplo n.º 7
0
 def __init__(self):
     QtGui.QWidget.__init__(self)
     self.setWindowTitle('Video Player')
     self.media = Phonon.MediaObject(self)
     self.video = Phonon.VideoWidget(self)
     self.video.setMinimumSize(400, 400)
     self.audio = Phonon.AudioOutput(Phonon.VideoCategory, self)
     Phonon.createPath(self.media, self.audio)
     Phonon.createPath(self.media, self.video)
     self.buttonChoose = QtGui.QPushButton('Choose File', self)
     self.buttonMimes = QtGui.QPushButton('Show Mimetypes', self)
     self.slider = Phonon.VolumeSlider(self)
     self.slider.setAudioOutput(self.audio)
     layout = QtGui.QGridLayout(self)
     layout.addWidget(self.video, 0, 0, 1, 2)
     layout.addWidget(self.buttonChoose, 1, 0)
     layout.addWidget(self.buttonMimes, 1, 1)
     layout.addWidget(self.slider, 2, 0, 1, 2)
     layout.setRowStretch(0, 1)
     self.media.stateChanged.connect(self.handleStateChanged)
     self.buttonChoose.clicked.connect(self.handleButtonChoose)
     self.buttonMimes.clicked.connect(self.handleButtonMimes)
Exemplo n.º 8
0
 def __init__(self):
     QtGui.QWidget.__init__(self)
     self.setWindowTitle('Speech Intelligibility Test')
     self.resize(800, 100)
     self.media = Phonon.MediaObject(self)
     self.audio = Phonon.AudioOutput(Phonon.MusicCategory, self)
     Phonon.createPath(self.media, self.audio)
     self.buttonStart = QtGui.QPushButton('Start', self)
     self.slider = Phonon.VolumeSlider(self)
     self.slider.setAudioOutput(self.audio)
     self.entry = QtGui.QLineEdit()
     self.entry.setEnabled(False)
     entryFont = QtGui.QFont("Times", 18)
     self.entry.setFont(entryFont)
     layout = QtGui.QGridLayout(self)
     layout.addWidget(self.entry, 0, 0, 1, 2)
     layout.addWidget(self.buttonStart, 1, 1)
     layout.addWidget(self.slider, 1, 0)
     layout.setRowStretch(0, 1)
     self.media.stateChanged.connect(self.handleStateChanged)
     self.media.finished.connect(self.handleSampleFinished)
     self.buttonStart.clicked.connect(self.handleButtonStart)
     self.entry.returnPressed.connect(self.handleSaveEntry)
Exemplo n.º 9
0
    def setupUi(self, parent):
        """
        Overridden setup UI method.
        :type parent: MainApp
        """
        super(MainApp, self).setupUi(parent)
        self.videoNameLlb.setText(str(self.video.name))
        self.zoomlSlider.setMinimumWidth(50)
        self.userLbl.setText(self.user.email)
        self.setWindowFlags(self.windowFlags() ^ Qt.WindowContextHelpButtonHint)
        self.setWindowTitle(self.windows_title)

        # fill video properties
        self.videoTable.setItem(0, 1, QTableWidgetItem(self.video.name))
        self.videoTable.setItem(1, 1, QTableWidgetItem(self.video.filename))
        self.videoTable.setItem(2, 1, QTableWidgetItem(str(self.video.width) + "x" + str(self.video.height)))
        self.videoTable.setItem(3, 1, QTableWidgetItem("%s fps (%s frames)" % (self.video.fps, self.video.frame_count)))
        timeInSec = self.video.duration
        ms = round((timeInSec - int(timeInSec)) * 1000)
        if ms >= 1000:
            ms = 0
            timeInSec += 1
        hms = time.strftime('%H:%M:%S', time.gmtime(timeInSec))
        self.timeLbl.setText("%s:%03d" % (hms, ms))
        self.videoTable.setItem(4, 1, QTableWidgetItem("%s.%03d" % (hms, ms)))
        self.videoTable.setItem(5, 1, QTableWidgetItem("No" if self.video.is_finished else "Yes"))

        # setup annotation table geometry
        header = self.annotationsTable.horizontalHeader()
        header.setResizeMode(0, QHeaderView.Interactive)
        header.setResizeMode(1, QHeaderView.Stretch)
        header.setResizeMode(2, QHeaderView.ResizeToContents)
        self.annotationsTable.setColumnWidth(0, 230)
        self.annotationsTable.setColumnWidth(2, 35)

        # setup nonVis annotation table
        self.nonVisTable.setMouseTracking(True)
        font = self.nonVisTable.font()
        font.setPixelSize(self.SMALL_FONT)
        self.nonVisTable.setFont(font)
        header = self.nonVisTable.verticalHeader()
        header.setResizeMode(QHeaderView.ResizeToContents)
        header = self.nonVisTable.horizontalHeader()
        header.setResizeMode(QHeaderView.Fixed)

        # graphicsView init
        self.scene = graphics.GraphicsScene(self)
        self.graphicsView.setStyleSheet("background: #000000")
        self.graphicsView.setAlignment(Qt.AlignLeft | Qt.AlignTop)
        self.graphicsView.setScene(self.scene)
        self.graphicsView.resizeEvent = self.graphicsViewResizeEvent
        self.graphicsView.setTransformationAnchor(QGraphicsView.AnchorUnderMouse)
        self.videoGridLayout.setAlignment(self.graphicsView, Qt.AlignCenter)

        # Setup multimedia player
        path = os.path.join(self.rootPath, 'data', 'video', self.video.filename)
        self.audioOuptut = Phonon.AudioOutput(Phonon.MusicCategory, self)
        self.videoWidget = Phonon.VideoWidget()
        self.player = videoplayer.VideoPlayer(self, path)
        Phonon.createPath(self.player, self.audioOuptut)
        Phonon.createPath(self.player, self.videoWidget)
        self.playerProxy = self.scene.addWidget(self.videoWidget)
        self.playerProxy.setVisible(False)
        self.scene.video_size = self.playerProxy.size()

        # setup player controls
        self.mainSeekSlider = videoplayer.MainVideoSeeker(self)
        self.mainSeekSlider.setMinimumWidth(100)
        self.volumeSlider = Phonon.VolumeSlider(self.audioOuptut)
        self.volumeSlider.setFixedWidth(100)
        self.mainVideoBarHLayout.addWidget(self.mainSeekSlider)
        self.mainVideoBarHLayout.addWidget(self.volumeSlider)
        self.playPauseBtn.setFocus()
        self.stopBtn.setVisible(False)      # if not hide and later show -> paint update of player wont work properly!

        # status bar
        self.fpsLabel = QLabel("Frame #0")
        self.statusbar.addPermanentWidget(self.fpsLabel)

        # icons
        zoom_icon = QPixmap(":/icons/icons/zoom.png").scaled(QSize(16, 16), Qt.IgnoreAspectRatio, Qt.SmoothTransformation)
        self.zoomLbl.setPixmap(zoom_icon)
        db_icon = QPixmap(":/icons/icons/database.png").scaled(QSize(16, 16), Qt.IgnoreAspectRatio, Qt.SmoothTransformation)
        self.db_status = QLabel()
        self.db_status.setPixmap(db_icon)
        self.db_status.setMinimumWidth(25)
        self.db_status.setAlignment(Qt.AlignCenter)
        self.statusbar.addPermanentWidget(self.db_status)
Exemplo n.º 10
0
    def setupUi(self):

        styles = """
          QSlider::groove:horizontal {
             background: red;
             position: absolute; /* absolutely position 4px from the left and right of the widget. setting margins on the widget should work too... */
             left: 4px; right: 4px;
             height:4px;
         }

         QSlider::handle:horizontal {
             height: 6px;
             width: 6px;
             background: red;
             
             border-radius: 100px;
         }

         QSlider::add-page:horizontal {
             background: white;
         }

         QSlider::sub-page:horizontal {
             background: skyblue;
         }
        """

        self.seekSlider = Phonon.SeekSlider(self.media, self)
        self.seekSlider.setStyleSheet(styles)
        self.volumeSlider = Phonon.VolumeSlider(self.audio)

        palette = QPalette()
        palette.setBrush(QPalette.Dark, Qt.lightGray)

        self.timeLcd = QLCDNumber()
        self.timeLcd.setPalette(palette)


        headers = [self.tr("Title"), self.tr("Duration")]

        self.playlistTable = QTableWidget(0, 2)
        self.playlistTable.setHorizontalHeaderLabels(headers)
        self.playlistTable.setSelectionMode(QAbstractItemView.SingleSelection)
        self.playlistTable.setSelectionBehavior(QAbstractItemView.SelectRows)
        self.playlistTable.setStyleSheet('background-color: #ffffff; color: #000000')
        self.playlistTable.setMinimumWidth(250)


        self.connect(self.playlistTable, SIGNAL('cellPressed(int, int)'),
                self.tableClicked)

        playlistBar = QToolBar()
        playlistBar.addAction(self.addFilesAction)
        playlistBar.addAction(self.repeatListAction)
        playlistBar.addAction(self.shuffleAction)
        playlistBar.addAction(self.previousAction)
        playlistBar.addAction(self.nextAction)
        playlistBar.setStyleSheet('QToolBar{border-color:#cccccc;}QToolButton:checked{background-color:blue}')

        playlistLayout = QVBoxLayout()
        playlistLayout.addWidget(self.playlistTable)
        playlistLayout.addWidget(playlistBar)
        
        self.playlistWidget = QWidget()
        self.playlistWidget.setLayout(playlistLayout)


        bar = QToolBar()
        bar.addAction(self.playAction)
        bar.addAction(self.pauseAction)
        bar.addAction(self.stopAction)
        bar.addAction(self.fullAction)
        bar.addAction(self.repeatAction)
        bar.setStyleSheet('QToolBar{border-color:#cccccc;}QToolButton:checked{background-color:blue}')

        listbar = QToolBar()
        listbar.addAction(self.addFilesAction)
        listbar.addAction(self.playlistAcion)

        listbar.setStyleSheet('QToolBar {border-color:#cccccc;}')


        self.video.setMinimumWidth(400)

        videoLayout = QHBoxLayout()
        videoLayout.addWidget(self.video)
        videoLayout.addWidget(self.playlistWidget)


        seekerLayout = QHBoxLayout()
        seekerLayout.addWidget(self.seekSlider)
        seekerLayout.addWidget(self.timeLcd)

        playbackLayout = QHBoxLayout()
        playbackLayout.addWidget(bar)
        playbackLayout.addStretch()
        playbackLayout.addWidget(listbar)
        playbackLayout.addWidget(self.volumeSlider)

        mainLayout = QVBoxLayout()
        mainLayout.addLayout(videoLayout)
        mainLayout.addLayout(seekerLayout)
        mainLayout.addLayout(playbackLayout)

        self.widget = QWidget()
        self.widget.setLayout(mainLayout)
        self.widget.setStyleSheet('background-color: #000000;')
        self.widget.setMinimumWidth(200)



        self.setCentralWidget(self.widget)
        self.setStyleSheet('background-color: #000000;')
Exemplo n.º 11
0
    def buatSlider(self):
        self.posisi = Phonon.SeekSlider(self)
        self.volume = Phonon.VolumeSlider(self)

        self.volume.setAudioOutput(self.suara)
        self.posisi.setMediaObject(self.pemutar)
Exemplo n.º 12
0
    def newwindows(self):
        import glob

        self.setWindowTitle('Media')
        action = QAction('text', self)
        self.actions = action.setStatusTip('check')
        self.setGeometry(100, 50, 1000, 1000)
        self.tool = QMenuBar(self)

        self.okay = self.tool.addMenu('okay')
        self.okay2 = self.tool.addMenu('okay')
        self.okay.addAction(action)

        self.setWindowIcon(
            QIcon('C:/Users/fish/Downloads/nice/icons8-sunday-50.png'))
        #'''''''\

        #self.layout = QVBoxLayout(self)
        #self.browser = QWebView(self)
        '''damnit = "http://www.google.com/"
        self.f***s = self.browser.load(QUrl(damnit))

        self.browser.move(500,100)
        self.browser.resize(500,500)'''
        dir = ''
        self.btnss = QPushButton('open file', self)
        self.btns2 = QPushButton('pause', self)
        self.btns3 = QPushButton('play', self)
        self.btns3.clicked.connect(self.played)
        self.btns2.clicked.connect(self.paused)
        self.btnss.move(100, 350)
        self.btns2.move(100, 400)
        self.btns3.move(100, 450)

        self.btnss.clicked.connect(self.fhile)

        path = self.filename
        print(self.filename)

        self.media = Phonon.MediaObject(self)
        self.video = Phonon.VideoWidget(self)
        self.video.setMinimumSize(400, 400)
        self.audio = Phonon.AudioOutput(Phonon.VideoCategory, self)
        Phonon.createPath(self.media, self.audio)
        Phonon.createPath(self.media, self.video)
        self.media.setCurrentSource(Phonon.MediaSource(path))
        self.media.play()
        self.video.show()
        # -------------------------------------------
        self.btns4 = QPushButton('Full Screen', self)
        self.btns4.move(400, 0)
        self.btns4.clicked.connect(self.enlarged)
        # -------------------------------------------

        # -------------------------------------------
        self.slider = Phonon.VolumeSlider(self)
        self.slider.setAudioOutput(self.audio)
        self.slider.move(250, 50)
        self.slider.resize(250, 50)

        self.seekk = Phonon.SeekSlider(self)
        self.seekk.setMediaObject(self.media)
        self.seekk.move(200, 550)
        self.seekk.resize(350, 150)
        self.video.move(200, 200)
        # -------------------------------------------
        #self.view = QListView(self)
        #self.view.move(600,100)
        #self.view.resize(100,100)
        lists = glob.glob('C:/Users/fish/Downloads/*.WMV') + glob.glob(
            'C:/Users/fish/Downloads/*.mp4') + glob.glob(
                'C:/Users/fish/Downloads/*.flv')
        self.newview = QListWidget(self)
        self.newview.resize(300, 300)
        self.newview.move(600, 300)
        for item in lists:

            self.okay = QListWidgetItem('okay')
            self.okay.setData(Qt.UserRole, str(item))
            self.newview.addItem(self.okay)

            #self.newview.setValue(item)


# -------------------------------------------

        self.newview.clicked.connect(self.listfunc)
        #self.smodel = QStandardItemModel(self)

        # -------------------------------------------
        #self.setKey(QShortcut(Qt.Key_Escape, self))
        # self.act.setKey(QKeySequence('Alt+Enter'))
        #self.act.activated.connect(self.efullscreen)

        print(lists)
        #self.line = QTextEdit(self)
        #self.line.resize(25,25)
        #self.line.resize(25,25)
        #self.line.move(100,100)
        #self.line = QLineEdit(self)
        #self.line.resize(300,30)
        #self.line.move(600,70)
        # -------------------------------------------
        self.naved = QPushButton('browser', self)
        self.naved.clicked.connect(self.nav)

        # -------------------------------------------
        self.btned = QPushButton('Random Photo', self)
        self.btned.move(100, 300)
        self.btned.clicked.connect(self.check)
        # -------------------------------------------
        self.show()
        print(path)

        if path == None:
            self.lab = QLabel(self)
            paths = 'C:/Users/fish/Desktop/pexels-photo.jpg'
            self.img = QPixmap(paths)
            self.lab.setPixmap(paths)
            self.lab.move(200, 175)
            self.lab.resize(400, 400)
            self.lab.show()

        else:
            paths = ''

            self.lab.resize(10, 10)
            self.lab.move(10, 10)