预览图

源码下载

地址:https://github.com/bajdcc/dev/tree/master/ttpod

文件夹说明:

  • App_Code,WCF服务
  • Script,离线下载的celery任务配置
  • dl,离线下载接口
  • ttpod,网站主体
  • Bin,组件类库

实现功能

  • 基于天天动听实现输入提示、查询功能
  • 列表显示每条曲目的信息,自带搜索和排序功能
  • 实现网页播放,支持大部分部分的视频与音频,并提供下载地址
  • 适配较新版本的IE、Firefox和Chrome浏览器
  • 支持广播,即可以远程使多个浏览器同时播放视频与音频
  • 支持离线,即可让服务器离线下载流媒体

技术细节

  • 跨域代理,采用WCF(由于浏览器的安全机制,跨越访问是禁止的)
  • 数据可视,采用jQuery DataTable,提供排序与搜索功能
  • 在线下载,采用jQuery Dialog
  • 离线下载,采用php+redis+celery+python,celery flower可用来监视下载情况
  • 在线播放,采用CKPlayer(for video)+PeckPlayer(for audio)
  • 在线广播,采用SignalR
  • 浏览器兼容,采用jQuery+modernizr

技术问题

  • WebSocket的支持问题,可能与IIS有关
  • 播放视频时开关灯功能尚未实现

网站配置

配置要求:.NET 4.0,IIS,WCF服务,Python 2.7(离线需要),php支持(离线需要)

  1. 在IIS中激活WCF服务
  2. 新建网站,将除了Script以外的文件夹放到网站根目录下
  3. 如要配置离线功能,请先配置PHP组件(在IIS的Web平台安装程序中找到php组件,点击安装即可);下载Redis(https://code.google.com/p/servicestack/downloads/list),或使用Redis For Python(pip install redis);下载celery(pip install celery),可选下载flower(pip install flower);最后运行Script/run-download.cmd
  4. 启动网站

基于天天动听API开发在线音乐查询网站的更多相关文章

  1. 天天动听API

    本次分析的是天天动听API,天天动听有一点比较好,就是搜索返回直接有歌曲播放的地址了,并且有无损的音频 搜索歌曲API:http://so.ard.iyyin.com/s/song_with_out? ...

  2. 播放器音乐源之天天动听API

    搜索歌曲API:http://so.ard.iyyin.com/s/song_with_out?q={0}&page={1}&size={2} {0}=需要搜索的歌曲或歌手 {1}=查 ...

  3. 基于ArcGIS JS API的在线专题地图实现

    0 引言     专题地图是突出而深入的表示一种或几种要素或现象,即按照地图主题的要求,集中表示与主题有关内容的地图.专题地图的专题要素多种多样,分类方法也多种多样,根据专题地图表现数据的特点可分为定 ...

  4. 基于微博LBS API开发的周边美图android app

    [app 不完善,就差api了] 几年之前看到过新浪微博开放API中有基于Place的API,授权后可以查看基于地理位置的一些数据,比如某个地点周边的微博动态.某个具体用户的位置动态等等.最近空余时间 ...

  5. python 开发在线音乐播放器-简易版

    在线音乐播放器,使用python的Tkinter库做了一个界面,感觉这个库使用起来还是挺方便的,音乐的数据来自网易云音乐的一个接口,通过urllib.urlopen模块打开网址,使用Json模块进行数 ...

  6. 基于 ArcGIS Silverlight API开发的WebGIS应用程序的部署

    部署流程概述 在微软的iis服务器上部署基于ArcGIS  Silverlight API的应用程序,主要包括以下几个步骤: 1)(可选)部署GIS服务 如果需要将GIS服务也部署在Web服务器上,则 ...

  7. Flex4/Flash开发在线音乐播放器 , 含演示地址

    要求 必备知识 本文要求基本了解 Adobe Flex编程知识和JAVA基础知识. 开发环境 MyEclipse10/Flash Builder4.6/Flash Player11及以上 演示地址 演 ...

  8. 基于百度翻译API开发属于自己的翻译工具

    你是否每天使用着网页翻译工具?你是否遇到过这种情况,上网过程中遇到一个很长的单词但是又不能复制,要开两个浏览器,一个打开百度翻译,照着另一个网页输入单词?你安装了各种翻译软件后,又删除,只因忍受不了那 ...

  9. android 基于百度地图api开发定位以及获取详细地址

    一:百度地图开发必须要到百度开发平台android开发api下载相应的库,已经申请百度地图开发key. 二:新建项目baidumaplocation.设计main.xml文件这里注意的是MapView ...

随机推荐

  1. zjuoj 3606 Lazy Salesgirl

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3606 Lazy Salesgirl Time Limit: 5 Secon ...

  2. Git 一些关于 Git、Github 的学习资源

    一些关于 Git.Github 的学习资源 昨天浏览 Github 的是时候发现了 Githug 这个游戏,这个游戏用来帮助菜鸟们学习使用 Git 的. Githug is designed to g ...

  3. 理解NDCG

    关于NDCG,wiki给点解释很详细,这里我谈谈我的理解. NDCG(Normalized discounted cumulative gain):是用来衡量排序质量的指标. 其中一种计算公式如下: ...

  4. Bug测试报告--在线考试系统--金州勇士

    项目名:在线考试系统 组名:金州勇士 测试者:宫丽君(nice!团队) 代码地址: ssh:git@git.coding.net:handsomeman/examm.git     https://g ...

  5. c3p0数据库连接池使用

  6. Hadoop实战5:MapReduce编程-WordCount统计单词个数-eclipse-java-windows环境

    Hadoop研发在java环境的拓展 一 背景 由于一直使用hadoop streaming形式编写mapreduce程序,所以目前的hadoop程序局限于python语言.下面为了拓展java语言研 ...

  7. php中rsa加密及解密和签名及验签

    加密的内容长度限制为密钥长度少位,如位的密钥最多加密的内容为个长度. 公钥加密 $public_content=file_get_contents(公钥路径); $public_key=openssl ...

  8. TCP/IP 协议介绍

    转自http://blog.jobbole.com/104886/ 一.TCP/IP 协议介绍 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容.TCP/IP协议是分层的,从底层至应 ...

  9. ASP值view State

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  10. fork &vfork --陈皓

    http://coolshell.cn/articles/7965.html http://coolshell.cn/articles/12103.html#more-12103 前两天有人问了个关于 ...