qt QMediaPlaylist

**QMediaPlaylist**是 Qt Multimedia 模块中的一个类,用于管理媒体文件的播放列表。它提供了一种方便的方式来组织和控制多媒体内容的播放,如音频和视频文件。

主要方法

  • QMediaPlaylist(00bject *parent = nullptr):构造一个新的媒体播放列表对象。
  • void addMedia(const QMediaContent &content):将媒体内容添加到播放列表末尾。
  • bool insertMedia(int index, const QMediaContent &content):在指定位置插入媒体内容。
  • void removeMedia(int index):移除指定位置的媒体内容
  • void clear():清除所有媒体内容。
  • int mediacount()const:返回播放列表中的媒体内容数。
  • QMediaContent media(int index)const:返回指定位置的媒体内容。
  • void setCurrentIndex(int index):设置当前播放的媒体索引。
  • int currentIndex()const:返回当前播放的媒体索引。
  • void next():播放下一个媒体内容,
  • void previous():播放上一个媒体内容
  • QMediaPlaylist::PlaybackMode playbackMode()const:返回当前的播放模
  • void setPlaybackMode(QMediaPlaylist::PlaybackMode mode):设置播放模式
  • bool isEmpty() const:检查播放列表是否为空。

常用枚举类型

QMediaPlaylist::PlaybackMode : 表示播放列表的不同播放模式,包括

  • CurrentItemOnce : 播放当前媒体项一次。
  • CurrentItemInLoop : 循环播放当前媒体项
  • Sequential : 顺序播放播放列表中的媒体项。
  • Loop : 循环播放播放列表中的所有媒体项,
  • Random : 随机播放播放列表中的媒体项。

常用信号

  • void currentIndexChanged(int position):当当前播放的媒体索引改变时发出该信号。

  • void playbackModeChanged(QMediaPlaylist::PlaybackMode mode):当播放模式改变时发出该信号。

  • void mediaInserted(int start,int end):当媒体内容插入到播放列表时发出该信号。

  • void mediaRemoved(int start,int end):当媒体内容从播放列表移除时发出该信号。

  • void mediaChanged(int start,int end):当播放列表中的媒体内容改变时发出该信号。

    playlist = new QMediaPlaylist;
    playlist->addMedia(QUrl("http://example.com/movie1.mp4"));
    playlist->addMedia(QUrl("http://example.com/movie2.mp4"));
    playlist->addMedia(QUrl("http://example.com/movie3.mp4"));
    playlist->setCurrentIndex(1);

    player = new QMediaPlayer;
    player->setPlaylist(playlist);

    videoWidget = new QVideoWidget;
    player->setVideoOutput(videoWidget);
    videoWidget->show();

    player->play();

觉得有帮助的话,打赏一下呗。。

相关推荐
小鱼仙官13 小时前
使用Qt封装C/C++ 动态库 用于第三方调用
c语言·c++·qt
扶尔魔ocy15 小时前
【QT OpenGL】知识点编目及传送门
qt·opengl·osg
qq_4017004116 小时前
Qt Modbus 源码剖析:从 QModbusClient 到工业级通信框架
开发语言·qt·系统架构
GreenHandBruce16 小时前
基于Qt 6.12.0 + FFmpeg 9.0.2的4k视频播放器
qt·ffmpeg·音视频
誰能久伴不乏19 小时前
桌面客户端的运行日志系统:SQLite 分块 + 独立写线程 + 文本降级
数据库·c++·qt·架构·sqlite
沫璃染墨1 天前
《Qt从零入门系列(十五):Qt线程安全与锁机制详解——从QMutex到RAII与读写锁实战》
开发语言·c++·qt·安全·交互·线程·qt6.3
小豆庄2 天前
视频脱敏引擎的追踪难题:转场误判定、ID撞号和淡入窗口
qt·算法·目标检测·音视频·视频·敏捷流程
小灰灰搞电子2 天前
Qt 中使用 QSettings 存储结构体数据详解
开发语言·qt
LaoWaiHang2 天前
关于Qt中鼠标左键事件被子控件截留的处理
qt
初阳7853 天前
【基于Qt5仿音乐播放器(一)】——项目准备
qt·1024程序员节