java - 使用java代码读取rtmp直播视频数据

标签 java ffmpeg rtmp live-streaming

我的要求是如何从直播视频URL读取和创建mp4文件。

我为此主题做了很多研发,但未能得到任何答案。 以下链接对我来说也没有用。当我运行这个问题中给出的 ffmpeg 命令时,它给了我一个异常(exception)。

I want to use FFMPEG, not xuggle library

谢谢。

最佳答案

以下是集成 FFMPEG 库的 java 方法,可用于从 rtmp url 读取数据。

   public static void liveRtmpFeed() throws IOException, InterruptedException {
        ProcessBuilder processBuilder = new ProcessBuilder("ffmpeg", "-i",
                "rtmp://192.168.0.90/oflaDemo/livestream", "-ss", "00:00:00",
                "-t", "00:00:10", "-c", "copy", "/home/outputVideo.mp4");
        Process process = processBuilder.start();
        InputStream stderr = process.getErrorStream();
        InputStreamReader isr = new InputStreamReader(stderr);
        BufferedReader br = new BufferedReader(isr);
        while ((br.readLine()) != null)
            ;
        process.waitFor();

        try {
            process.destroy();
            isr.close();
            stderr.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

关于java - 使用java代码读取rtmp直播视频数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22909434/

相关文章:

FFMPEG API——流参数逐帧改变多少?

ffmpeg - crtmpserver 错误,appselector 可以是最终目的地

c++ - 想要 ffmpeg 编码示例吗?

ios - wowza如何直播多个音频输入?

javascript - nodejs 中的 RTMP 实现是可能的吗?

java - 如何在 Java Spring 应用程序中接受 GET/POST 请求之前预先评估条件?

java - 如何将对象作为参数传递到另一个类的构造函数中?

java - float 1.0E-12 F 如何转换为二进制代码?

java - 从数字列表中生成所有唯一对,n 选择 2

c - 添加 avfilter 后编译 FFMPEG/libav 代码时出错