Wowza Stream Engine 4 可以识别和读取以下媒体和文件类型:
· FLV (Flash Video - .flv)
· MP3 文件 (.mp3)
· MP4 (QuickTime container - .mp4, .f4v, .mov, .m4v, .mp4a, .3gp, .3g2等等)
· SMIL (Synchronized Multimedia Integration Language - .smil)
· AMLST (API-based MediaList)
Media type用于在VOD业务中为StreamName增加一个前缀。例如要播放一个文件名为mycoolvideo.mov的MP4文件,你需要采用mp4:mycoolvideo.mov作为StreamName,在这里mp4:就是media type前缀。如果你没有指定任何前缀,系统会默认采用flv:作为前缀。下面的表格列出了Wowza Media Server支持的media type 前缀:
Media type prefix
描述
flv:
Flash 视频 (默认的media type前缀)
id3:
MP3 文件 (但只向播放器返回ID3标签信息),id3是mp3文件中的描述信息,包括曲名、专辑、音轨编号、类型、声波图等
mp3:
MP3 文件
mp4:
QuickTime container
smil:
同步多媒体集成语言(Synchronized Multimedia Integration Language) (用于码率自适应流传输)
ngrp:
Named Group (用于码率自适应流传输)
amlst:
API-based MediaList (用于码率自适应流传输)
注意:StreamName前缀都是小写,不要写错了!
同步多媒体集成语言Synchronized Multimedia Integration Language (.smil) 文件提供了一个方法将相同VOD内容但有多个不同码率的多个文件组织为一个文件组,用于实现码率自适应时的文件切换。为了实现正确的流切换,多个不同码率的多个文件的关键帧(key frames)必须要对齐。这个smil:作为media type前缀就是用于让播放器播放在这个.smil文件中的定义的不同码率的媒体文件。
Wowza Transcoder AddOn 使用一个模版将一组直播流组织到一个逻辑组里(Wowza称之为Stream Name Groups) ,以实现直播流的码率自适应传输。Stream Name Groups 和SMIL 文件的目的是一样的,两个方法都可以被用于直播流播放。Stream Name Groups 是在转码的模版文件里定义的,在播放时,只要加上ngrp:的media type前缀即可。
Wowza Stream Engine 4有一个API可以用于拦截播放请求并实现码率自适应,它可以通过调用API为客户端提供一组流信息。要使用这个功能,你必须使用stream name 前缀amlst:并使用一组Java对象来描述多个码率的流信息(即API-based MediaList)。当Wowza Media Server reads读取一个SMIL文件时,它实际上也是用这个SMIL中的信息创建了一个MediaList对象,并将这个对象提供给了底层负责流媒体传输的对象。现在相当与你可以自己用Java API去动态地创建了一个MediaList对象(至于是否用smil文件来描述多个码率的流取决与你)
Wowza Streaming Engine 4是目前业界功能强大、API接口丰富的流媒体Server产品,采用它作为流媒体服务器产品的案例很多,直播、在线教育、IPTV都有它的用武之地。