我目前正在尝试使用netbeans在java中播放多个视频。我可以使用多个gstreamer播放器播放多个视频,但我如何使用一个播放器来播放多个视频,以便它不会滞后?
答案 0 :(得分:0)
视频的来源是什么?既然你没有提到我将引用一个RTSP for mpeg4流的例子。您可以将其替换为mjpeg流或文件源或您需要的任何内容。
根据以下管道考虑垃圾箱和打击垫。用Java编写它应该不难。
gst-launch -e videomixer name=mix ! ffmpegcolorspace ! xvimagesink \
rtspsrc location="rtsp://<ip>/mpeg4/<cam>/media.amp" debug=1 ! rtpmp4vdepay ! mpeg4videoparse ! ffdec_mpeg4 ! ffmpegcolorspace ! \
textoverlay font-desc="Sans 24" text="CAM1" valign=top halign=left shaded-background=true ! \
videobox border-alpha=0 top=-200 left=-50 ! mix. \
rtspsrc location="rtsp://<ip>/mpeg4/<cam>/media.amp" debug=1 ! rtpmp4vdepay ! mpeg4videoparse ! ffdec_mpeg4 ! ffmpegcolorspace! \
textoverlay font-desc="Sans 24" text="CAM2" valign=top halign=left shaded-background=true ! \
videobox border-alpha=0 top=-200 left=-450 ! mix.
基本上这样做是创建一个窗口并在那里显示多个视频流 - 在这种情况下是两个视频流。
如果您需要了解如何在gstreamer-java中编程,请参阅我的RTSP示例 Playing RTSP with python-gstreamer