Is it possible to capture video from two 1080p30 sources and encode to h264 using the Apalis Camera Parallel Input ports into the dual IPUs?
We have no experience with using both parallel video input interfaces at the same time, we did not even use a 1080p30 camera on the parallel video input. So the following is from the relevant NXP SoC documentation.
The two parallel video inputs are each routed to the first and second IPU, so that each gets the full receive bandwidth that its IPU supports.
From the formula in i.MX 6Dual/6Quad reference manual IPU chapter ‘184.108.40.206.1
Camera Ports’ one gets a required speed of about 168MHz which is below the IPU’s maximum of 240MHz. So receiving two 1080p30 video streams into the SoC is possible.
I want to run two gstreamer pipelines that would look like:
gst-launch-1.0 imxv4l2videosrc device=/dev/video0 ! imxvpuenc_h264 ! tcpclientsink …
gst-launch-1.0 imxv4l2videosrc device=/dev/video1 ! imxvpuenc_h264 ! tcpclientsink …
This extends your question to the number of concurrent streams the VPU can encode and what encoding bandwidth the VPU has.
The VPU is able to encode at least two streams at the same time. However according the the reference manual, VPU chapter ‘69.1.1 Features’ the VPU can encode ‘H.264 BP/CBP 4.0 up to 1920x1088’. So it will not be possible to encode two 1080p30 streams.
Please also refer to the NXP documentation added to this NXP community post.