Qt使用三句代码播放网络歌曲
2017-02-07 14:37
393 查看
如果给定了歌曲下载链接,只需要下面几句代码就可以播放网络歌曲了
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
相关文章推荐
- 使用Qt示例代码实现的视频播放。VS项目
- 使用Qt将一系列图片通过网络发送到客户端动态显示的参考代码(修改一下可以用作远程网络监控)。
- 使用Qt将一系列图片通过网络发送到客户端动态显示的参考代码(修改一下可以用作远程网络监控)
- 使用AVPlayer播放网络歌曲
- QT在代码中正常使用中文
- Qt4另类使用教程(一)---使用openAL 帮助Qt4 播放音效
- 使用Visual Studio(VS)开发Qt程序代码提示功能的实现
- ajax拖动层,保存层位置,这段代码是从网络人扒拉下来的(非XAJAX),使用类库prototype.js,感觉效果非常好
- 使用wmp控件连续播放多个声音文件的代码(计算机报时程序C#)
- 使用Visual Studio(VS)开发Qt程序代码提示功能的实现(转)
- 使用 UIwebView 播放 gif 文件的代码例子
- Linux网络管理之六:vsftpd-2.0.5源代码安装和PAM使用 推荐
- 实时录音与播放的内存实现 Qt代码
- 视频播放网站CDN内容分发网络简单代码实现
- QT在代码中正常使用中文
- 使用Visual Studio(VS)开发Qt程序代码提示功能的实现
- ajax拖动层,保存层位置,这段代码是从网络人扒拉下来的(非XAJAX),使用类库prototype.js,感觉效果非常好
- 播放多首歌曲代码
- ajax拖动层,保存层位置,这段代码是从网络人扒拉下来的(非XAJAX),使用类库prototype.js,感觉效果非常好
- QT 操作 sqlite数据库(一)-----网络常规代码