2009-04-23 21 views
1

私はRed5からthelaDemoを調べていました。私はすべての加入者に一定のFLVファイルをストリーミングすることができるように、私はoflaDemoを変更する可能性がどのように思っていた ...Red5 stream flvファイル

/** {@inheritDoc} */ 
    @Override 
    public boolean appConnect(IConnection conn, Object[] params) { 
     // Trigger calling of "onBWDone", required for some FLV players 
     measureBandwidth(conn); 
     if (conn instanceof IStreamCapableConnection) { 
      IStreamCapableConnection streamConn = (IStreamCapableConnection) conn; 
      SimpleConnectionBWConfig bwConfig = new SimpleConnectionBWConfig(); 
      bwConfig.getChannelBandwidth()[IBandwidthConfigure.OVERALL_CHANNEL] = 
       1024 * 1024; 
      bwConfig.getChannelInitialBurst()[IBandwidthConfigure.OVERALL_CHANNEL] = 
       128 * 1024; 
      streamConn.setBandwidthConfigure(bwConfig); 
     } 

      serverStream = StreamUtils.createServerStream(appScope, "live0"); 
      SimplePlayItem item = new SimplePlayItem(); 
      item.setStart(0); 
      item.setLength(10000); 
      item.setName("IronMan"); 
      serverStream.addItem(item); 
      item = new SimplePlayItem(); 
      item.setStart(20000); 
      item.setLength(10000); 
      item.setName("DarkKnight"); 
      serverStream.addItem(item); 
      serverStream.start(); 
      serverStream.setRepeat(true); 

     return super.appConnect(conn, params); 
    } 

上記のコードの結果は、すべての加入者のためだけの空白の画面です...

あなたは誰ですか?

ありがとうございます!

答えて

0

これはクライアント側で簡単に実行でき、ストリーム名をハードコードしたくない場合は、その名前をフラッシュのvarとして渡すことができます。

0

私は同じ問題を抱えています。 私はこれがRED5バグであると思う:私はあなたがすべての罰金

UPDを作品falseに繰り返し設定されている場合

serverStream.setRepeat(true); 

ために何行の

空白の画面があることがわかりました。私は大胆に1つのFLVを繰り返すためにハックを作った。私はカスタムプレイリストコントローラを追加しました:

public class MyPlayListController implements IPlaylistController { 
    @Override 
    public int nextItem(IPlaylist playlist, int itemIndex) { 
     return 0; 
    } 

    @Override 
    public int previousItem(IPlaylist playlist, int itemIndex) { 
     return 0; 
    } 
} 
関連する問題