问题描述
#include <QApplication>
#include <QtMultimediawidgets/QVideoWidget>
#include <QtMultimedia/QMediaPlayer>
#include <QHBoxLayout>
const QString sPlaylistURL="https://somewhere.com/live-ipcam/blahblahblah/playlist.m3u8";
int main(int argc,char *argv[]) {
QApplication a(argc,argv);
QWidget wgtMain;
QHBoxLayout layMain;
QMediaPlayer mpPlayer;
QVideoWidget vwWidget;
wgtMain.resize(640,480);
layMain.addWidget(&vwWidget);
wgtMain.setLayout(&layMain);
mpPlayer.setVideoOutput(&vwWidget);
mpPlayer.setMedia(QUrl(sPlaylistURL));
mpPlayer.play();
wgtMain.show();
return a.exec();
}
它没有问题,但是在该播放列表中,还有其他播放列表。每个人都是不同的品质。例如:
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-STREAM-INF:BANDWIDTH=488000,NAME="FPS:30.0",CODECS="avc1,mp4a",RESOLUTION=320x240
captures_b448000_fM7Ser2Plnn65Xd1.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1258000,RESOLUTION=640x480
captures_b1148000_fM7Ser2Plnn65Xd1.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=3396000,RESOLUTION=960x720
captures_b3096000_fM7Ser2Plnn65Xd1.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=5628000,RESOLUTION=1440x1080
captures_b5128000_fM7Ser2Plnn65Xd1.m3u8
因此,如果我想查看640x480流,应该改用
const QString sPlaylistURL="https://somewhere.com/live-ipcam/blahblahblah/captures_b1148000_fM7Ser2Plnn65Xd1.m3u8";
是否可以从原始播放列表中选择给定的播放列表,而不必自己下载和解析播放列表?
当前,播放器会自动选择质量最高的视频流,但我想让用户自行决定。
感谢您的想法!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)