代码驿站移动版
频道导航
HTML/Xhtml
CSS
JavaScript
HTML5
PHP教程
ASP.NET
正则表达式
AJAX
ThinkPHP
Yii
MySQL
MariaDB
Oracle
MongoDB
Redis
DedeCMS
PHPCMS
帝国CMS
WordPress
Discuz
其它CMS
Zend Studio
Sublime
Notepad
Dreamweaver
Windows
Linux
Nginx
Apache
IIS
CentOS
Ubuntu
Debian
网站优化
工具资源
PHP源码
ASP.NET源码
其它源码
图标素材
按钮素材
字体素材
DedeCMS模板
帝国CMS模板
PHPCMS模板
WordPress模板
Discuz!模板
单页模板
开发软件下载
服务器软件下载
广告投放
联系我们
版权申明
软件编程
网页前端
移动开发
数据库
服务器
脚本语言
PHP代码
JAVA代码
Python代码
Android代码
当前位置:
主页
> >
多首歌曲连续播放之asx播放列表文件
时间:2021-03-11 10:08:56 | 栏目: | 点击:次
经常看到一些音乐站点有这样的一个功能:任意选择页面中歌曲名称前的复选框,单击播放按钮即可实现这多个被选择歌曲的连续播放。
如果是单个音频文件在文档中播放,使用常用的方法即如这里介绍的第三种方法的类似方法。
但现在是多首歌曲,方法则不尽然~曾记得使用Winamp播放器时保存的列表文件m3u,现行的MediaPlayer播放器使用的wpl列表文件格式,当然,这里我要使用的是asx播放列表文件
ASX文件是一个文本文件,他主要的目的是对流信息进行重定向,类似RPM(RM的中转文件)文件。
利用ASX文件来重定向流信息的原因主要是:目前通用的浏览器通常均不能直接支持用于播放流信息的协议MMS,所以我们采用ASX文件。
在ASX中包含了媒体内容对应的URL,当我们在HTML中让一个HYPERLINK与ASX联系时,浏览器会直接将ASX的内容送给MEDIA PLAYER,MEDIA PLAYER 会根据ASX文件的信息用相应的协议去打开指定位置上的多媒体信息流或多媒体文件。
采用ASX文件以后,当浏览器发现一个连接与ASX有关时,它知道需要用MEDIA PLAYER 来播放流信息,于是它就会启动MEIDA PLAYER,MEDIA PLAYER就可以用MMS协议来播放流信息了。
一个标准的ASX文件格式如下:
<ASX Version = "3.0">
<Entry> <Ref href = "http://server/song1.asf" /> </Entry>
<Entry> <Ref href = "http://server/song2.asf" /> </Entry>
<Entry> <Ref href = "http://server/song3.asf" /> </Entry>
</ASX>
注意ASX文件本身并非媒体文件本身,而是媒体文件的列表,媒体文件的地址通过 Entry节点的子节点Ref 的href属性来表示。
当然,还可以通过Entry节点内定义更多子节点来丰富当前媒体文件的信息,比如:
<ASX Version = "3.0">
<Entry>
<Ref href = "http://www.kmtv.com.cn/edit/uploadfile/200583195159842.MP3" />
<Title>Lonely (www.164.cc)</Title>
<Author>[Nana](www.164.cc)</Author>
<Copyright>属于该歌唱片公司或歌手等权利人</Copyright>
</Entry>
<Entry>
<Ref href = "http://www.syzone.cn/mov/mymp3/yeyeye.mp3" />
<Title>yeyeye (www.164.cc)</Title>
<Author>[DJ](www.164.cc)</Author>
<Copyright>属于该歌唱片公司或歌手权利人</Copyright>
</Entry>
</ASX>
其中<title></title>表示该媒体文件的标题,<Author></Author>表示该媒体文件作者(即演唱该歌曲的艺术家),<Copyright></Copyright>表示该媒体文件的版权声明。
其他更详细内容参看: http://support.microsoft.com/kb/247355/zh-cn
有了对ASX文件格式的认识,就可以自己来制作媒体播放列表文件,满足多首歌曲连续播放的要求。
那么如何将ASX文件插入到页面中进行播放呢?通常的方法就是把asx文件当作普通的媒体文件插入到页面中即可(如本文开始说提到的常用方法)
不过对于动态的歌曲播放而言,每次选择歌曲的不同则需要不同的列表文件,这很显然是不适合的,所以必须动态生成ASX的内容。
因为ASX的文件格式是固定的,所以可根据用户所选择歌曲的不同,查询相关媒体文件路径后,循环写出ASX的文件内容即可。So,在保持ASX文件格式不变的情况下,将asx文件后缀名可修改为.asp进行引用
比如: http://www.164.cc/2006/testmusic/tt.asp
其中连接的媒体播放列表文件是: http://www.164.cc/2006/testmusic/tm.asp
虽然媒体列表文件是asp类型,但其内容是asx的格式,这并不影响歌曲的播放。
另外,<% Response.ContentType="video/x-ms-asf" %>是ASP声明当前文件为asx文件的方法,但在tm.asp文件首行应用时,用户打开该文件链接,将自动使用本地MediaPlayer调用播放。
测试:http://www.164.cc/2006/testmusic/tm1.asp
OK,有关静态的内容先说到这,下一步就是通过数据库抽取,动态生成媒体列表文件tm.asp的内容,待续。
您可能感兴趣的文章:
Powershell小技巧之通过EventLog查看近期电脑开机和关机时间
IDEA配置GIT的详细教程
提高页面加载速度的几个方法小结
易语言设置组合框项目数值的方法
VMware Workstation虚拟机安装操作方法
相关文章
05-15
易语言打开文件件网页的方法
05-15
X86汇编调试环境搭建的过程
05-15
使用navicat导入sql文件的方法步骤
05-15
Discuz!论坛install.php书写错误漏洞
05-15
路由器安全有关的目录
JQuery
VUE
AngularJS
MSSql
MySQL
MongoDB
Redis
Linux
Tomcat
Nginx
网站首页
广告投放
联系我们
版权申明
联系站长