使用qt播放本地视频用python播放
时间: 2023-09-24 16:09:29 浏览: 119
你可以使用 PyQt 或 PySide 库来结合 Qt 框架与 Python 播放本地视频。以下是一个简单的示例代码,展示了如何使用 QtMultimedia 模块播放本地视频:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QVBoxLayout, QPushButton, QFileDialog
from PyQt5.QtMultimedia import QMediaPlayer, QMediaContent
from PyQt5.QtMultimediaWidgets import QVideoWidget
class VideoPlayer(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("Video Player")
self.setGeometry(100, 100, 800, 600)
# 创建视频播放器和视频窗口
self.video_player = QMediaPlayer(self)
self.video_widget = QVideoWidget(self)
self.setCentralWidget(self.video_widget)
# 创建按钮
self.open_button = QPushButton("Open Video", self)
self.open_button.clicked.connect(self.open_video)
# 创建主布局
layout = QVBoxLayout()
layout.addWidget(self.open_button)
layout.addWidget(self.video_widget)
# 创建主窗口
main_widget = QWidget(self)
main_widget.setLayout(layout)
self.setCentralWidget(main_widget)
def open_video(self):
# 打开文件对话框,选择要播放的视频文件
file_dialog = QFileDialog()
video_file, _ = file_dialog.getOpenFileName(self, "Open Video File")
if video_file:
# 创建媒体内容对象,并设置给视频播放器
video_content = QMediaContent(video_file)
self.video_player.setMedia(video_content)
# 设置视频显示在视频窗口上
self.video_player.setVideoOutput(self.video_widget)
# 开始播放视频
self.video_player.play()
if __name__ == "__main__":
app = QApplication(sys.argv)
player = VideoPlayer()
player.show()
sys.exit(app.exec_())
```
上述代码创建了一个简单的视频播放器窗口,其中包含一个按钮用于选择要播放的本地视频文件。当用户点击按钮后,会弹出文件选择对话框,选择要播放的视频文件。然后,程序会创建一个 QMediaContent 对象,并将其设置给 QMediaPlayer,然后将视频输出到 QVideoWidget 上进行显示,最后开始播放视频。
请确保已经安装了 PyQt5 和 PySide 库,并且将视频文件路径传递给 QMediaContent 构造函数时提供正确的文件路径。你可以根据需要进行修改和扩展这个示例代码。希望对你有帮助!
阅读全文