i have DJI drone with :
manifold g-2 ( DJI pc with Jetson tx2 )
OS: ubuntu 16.04 aarch64
this PC connected to cellular network ( low bandwidth …)
i get h264 frames from DJI SDK to my buffer and publish this stream (i get 1280 * 960 pxl and scale frame to 480 * 360) with this pipeline: ( i have more code in my C project…)
" appsrc name=mysrc ! h264parse ! omxh264dec ! nvvidconv ! video/x-raw(memory:NVMM), width=480, height=360, format=I420 ! omxh264enc control-rate=1 target-bitrate=800000 ! video/x-h264, profile=baseline ! rtph264pay pt=96 name=pay0 "
and now i want to see the stream from my VLC cellular with :
gst-launch-1.0 rtspsrc location=rtsp://IP:8554/drone ! rtph264depay ! decodebin ! videoconvert ! autovideosink sync=false
it works when i see frames without a lot f moves… but when the changing in the video grows ( like when i raise my hand) i see something like this :
after the movement relax the frames returns to be normal… but when i move there are lags…
i do not sure if i need t change the bit-rate (up or down?) or something else
i read in Nvidia guide:
If the buffer size of decoder or network bandwidth is limited, configuring virtual buffer
size can cause video stream generation to correspond to the limitations according to the
virtual buffer size = vbv-size * (bitrate/fps)
maybe i need to define size of buffer?
i reed about IDR ,maybe i need to change it?
what i need to do?