-
Query parameters:
所有的HTTP streaming 协议现在都支持 wowzaplaystart 和 wowzaplayduration 参数。这两个时间参数的单位为毫秒。举例说明,如果要从30秒的位置开始播放sample.mp4,并播放40秒,然后自动结束。
你可以用下面的URL:
iOS:
http://[wowza-ip-address]:1935/vod/mp4:sample.mp4/playlist.m3u8?wowzaplaystart=30000&wowzaplayduration=40000
-
Server-side API:
你可以通过IHTTPStreamerSession session API 以毫秒为单位设置playStart和playDuration的值.
例如,在你的自定义模块中,你可以按下面的方式写一段Java程序:
public void onHTTPSessionCreate(IHTTPStreamerSession httpSession) { httpSession.setPlayStart(30000); httpSession.setPlayDuration(40000); }
-
SMIL file:
在一个SMIL文件中,使用begin 和dur 属性。这些属性以秒为单位:
<smil> <head> </head> <body> <switch> <video begin="30.0" dur="40.0" src="mp4:sample.mp4" system-bitrate="450000"/> </switch> </body> </smil>
-
MediaList API:
使用MediaList API. 以毫秒为单位设置参数:
Public class ModuleAMLSTTest extends ModuleBase implements IMediaListProvider { public void onAppStart(IApplicationInstance appInstance) { appInstance.setMediaListProvider(this); } public MediaList resolveMediaList(IMediaListReader mediaListReader, IMediaStream stream, String streamName) { MediaList mediaList = new MediaList(); MediaListSegment segment = new MediaListSegment(); mediaList.addSegment(segment); MediaListRendition rendition1 = new MediaListRendition(); segment.addRendition(rendition1); rendition1.setName("mp4:sample.mp4"); rendition1.setBitrateAudio(128000); rendition1.setBitrateVideo(400000); rendition1.setWidth(320); rendition1.setHeight(240); rendition1.setPlayStart(30000); rendition1.setPlayDuration(40000); return mediaList; } }
播放VOD时,可否从特定的时间位置开始播放,并限定播放时长?
如果你使用Http Live Streaming,你可以利用这个功能播放一个VOD文件的一个片段;
下面有几个方法让你可以设置一个开始时间位置和播放时长。