QMediaPlayer获取音频文件信息的方法

时间:2022-12-15 19:45:16
最近在写一个类似于网易云音乐的播放器,但遇到一个很严重的问题,就是不能同时获得多个音频文件内的信息,每次只能通过metaDataAvailableChanged(bool)信号 得到一个音频文件的信息,使用setMedia()方法后使用play()和stop()方法都不能触发此信号,貌似新的媒体文件没被加载,无论用什么办法都不能触发此信号。请问有什么办法可以解决吗?只需要读取到音频文件内的信息(比如说title ContributingArtist)

3 个解决方案

#1


引用 楼主 qq_21692401 的回复:
最近在写一个类似于网易云音乐的播放器,但遇到一个很严重的问题,就是不能同时获得多个音频文件内的信息,每次只能通过metaDataAvailableChanged(bool)信号 得到一个音频文件的信息,使用setMedia()方法后使用play()和stop()方法都不能触发此信号,貌似新的媒体文件没被加载,无论用什么办法都不能触发此信号。请问有什么办法可以解决吗?只需要读取到音频文件内的信息(比如说title ContributingArtist)

获取不到,建议你看看其他库:mp3info、taglib

#2


不太建议你用QT自带的库,就像楼上说的,用用其他的库来做,功能还强大,接口还多

#3


楼主解决了吗,我也在写

#1


引用 楼主 qq_21692401 的回复:
最近在写一个类似于网易云音乐的播放器,但遇到一个很严重的问题,就是不能同时获得多个音频文件内的信息,每次只能通过metaDataAvailableChanged(bool)信号 得到一个音频文件的信息,使用setMedia()方法后使用play()和stop()方法都不能触发此信号,貌似新的媒体文件没被加载,无论用什么办法都不能触发此信号。请问有什么办法可以解决吗?只需要读取到音频文件内的信息(比如说title ContributingArtist)

获取不到,建议你看看其他库:mp3info、taglib

#2


不太建议你用QT自带的库,就像楼上说的,用用其他的库来做,功能还强大,接口还多

#3


楼主解决了吗,我也在写