webrtcbin: 4K h264 problems

Rob Agar rob at engineeredarts.co.uk
Mon Oct 11 07:55:34 UTC 2021


Hi David

We're also struggling to get h264 video to work reliably via webrtc, but 
here on Ubuntu (18.04 & 20.04), even at lower resolutions & bit rate.

It does sound like a similar situation though - when it occasionally 
works, the video is stuttery with packet loss reported in 
chrome://webrtc-internals

Rob

On 11/10/2021 06:09, David Ely via gstreamer-devel wrote:
>
> We are having issues sending a 4K, H264 stream through WebRTC on 
> Windows (3840x2160, 30hz, 8Mbs). Playback of the video stream stutters 
> or may get stuck. Our application captures the desktop, encodes it to 
> H264 and streams it to Chrome or another of our applications, both of 
> which exhibit the problem. This issue only happens on Windows, CentOS7 
> and Ubuntu20.04 work (using the same hardware). Lower resolutions 
> (1080P) work across all 3 operations systems. Chrome's 
> webrtc-internals shows the packetsLost or freezeCount increase when 
> the stutter occurs.
>
> Points of note:
>
>   * Our GStreamer version is 1.19.1.
>   * This was reproduced with two PCs on a local network. The problem
>     won't occur if the sender and receiver are on the same computer.
>   * We did some Wireshark captures on the sending PC and it showed
>     some packets aren't making it to the NIC. It appears occasionally
>     a NAL is being truncated.
>   * In attempt reduced the scope of the problem, I reproduced the
>     issue in one of the gst-examples
>     (webrtc\sendonly\webrtc-unidirectional-h264.c) by modifying the
>     pipeline to stream from a file (I only tested this on Windows).
>     The file is 30hz, 4K H264 video with a birate of 8 Mbs. The
>     pipeline looks like this
>       o /filesrc location=C:\tmp\test.mkv ! queue ! matroskademux !
>         queue ! h264parse !
>         video/x-h264,alignment=au,stream-format=byte-stream !
>         rtph264pay config-interval=1 aggregate-mode !
>         application/x-rtp,media=video,encoding-name=H264,encoding-payload=96
>         ! webrtcbin/
>   * Reducing the bitrate alleviates the problem.
>   * For reference this is our application's pipeline on Windows
>       o /dxgiscreencapsrc cursor=true !
>         video/x-raw,format=BGRA,framerate=30/1 ! videoconvert ! queue
>         ! video/x-raw,format=I420 ! nvh264enc preset=low-latency-hp
>         bitrate=8192 rc-mode=cbr gop-size=90 zerolatency=true !
>         video/x-h264,framerate=30/1,alignment=au,stream-format=byte-stream
>         ! rtph264pay !
>         application/x-rtp,media=video,encoding-name=H264,payload=96 !
>         webrtcbin/
>
> As I was able to reproduce the issue in the modified example it points 
> to webrtcbin as the problem.
>
> Any help/suggestions to resolve the problem would be greatly appreciated.
>
> Thanks
>
> *David Ely*
> Software Architect
>
> ImmersaView
>
> *T*
>
> 	
>
>  +61 7 3123 7133
>
> *E*
>
> 	
>
> david.ely at immersaview.com <mailto:david.ely at immersaview.com>
>
> *W*
>
> 	
>
> www.immersaview.com <http://www.immersaview.com/>
>
> *A*
>
> 	
>
>  13/67 Depot St, Banyo, QLD 4014
>
> This electronic mail transmission is confidential and is intended only 
> for the review of the party to whom it is addressed.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20211011/6e56aeba/attachment-0001.htm>


More information about the gstreamer-devel mailing list