我正在尝试使用此示例保存实时流。我正在 localhost 上进行测试,Red5 版本是 1.0。
streamPublishStart
方法接收流,用方法将其保存为flv saveAs
。但是我录制的flv文件只有1帧(不是第二帧,用GOM Player检查)。但是,如果我附加一个侦听器来流式传输并检查收到的包,我可以看到它们不断出现。
这就是我测试它的方式;
public void streamPublishStart(IBroadcastStream stream) {
try {
stream.addStreamListener(new IStreamListener() {
@Override
public void packetReceived(IBroadcastStream streamObj, IStreamPacket packet) {
System.out.println(packet.getTimestamp() + " - " + packet.getDataType());
}
});
stream.saveAs(stream.getPublishedName(), false);
} catch (Exception e) {
e.printStackTrace();
}
}
此代码打印时间戳,直到我停止记录。我试图从收到的包中保存这些字节并将它们与saveAs
创建的文件方法合并,没有任何反应。
可能是什么问题?有什么建议么?