0

我是 RTMP 的绝对初学者。我的任务是创建一个 Java 应用程序,它可以从某个 RTMP URL 录制视频。

我安装了 RTMP 服务器(Red5 服务器)。我已经验证它可以正常工作并且可以正常播放。我有 red5.jar 为我提供了所有应该用于与 Red5 通信的 Java 类(据我所知)。

我对 Java 相当精通,但不知道如何处理该录制应用程序。因为除了 Red5 Javadoc 之外没有样本和文档。

因此,请通过提供任何示例或任何链接或指导来帮助我。我不能使用 Flash 或除 Java 之外的任何东西。

4

1 回答 1

3

将以下代码添加到 red5 应用程序中的 Application 类。它具有开始录制,将录制保存到磁盘和停止的代码。

/*
*Start the recording
*/
public void recordVideo() {
     IConnection conn = Red5.getConnectionLocal();
     //get the stream published by the id "publishId"
     ClientBroadcastStream stream = (ClientBroadcastStream) getBroadcastStream(conn.getScope(), "publishId");
     try {
        // Save the stream to disk.
        stream.saveAs("streamName", false);
    } catch (Exception e) {
        throw new RuntimeException(e.getMessage());
    }
}
/*
*Stop the recording
*/
public void stopRecording(){
     IConnection conn = Red5.getConnectionLocal();
     ClientBroadcastStream stream = (ClientBroadcastStream) getBroadcastStream(conn.getScope(), "publishId");
    // Stop recording.
    stream.stopRecording();
    stream.stop();
}

JUV RTMP是一个用于 RTMP 协议的 java 客户端。但它不提供任何用于音频/视频流的编解码器:

播放和发布音频/视频流(由服务器支持)(不包括!音频/视频编解码器实现!)

于 2013-05-16T21:28:50.737 回答