My issue is first 30 frames are not given by udpsink. I verified on the wireshark, windows is receiving first 30 frames. What might be the problem?. How to resolve this?.
Deocoding begins from first IDR frame, so the h265 streams are dropped before receiving first IDR frame. If you don’t want to drop too many packets, please set idrinterval to small value.
Hi DaneLLL, Thanks for the reply. I changed the pipeline to sprintf(p_hnd->pipelineStr, "appsrc name=%s ! video/x-raw,format=GRAY16_LE,width=%u,height=%u ! videocrop right=%u ! videoconvert ! nvvidconv ! video/x-raw(memory:NVMM),width=%u,height=%u ! nvv4l2h265enc control-rate=2 bitrate=800000 insert-sps-pps=1 idrinterval=15 ! video/x-h265, stream-format=(string)byte-stream ! h265parse ! rtph265pay ! udpsink host=%s port=%u sync=false async=false", appSrcNameArray[streamCam], finalWidth, finalHeight, cropwidth, finalWidth - cropwidth, finalHeight, p_hnd->streamConfig.streamIP,p_hnd->streamConfig.streamPort);
But after this, I receive only 60 frames. After 60 frames, streaming stops. I verified from the NX side that I am pushing the buffer to gstreamer pipeline. What might be the reason?
I tried removing idrinterval andinsert-sps-pps, I still received only 60 frames. Seems like the behavior of nvv4l2h265enc . Did I miss anything in the pipeline?