多协议、性能稳定、丰富API的流媒体服务器软件
针对VOD业务,Wowza支持哪些文件类型和MediaType?

Wowza Stream Engine 4 可以识别和读取以下媒体和文件类型:

  • FLV (.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: flv视频 (默认的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 使用一个模版将一组直播流组织到一个逻辑组里(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文件来描述多个码率的流取决与你)