Qt使用三句代码播放网络歌曲

如果给定了歌曲下载链接,只需要下面几句代码就可以播放网络歌曲了
QMediaPlayer *mediaPlayer = new QMediaPlayer(this);
QString songLink = "http:\/\/yinyueshiting.baidu.com\/data2\/music\/123800184\/161583746800128.mp3?xcode=bd374ebf3867010c43e6e1d8249fc792";
mediaPlayer->setMedia(QUrl(songLink));
mediaPlayer->play();
下载歌曲也是根据这个songLink 。
至于如何获取这个songLink可参照下面的方法
获取http://music.baidu.com/的歌曲
1、获取频道列表(一个频道的两个关键元素为频道id和频道名称)
const QString channelUrl = "http://fm.baidu.com/dev/api/?tn=channellist";
http://fm.baidu.com/dev/api/?tn=channellist
struct CHANNEL_INFO
{
    QString channelId;
    QString channelName;
};
2、根据频道id,获取某个频道下的歌曲列表(比如推荐频道public_tuijian_spring)
const QString playListUrl = "http://fm.baidu.com/dev/api/?tn=playlist&format=json&id=";
http://fm.baidu.com/dev/api/?tn=playlist&format=json&id=public_tuijian_spring
QList <QString> m_songIdList;//保存songID
3、根据songID(比如1615837),获取当前歌曲信息
const QString downLoadLinkUrl = "http://music.baidu.com/data/music/fmlink?type=mp3&rate=320&songIds=";
http://music.baidu.com/data/music/fmlink?type=mp3&rate=320&songIds=1615837
struct SONG_INFO
{
    QString songRealLink;//歌曲下载链接
    QString songName;    //歌名
    QString artistName;  //作者名
    QString songPicSmall;//歌手图片
    QString songPicRadio;//也是图片
    QString time;
    QString albumName;//专辑名
    QString lyricLink;//歌词下载地址
    QString size;
};
4、获取歌词
根据lyricLink就可以获取歌词了
http:\/\/musicdata.baidu.com\/data2\/lrc\/240377291\/240377291.lrc
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值