FFMPEG RTMP在Ubuntu 14.0.4上的red5pro模块中不起作用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FFMPEG RTMP在Ubuntu 14.0.4上的red5pro模块中不起作用相关的知识,希望对你有一定的参考价值。
以下命令在我的java模块中不起作用(这需要从实时流中捕捉并保存)Runtime.getRuntime()。exec(“ffmpeg -i ”rtmp://127.0.0.1:1935 / live / mytest live = 1 timeout = 2 “ - f image2 -vframes 1 /snaps/testo.jpg”);
如果我在Ubuntu 14.0.4控制台上使用相同的命令,它的工作原理。相同的命令在我的red5pro模块上工作,而不是在Ubuntu上工作。
当我使用String [] execStr = {“/ usr / local / bin / fumpeg”,“ - i”,“tompmp://127.0.0.1:1935 / live / mytest”,“live = 1”,“timeout = 2" , “ - F”, “图像2”, “ - vframes”, “1”, “/卡扣/ tt.jpg”}; ProcessBuilder pb = new ProcessBuilder(“ffmpeg -i rtmp:// localhost / live / mytest live = 1 timeout = 2 -f image2 -vframes 1 /snaps/testo.jpg”);
它始终抛出未找到的流(在red5pro控制台中)
我不懂Java(除了一点,我对FFmpeg很有经验),但我认为你应该写这样的代码:
String[] execStr = {"/usr/local/bin/ffmpeg", "-i", "rtmp://127.0.0.1:1935/live/mytest", "live=1", "timeout=2", "-f", "image2", "-vframes", "1", "/snaps/tt.jpg"};
ProcessBuilder pb = new ProcessBuilder(execStr);
或者像这样:
String[] execStr = {"/usr/local/bin/ffmpeg", "-i", ""rtmp://127.0.0.1:1935/live/mytest live=1 timeout=2"", "-f", "image2", "-vframes", "1", "/snaps/tt.jpg"};
ProcessBuilder pb = new ProcessBuilder(execStr);
我从这里检查:https://docs.oracle.com/javase/7/docs/api/java/lang/ProcessBuilder.html
以上是关于FFMPEG RTMP在Ubuntu 14.0.4上的red5pro模块中不起作用的主要内容,如果未能解决你的问题,请参考以下文章