• 7373阅读
  • 3回复

[提问]为什么用QMediaPlayer::metaData()获取音频文件失败 [复制链接]

上一主题 下一主题
离线qq1043068972
 

只看楼主 倒序阅读 楼主  发表于: 2015-06-13

我是这么写的
QMediaPlayer *music = new QMediaPlayer;
connect(music,SIGNAL(metaDataChanged()),this,SLOT(getInfo()));
bool is=music->isMetaDataAvailable();
QVariant var= music->metaData(QMediaMetaData::AlbumTitle);
qDebug()<<is<<endl;
qDebug()<<var.toString()<<endl;

结果是is :false
var:""

看了网上说是因为版权的问题!是不是因为版权的问题不获取?is是flase!!怎么会这样,,试了很多音频文件都不行!
离线lmaxmax

只看该作者 1楼 发表于: 2015-06-13
关于音乐播放器,QT自带了很完整的例子,看看你就知道了
里面
connect(&mediaPlayer, &QMediaObject::metaDataAvailableChanged, this, &MusicPlayer::updateInfo);

另外,bool is=music->isMetaDataAvailable();这句应该在槽里。你跟在连接后面肯定是false啦。
离线qq1043068972

只看该作者 2楼 发表于: 2015-06-14
回 lmaxmax 的帖子
lmaxmax:关于音乐播放器,QT自带了很完整的例子,看看你就知道了
里面
connect(&mediaPlayer, &QMediaObject::metaDataAvailableChanged, this, &MusicPlayer::updateInfo);
另外,bool is=music->isMetaDataAvailable();这句应该在槽里。你跟在连接后面肯定是false啦。 (2015-06-13 22:00) 

我忘了写出来了,,那句就是写在了槽函数了啊!

只看该作者 3楼 发表于: 2018-08-20
楼主解决这个问题了吗? 另外,我也碰到一个问题,获取到media的
TrackCount 和 TrackNumber 后,怎么切换音轨呢?
没有找到接口
快速回复
限100 字节
 
上一个 下一个