2017-06-20 22 views
0

Java APIを使用して動的再生リスト(AMLST)を生成するときに、代替(バックアップ)ストリームをWowzaのHLSマニフェストに追加することは可能ですか?Wowzaの冗長HLSストリーム

私は異なるビットレートを動的に追加するようなコードを持っていますが、私は1つのバックアップストリームを追加したいと思います。 (私は2番目のMediaListSegmentを追加しようとしましたが、動作しないようです)。

package com.wowza.wms.plugin.test.module; 

import com.wowza.wms.medialist.*; 
import com.wowza.wms.module.*; 
import com.wowza.wms.stream.*; 
import com.wowza.wms.application.*; 

public class ModuleAMLSTTestLive extends ModuleBase 
{ 
class MyMediaListProvider implements IMediaListProvider 
{ 
    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(streamName+"_400"); 
     rendition1.setBitrateAudio(128000); 
     rendition1.setBitrateVideo(400000); 
     rendition1.setWidth(320); 
     rendition1.setHeight(240); 
     rendition1.setAudioCodecId("mp4a.40.2"); 
     rendition1.setVideoCodecId("avc1.66.12"); 

     MediaListRendition rendition2 = new MediaListRendition(); 
     segment.addRendition(rendition2); 

     rendition2.setName(streamName+"_800"); 
     rendition2.setBitrateAudio(128000); 
     rendition2.setBitrateVideo(800000); 
     rendition2.setWidth(640); 
     rendition2.setHeight(480); 
     rendition2.setAudioCodecId("mp4a.40.2"); 
     rendition2.setVideoCodecId("avc1.77.31"); 

     return mediaList; 
    } 
} 

public void onAppStart(IApplicationInstance appInstance) 
{ 
    appInstance.setMediaListProvider(new MyMediaListProvider()); 
} 

}

答えて

0

これはAPIでサポートされていないが、私は最終的に溶液が見つかりました:

をそれの絶対パスでストリームをspecifingによりメインとバックアップストリームを定義することが可能ですURIまたはDOMAINのcupertinoタグ内のストリーム。

サンプルSMIL:

<body> 
    <switch> 
     <video src="mp4:foo.mp4" system-bitrate="300000"> 
    <param name="videoCodecId" value="avc1.66.30" valuetype="data"/> 
    <param name="audioCodecId" value="mp4a.40.2" valuetype="data"/> 
    <param name="cupertinoTag.URI" value="http://serverwowza1.foo.com:1935/vod/mp4:foo.mp4/chunklist.m3u8" valuetype="data"/> 
     </video> 
     <video src="mp4:foo.mp4" system-bitrate="300000" > 
    <param name="videoCodecId" value="avc1.66.30" valuetype="data"/> 
    <param name="audioCodecId" value="mp4a.40.2" valuetype="data"/> 
    <param name="cupertinoTag.URI" value="http://serverwowza2.foo.com:1935/vod/mp4:sample.mp4/chunklist.m3u8" valuetype="data"/> 
     </video> 
...