WebRTC support for H.264 is limited, especially in the native implementation. The lack of tight coupling of the encoder with WebRTC’s congestion control engine makes it hard to maintain QoS especially for use cases with highly variable network conditions, such as teleoperation. The major challenge is translating WebRTC’s bitrate requests into the proper commands for the encoder, as simply setting bitrate cap doesn’t lead to satisfactory results.
We conducted a massive grid search of H.264 parameters including quantization, bitrate, resolution and other to find profiles that yield the best quality for a given required bitrate which dramatically improved the performance for teleoperation in challenging network environment.