I am trying to build up a streamed network video using Raspberry Pi 3 Model B and a USB camera. After reading this tutorial, I made a working pipeline, but the software H.264 encoder is very CPU intensive. (About 250% occupation for 320x240 resolution).
The OpenMAX gstreamer module provides hardware-accelerated H.264 encoding. I replaced x264enc with omxh264enc, the pipeline still works, but the latency becomes about 10 seconds, as omxh264enc doesn't have the tune=zerolatency option that is provided by x264enc.
So here comes the questions:
- How can I adjust the latency preference in the
OpenMAX gstreamerplugin? - Or I do have to throw away
gstreamerbut useOpenMax ILdirectly? - An additional question: could the hardware H.264 encoder process multiple (low resolution) video streams simultaneously, or it can only handle one at a time?