如何在Qt 5.1 API中获取歌曲的长度?我想我可以使用Length
元数据读取它,但我不确定此元数据是否适用于所有音频文件。
您似乎正在寻找duration
属性。
这将是 QML 解决方案:
持续时间 : 国际
此属性以毫秒为单位保存媒体的持续时间。
如果媒体没有固定持续时间(例如实时流),则此持续时间将为 0。
这将是C++解决方案:
qint64 QAudioBuffer::d uration() const
返回此缓冲区中音频的持续时间(以微秒为单位)。
这取决于/l format() 和 frameCount()。
实现此目的的另一种方法是使用 QMediaPlayer
.一个例子是:
QMediaPlayer *player = new QMediaPlayer;
player->setMedia(QUrl::fromLocalFile("C:/Users/Music/mySong.mp4"));
qDebug()<<"Song duration: "<<player->duration();
我希望这能有所帮助。