OSMF考虑到媒体引入了新的类和新的概念
对于有ActionScript媒体播放器开发经验的人,OSMF引入了新的类和规则来编写媒体播放器的逻辑。取代直接参照Flash Player本身的媒体API,OSMF开发者会参照OSMF类来编写(内部调用Flash Player本身的媒体API)。例如OSMF开发并不需要直接实例NetStream对象。
OSMF引入一个新的通用的类和概念。在过渡到开发OSMF媒体播放器,开发者需要赶上以OSMF的方式思考媒体的速度。本节的其余部分提供了一个OSMF类和概念的例子,在OSMF的基础上抽象得出。若想要更深一步的了解OSMF开发媒体播放器的相关知识,可以看官方的产品介绍文档。
举一个关于用OSMF开发媒体播放器的新内容的例子,它用了一个叫做MediaElement的抽象基类,代表了在框架中的各种媒体类型。为了在OSMF中展现出丰富的媒体,常见的MediaElement子类也是被广泛应用的,有VideoElement、AudioElement、SWFElement以及ImageElement类。
OSMF也支持另一种复杂MediaElement的子类CompositeElement。CompositeElement继承的类是用于创建组件的主要类:SerialElement类和ParallelElement类。图1显示了例子代码的嵌套组合,一个顶层类ParallelElement (2)和一个嵌套类SerialElement (1)。
图1 例子代码的嵌套组合,一个顶层类ParallelElement (2)和一个嵌套类SerialElement (1)。
OSMF包含了布局好的API。例如,用ParallelElement组件时,多种可视化元素都会同时显示出来。OSMF的API用像RelativeLayoutFacet的类(它会像图1中ParallelElement说明的那样用)或者用像AbsoluteLayoutFacet 类(用于覆盖)。在这些情况下,OSMF的布局面类能够在ParallelElement组件中使其定位子元素(很多子元素在那也能同时可视化)。
OSMF在布局层上应用面类的概念。所有的面类继承基类Facet。广泛的说,面类包含了相关媒体独立元素的元数据。例子包括(但不限于)提示点的元数据,服务质量(QoS)元数据等等。相关事件模型包含了类MetadataEvent、FacetValueEvent以及 FacetValueChangeEvent。
OSMF也支持基于OSMF媒体播放器和嵌入式HTML页面间的交互。当与HTMLMediaContainer类结合时,它通过一个继承了HTMLElement的类MediaElement来在OSMF中使用(在运行时,双向交流的JavaScript通过OSMF被内部启用,使用ActionScript类ExternalInterface)。该功能的应用基于OSMF的媒体播放器来响应在运行时的JavaScript调用,它通过用户与包装的HTML交互,允许在OSMF的媒体播放器上的操作,以编排在预定于HTML页面元素的变化。一个基于OSMF媒体播放器控制HTML的例子可能包含在不断变化的HTML网页中(见图2)。
图2 丰富的媒体体验和广告
在抽象什么是MediaElement中,OSMF还介绍了特征类的概念。在OSMF抽象逻辑中,特征类定义了每个MediaElement的能力。通过OSMF类MediaElement的常量能够发现对OSMF中一些标准类的好结论。例如,这两个类VideoElement和AudioElement有LoadTrait,PlayTrait和SeekTrait的特点。但是,由于没有DisplayObject的实例AudioElement,AudioElement没有ViewTrait,而VideoElement有。
为了支持将媒体播放器的创建分析,OSMF还包括诸如BeaconElement MediaElement的子类。
三、播放器的例子
OSMF包括很多可运行OSMF的例子,这些例子能够通过基于OSMF例子播放器来执行(见图3)。播放器例子的源代码包含在OSMF子版本库中。一个播放器例子编译的版本是可在线运行。
图3 OSMF例子播放器
该示例加载了一些OSMF播放器的示范例子(包括说明错误条件,如加载失败的和无效媒体的网址错误)。 每个例子可以通过在左侧列表选择播放器来运行。每个例子都会在你选择一个播放器后显示在右上角。
OSMF的例子播放器能够很快的找出OSMF的更多应用能力。
四、何去何从
随着OSMF出现,Adobe正在改变我们的媒体和视频播放器。 通过创建一个强大的开放源码媒体播放器的开发框架,致力于Flash Player的开发者现在可以更快地创建比以往具有更多功能、更多服务的视频播放器,而且成本也非常合理。
如果你是一个媒体播放器开发人员,你的下一个步骤是从这里开始。下载OSMF来获得最近OSMF发布的更多信息- 源文件的压缩包和发布的PDF注释。为了建立你的开发环境,按照在发布注释中“开始说明文档”的介绍来做。这些说明提供了很多非常重要的细节,它在Adobe Flex Builder 3和Flash CS4中应用OSMF。
为了更进一步的理解OSMF介绍的新的类和内容,请看OSMF开发指导和ActionScript 3语言的参考,包括开源媒体框架的API。
关于个性化的支持,可以参考从事OSMF的团队。参与该团队既可以选择公共支持OSMF的论坛也可以选择OSMF用户组。
分享到:
相关推荐
开源媒体框架 (Open Source Media Framework, OSMF) 是一个基于 ActionScript 的框架,可在您创建自己的富媒体体验时提供充分的灵活性和控制能力。 OSMF本身是一个给开发者使用的ActionScript3代码库,他们用Adobe...
OSMF本身是一个给开发者使用的ActionScript3代码库,他们用Adobe Flash CS4 Professional和Adobe Flex Builder 3来创建媒体播放器(如同其他创建ActionScript应用的工具一样)。
开源媒体框架 (OSMF) 是一个开放的软件框架,用于构建基于 Adobe:registered: Flash:registered: 平台的强大、功能丰富的视频播放器和应用程序。
基于OSMF2.0开发的播放器 支持音量调节,静音,全屏,进度条等功能 适合初学者
osmf_dev_guide
基于osmf框架的flash播放器, 支持f4m的url.
apahce flex sdk 4.14.1中提取的,请存放于{你的SDK}\frameworks\libs 文件夹内
z_OSMF在主机自动化运维中的应用.pdf
Developer's guide, Plug-in developer's guide and ASDocs
视频直播系统 2018第五章 自定义播放器osmf详解
hls-p2p, 基于 Flash OSMF的混合 cdn& p2p hls hls-p2p基于 Flash OSMF的混合 cdn& p2p hls 。 目前它支持实时光源。 支持 Flash 协议,我们使用 p2p& cdn混合方式提供video&音频数据。注意:请花些时间阅读这个文
视频直播系统 2018第五章 自定义播放器导入osmf开发包
Open Source Media Framework (OSMF) is an ActionScript framework for building media players and media player plug-ins. OSMF is a collection of free, open-source components that simplify media player ...
NULL 博文链接:https://01jiangwei01.iteye.com/blog/1474596
该网站包含我们向OSMF董事会提交的每月报告,我们的政策和会议记录。 您可以在查看网站。贡献网站我们欢迎对我们的网站做出贡献! 您的建议将由团队审核,并在适当时合并。通过github.com 查看页面时,只需单击...
它为您提供了一个快速,干净的框架,以进行原型开发和游戏开发。这意味着大多数肮脏的工作(时间步,动画,输入和碰撞等等)都已经为您编码并可以使用了,您将有更多的时间和精力专注于游戏的设计和测试。 使用...
它是在没有像 OSMF 甚至 greensock 这样的外部库的情况下开发的,所以它非常简单。 我不建议按原样使用此播放器,因为它缺乏当前商业播放器所期望的特性和某些基本功能。 它缺少重要的元素(即:没有全屏,最小的...
StrobeMediaPlayback 基于OSMF框架的FLASH播放器,可以快速定制需要的播放框架。
像任何开源项目一样,每个子项目都有其自己的治理结构和发布过程,与主要框架准则保持一致。 Zowe子项目具有温育后,活性的3阶段的生命周期和名誉如所描述的。 积极的 Zowe API中介层 网关,充当z / OS服务的反向...
《flash+flex+air移动开发入门经典——适用于android、ios和blackberry》 第1章 flash、flex和air简介 1 1.1 adobe flash 1 1.2 actionscript 3.0 2 1.2.1 ecmascript 2 1.2.2 关键概念 3 1.3 flex框架 11 ...