doublek吧 关注:60贴子:280
  • 2回复贴,共1
sudo add-apt-repository universe
sudo add-apt-repository multiverse
sudo apt-get update
sudo apt-get install gstreamer1.0-tools gstreamer1.0-alsa gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev // for development


IP属地:新疆1楼2018-03-08 03:37回复
    Please run
    ubuntu@tegra-ubuntu:~$ export DISPLAY=:0
    ubuntu@tegra-ubuntu:~$ gst-launch-1.0 filesrc location= videoplayback1.mp4 ! qtdemux name=demux demux.video_0 ! queue ! h264parse ! omxh264dec ! nveglglessink


    IP属地:新疆2楼2018-03-08 04:37
    回复
      from PyQt5.QtCore import *
      from PyQt5.QtGui import *
      from PyQt5.QtWidgets import *
      from PyQt5.QtMultimedia import *
      from PyQt5.QtMultimediaWidgets import *
      from PyQt5 import QtCore, QtGui, QtWidgets
      from UI.UImain import *
      class VideoWidget(QVideoWidget):
      def __init__(self, parent=None):
      super(VideoWidget, self).__init__(parent)
      self.setSizePolicy(QSizePolicy.Ignored, QSizePolicy.Ignored)
      p = self.palette()
      p.setColor(QPalette.Window, Qt.black)
      self.setPalette(p)
      self.setAttribute(Qt.WA_OpaquePaintEvent)
      def keyPressEvent(self, event):
      if event.key() == Qt.Key_Escape and self.isFullScreen():
      self.setFullScreen(False)
      event.accept()
      elif event.key() == Qt.Key_Enter and event.modifiers() & Qt.Key_Alt:
      self.setFullScreen(not self.isFullScreen())
      event.accept()
      else:
      super(VideoWidget, self).keyPressEvent(event)
      def mouseDoubleClickEvent(self, event):
      self.setFullScreen(not self.isFullScreen())
      event.accept()
      class ui_C(QWidget):
      def __init__(self, parent=None):
      super(ui_C, self).__init__(parent)
      self.player = QMediaPlayer()
      self.playlist = QMediaPlaylist()
      self.player.setPlaylist(self.playlist)
      self.videoWidget = VideoWidget()
      fileInfo = QFileInfo('UIpic/video1.mp4')
      url = QUrl.fromLocalFile(fileInfo.absoluteFilePath())
      self.playlist.addMedia(QMediaContent(url))
      def play_video(self):
      print('video1 playing~!!!!')
      self.videoWidget.setFullScreen(True)
      self.player.setVideoOutput(self.videoWidget)
      # 当前播放的曲目
      self.playlist.setCurrentIndex(0)
      print('现在播放的视频“',self.playlist.currentIndex)
      self.playlist.setPlaybackMode(QMediaPlaylist.CurrentItemInLoop)
      self.player.play()
      def statusChanged(self, status):
      if status == QMediaPlayer.EndOfMedia:
      self.videoWidget.close()
      def keyPressEvent(self, e):
      if e.key() == Qt.Key_L:
      print('press L')
      if __name__ == "__main__":
      app = QApplication(sys.argv)
      c = ui_C()
      c.play_video()
      sys.exit(app.exec_())


      IP属地:新疆3楼2018-03-08 06:16
      回复