Sending h265 by network gives corrupted video

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Sending h265 by network gives corrupted video

bronstein87
I'm trying to encode and decode video with h265 using next code:
  1. "appsrc ! videoconvert ! video/x-raw,format=I420,width=1920,height=1080,framerate=60/1
  2. ! omxh265enc bitrate=10000000 iframeinterval=30 ! rtph265pay ! udpsink host=10.20.55.66 port=4510"


  1. "udpsrc port=4510 ! application/x-rtp,encoding-name=H265,payload=96 ! rtph265depay
  2. ! h265parse ! queue ! omxh265dec ! videoconvert ! appsink"


But video that i got in result was fragmented (watch this video):
https://drive.google.com/open?id=185ahiSzdvNQYSrrrRqFsxSbzAm8t4P7I

Also i have found, that if i save video in file:

  1. "appsrc ! videoconvert ! video/x-raw,format=I420,width=1920,height=1080,framerate=60/1 ! "
  2. "omxh265enc bitrate=10000000 iframeinterval=30 ! matroskamux "
  3. " ! filesink location=test.mkv"


and then open it using some video player, it has perfect quality.
What is wrong? 

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Sending h265 by network gives corrupted video

Vinod Kesti
Борис

Looks like the artifacts in the video are due to packet loss. You are trying
to send 10 mbps over udp.
May be packets are dropped by the receiver due to buffer overflow.
Try increasing buffer-size in udpsink and udp-src plugin.

If still issue observed capture tcpdump in receiver machine and check if all
the rtp packets are received through WireShark.
 
Or use rtpjitterbuffer stat to get num-lost and num-late.

  stats               : Various statistics
                        flags: readable
                        Boxed pointer of type "GstStructure"
                                                          num-pushed: 0
                                                            num-lost: 0
                                                            num-late: 0
                                                      num-duplicates: 0
                                                          avg-jitter: 0
                                                           rtx-count: 0
                                                     rtx-success-count: 0
                                                      rtx-per-packet: 0
                                                             rtx-rtt: 0


Note: The maximum buffer size is clipped to max rmem_max and wmem_max in
linux.

Further drop you have to check network infra and machine kernel buffer
tuning.



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel