ループバックアドレスを使いスタンドアロンでストリーミングします
PC環境
[PC USBカメラ] MJPGリアルタイムストリーミング(ループバック)
# 送信側:
$ gst-launch-1.0 -e udpsrc port=5000 caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)JPEG, payload=(int)26" ! rtpjpegdepay ! jpegdec ! videoconvert ! autovideosink
# 受信側:
$ gst-launch-1.0 -e v4l2src device=/dev/video0 ! 'image/jpeg,width=1920,height=1080,framerate=60/1' ! jpegparse ! rtpjpegpay ! udpsink host=127.0.0.1 port=5000
[PC USBカメラ] H.264リアルタイムストリーミング(ループバック)
# 送信側:
$ gst-launch-1.0 -e v4l2src device=/dev/video0 ! 'video/x-h264,width=1920,height=1080,framerate=30/1' ! h264parse ! rtph264pay ! udpsink host=127.0.0.1 port=5000
# 受信側:
$ gst-launch-1.0 -e udpsrc port=5000 ! application/x-rtp, encoding-name=H264 ! rtph264depay ! h264parse ! avdec_h264 ! videoconvert ! autovideosink
SBC(Jetson)
[Jetson MIPIカメラ] H.264リアルタイムストリーミング(ループバック)
# 送信側:
jetson@nvidia:~$ gst-launch-1.0 -e nvarguscamerasrc sensor-id=0 ! \
'video/x-raw(memory:NVMM), width=1920, height=1080, framerate=30/1' ! \
nvv4l2h264enc bitrate=4000000 ! rtph264pay ! udpsink host=127.0.0.1 port=5000 sync=false async=false
# 受信側:
jetson@nvidia:~$ gst-launch-1.0 -e udpsrc port=5000 caps="application/x-rtp, media=video, encoding-name=H264, payload=96" ! \
rtph264depay ! nvv4l2decoder ! nv3dsink
[Jetson MIPIカメラ] H.265リアルタイムストリーミング(ループバック)
# 送信側:
jetson@nvidia:~$ gst-launch-1.0 -e nvarguscamerasrc sensor-id=0 ! \
'video/x-raw(memory:NVMM), width=1920, height=1080, framerate=30/1' ! \
nvv4l2h265enc bitrate=4000000 ! rtph265pay ! udpsink host=127.0.0.1 port=5000 sync=false async=false
# 受信側:
jetson@nvidia:~$ gst-launch-1.0 -e udpsrc port=5000 caps="application/x-rtp, media=video, encoding-name=H265, payload=96" ! \
rtph265depay ! nvv4l2decoder ! nv3dsink