在页面中控制媒体流的起播点和播放长度

原创 2005年05月25日 03:12:00

    近来在一个web项目中,客户提出需要在试听的音频文件中,输入开始时间和结束时间,然后从开始时间播放,到结束时间停止。在google中搜索了几次,都找不到相关的文档,只有自己进行研究了。

    刚开始的时候,将主要精力放在了Media Player控件的属性上,找到了以下几个相关的属性:

       CurrentPosition 返回或设置剪辑的当前位置(双精度型)

       Duration 返回或设置剪辑剪辑的播放时间(双精度型)

       SelectionEnd 返回或设置流的结束位置(双精度型)

SelectionStart 返回或设置流的起始位置(双精度型)

经过测试,通过控制CurrentPosition属性,可以实现需要的功能。而其他三个属性基本上不起任何作用。但是,当页面放到远程服务器的时候,发现该功能不起作用了。原来在缓冲还没到达开始播出时间的时候,是跳转不了。

后来只能埋头于研究Windows Media Player 9 Series SDK,发现在Windows Media Metafile Elements ReferenceSTARTTIMEDURATION两个Element正是我所需要的。而要使用这两个Element需要在asx文件中。

asx文件格式如下:

<ASX VERSION="3.0">

    <TITLE>Your title here</TITLE>

    <ENTRY>

        <REF HREF ="音频文件访问路径" />

        <STARTTIME VALUE="0:30.0" />

        <DURATION VALUE="00:50" />

    </ENTRY>

</ASX>

经过多次测试,方案可行。现在的问题就简单了。就是让用户提交开始时间和结束时间后生成asx文件,然后将文件送到media player就行了。

以下是我做的访问界面:

不过在测试过程中,发现文件传送过去了,但media player播放不了,奇怪了。测试发现直接用本地的media player播放是没有问题的,那么问题肯定是出在页面中media player的属性上。我将media player的参数减少到只剩下filename一个属性,发现居然行了。然后再将autostart属性设置为false,发现不能工作了。最后只好将autostart属性设置为true

最终播放器的德属性设置如下:

<param name="AutoStart" value="true">

<param name="Filename" value="">

<param name="ShowPositionControls" value="true">

<param name="ShowStatusBar" value="true">

版权声明:本文为博主原创文章,未经博主允许不得转载。

如何在Web页面嵌入流媒体文件

   Web页面可能需要播放视频文件,通过添加Object 利用微软的流媒体播放器则可以实现此功能。介绍 Media Player两种版本播放器的嵌入代码,有相关说明(默认0为否,-1或1为是)本代码...
  • yap111
  • yap111
  • 2007年06月09日 14:04
  • 2815

流媒体文件和Web页面的结合

做影视网站时候遇到一个小问题,因为要根据不同格式调用不同播放器,搜索了很多找到这篇文章比较全面,最近看到不少朋友想再自己的网页中插入播放器,其实并不难,此文愿与大家分享之。您的查询字词都已标明如下:网...

苹果平台上的媒体流播放技术HLS

近日在和朋友聊起媒体流的服务器端实时转码技术的时候,发现苹果的各种终端上的视频播放并未使用常见的基于UDP的RTSP/RTP,而强制使用了Http Live Stream技术,这里稍稍总结了如下。 ...

IMS基本概念之 控制承载通道媒体流的机制(SBLP)

3.9 控制承载通道媒体流的机制 控制层面和用户层面的分离可能是IMS设计中最重要的问题之一。这两层的完全独立是不可能的,这是因为如果没有控制层面和用户层面的交互,运营商就不能控制服务质量(Qo...

windows下live555+rtsp+ffmpeg媒体源,nginx+rtmp转发服务器,vlc播放rtmp媒体流

1.下载live555+ffmpeg并配置文件作为媒体源 将视频文件me-like-yuh.ts和ffmpeg推流脚本ffmpeg-rtsp2rtmp.bat放在mediaserver目录下 ff...

达尔文媒体流服务器

  • 2013年01月08日 23:03
  • 3.53MB
  • 下载

AwesomePlayer 中 媒体流buffer 中的传递

AwesomePlayer 中 媒体流buffer 中的传递OMXCodec::read在前面分析Stagefright 的播放调用流程中play 会启动一个TimedEventQueue 的线程循...

技术说明 TN2224 为 iPhone 和 iPad 创建和部署 HTTP Live 媒体流的最佳实践

技术说明 TN2224 为 iPhone 和 iPad 创建和部署 HTTP Live 媒体流的最佳实践 本技术说明讨论了为 iPhone ...
  • stardtx
  • stardtx
  • 2012年04月09日 10:15
  • 1458

全天候提供引用媒体流直播

RichardLi  

基于JMF RTP的网络传输媒体流

JMF中可以实现RTP媒体流的回放(playback)和传输(transmission),主要由javax.media.rtp, javax.media.rtp.event,和javax.medi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在页面中控制媒体流的起播点和播放长度
举报原因:
原因补充:

(最多只允许输入30个字)