We ended up modifying h264_encoder_impl by replacing all OpenH264 API calls with our own encoder calls. WebRTC constantly keeps asking the encoder implementation to update the bitrate and framerate as it sees fit for current available bandwidth. The HW encoder we used supported updating only bitrates on the fly and that worked fine with WebRTC. Framerate was set to a fixed value. As we did not change framerate as per wishes of WebRTC and it still worked fine, I think that encoded stream can also be sent the same way after doing only RTPFragmentation properly for given encoded buffer.