Mein Ziel ist es, Video-Stream von Capture-Karte (Blackmagic Decklink) zu OpenCV und Live-Stream zu red5 oder einem anderen rtmp-Server zu bekommen.OpenCV und Gstreamer Streaming Live-Video
Also habe ich versucht, mit zwei Zweig bei gstreamer mit Befehl ist unten ist funktioniert ordnungsgemäß. Aber wenn Sie mit OpenCV arbeiten, streamen Sie nur schwarze Frames an den rtmp-Server, opencv funktioniert übrigens gut.
GStreamer Befehl:
gst-Start-1.0 -v autovideosrc! tee name = t t. ! Videokonvertieren! Videoskalierung! Warteschlange ! x264enc pass = pass1 threads = 4 bitrate = 5000 tune = ZeroLatenz! Warteschlange ! flvmux streamable = wahr! rtmpsink Ort = "rtmp: //127.0.0.1/live/stb leben = 1" max-Verspätung = 100 t. ! Video/x-Roh, Breite = 1280, Höhe = 720! appsink
OpenCV Code:
String gstSentence = "gst-launch-1.0 -v autovideosrc ! tee name=t " +
"t. ! videoconvert ! videoscale ! queue ! x264enc pass=pass1 threads=4 bitrate=5000 tune=zerolatency " +
"! queue ! flvmux streamable=true ! rtmpsink location=\"rtmp://127.0.0.1/live/stb live=1\" max-lateness=100 " +
"t. ! video/x-raw,width=1280,height=720 ! appsink";
System.out.println(gstSentence);
videoCapture = new VideoCapture(gstSentence);
Meine Umgebung:
- Ubuntu 16.04
- OpenCV 3.1 - Java Wrapper
- GStreamer 1.8.1
Wie kann ich damit umgehen?
Vielen Dank im Voraus.
OpenCV funktioniert gut, aber RTMP Strom ist noch schwarz. Wie kann ich damit umgehen? Sollte ich RTMP und x264enc ändern? – erdoganonur