Part Number: DRA726
I have 4 analog camera inputs using an ISL79987 device
I have no problem displaying the 4 video inputs using waylandsink and VPE
isl79987 10732 1
ti_cal 24471 0
videobuf2_dma_contig 8697 2 ti_cal,ti_vpe
videobuf2_memops 1824 1 videobuf2_dma_contig
videobuf2_v4l2 21752 3 v4l2_mem2mem,ti_cal,ti_vpe
videobuf2_core 25666 4 v4l2_mem2mem,ti_cal,ti_vpe,videobuf2_v4l2
When trying to convert to MP4 there is a problem. I did notice an error message with dmesg
[ 3.443601] ledtrig-cpu: registered to indicate activity on CPUs
[ 3.451174] omap-rproc 55020000.ipu: assigned reserved memory node ipu2_cma@95800000
[ 3.472701] remoteproc0: 55020000.ipu is available
[ 3.477600] remoteproc0: Note: remoteproc is still under development and considered experimental.
[ 3.502659] remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
[ 3.522764] remoteproc0: Direct firmware load for dra7-ipu2-fw.xem4 failed with error -2
[ 3.530975] remoteproc0: Falling back to user helper
/lib/firmware
drwxr-xr-x 4 root root 4096 Nov 21 13:25 .
drwxr-xr-x 9 root root 4096 Nov 20 22:09 ..
lrwxrwxrwx 1 root root 40 Nov 19 22:05 dra7-ipu2-fw.xem4 -> /lib/firmware/dra7-ipu2-fw.xem4.ipumm-fw
-rw-r--r-- 1 root root 3743144 Nov 19 19:22 dra7-ipu2-fw.xem4.ipumm-fw
-rw-r--r-- 1 root root 572182 Nov 19 19:22 dra7-ipu2-fw.xem4.map
drwxr-xr-x 2 root root 12288 Nov 19 19:36 emmy-w1-sdiouart
drwxr-xr-x 2 root root 4096 Nov 19 19:36 mrvl
-rw-r--r-- 1 root root 4002 Nov 19 16:14 vpdma-1b8.bin
root@actia-dra726-12inch:/lib/firmware# dir /dev/rpmsg-dce
crw------- 1 root root 245, 1 Nov 21 13:25 /dev/rpmsg-dce
crw------- 1 root root 245, 1 Nov 21 13:25 /dev/rpmsg-dce
root@actia-dra726-12inch:/lib/firmware# dmesg | grep ipu2
[ 0.000000] Reserved memory: initialized node ipu2_cma@95800000, compatible id shared-dma-pool
[ 3.451137] omap-rproc 55020000.ipu: assigned reserved memory node ipu2_cma@95800000
[ 3.522732] remoteproc0: Direct firmware load for dra7-ipu2-fw.xem4 failed with error -2
[ 9.828431] remoteproc0: Booting fw image dra7-ipu2-fw.xem4, size 3743144
In this test I have a PAL DVD player connected to /dev/video0
I get similar results with a camera or my video signal generator.
I haven't tested this way with my NTSC cameras yet, I would assume similar results.
Here is the command used
gst-launch-1.0 -v v4l2src device=/dev/video0 ! video/x-raw,interlaced=true ! vpe ! ducatih264enc ! queue ! h264parse ! mp4mux ! filesink location=test.mp4
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
/GstPipeline:pipeline0/GstV4l2Src:v4l2src0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)UYVY\,\ framerate\=\(fraction\)100/1\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ interlace-mode\=\(string\)interleaved\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)bt601\,\ interlaced\=\(boolean\)true"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)UYVY\,\ framerate\=\(fraction\)100/1\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ interlace-mode\=\(string\)interleaved\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)bt601\,\ interlaced\=\(boolean\)true"
/GstPipeline:pipeline0/GstVpe:vpe0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)NV12\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
/GstPipeline:pipeline0/GstDucatiH264Enc:ducatih264enc0.GstPad:src: caps = "video/x-h264\,\ alignment\=\(string\)au\,\ stream-format\=\(string\)byte-stream\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = "video/x-h264\,\ alignment\=\(string\)au\,\ stream-format\=\(string\)byte-stream\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:sink: caps = "video/x-h264\,\ alignment\=\(string\)au\,\ stream-format\=\(string\)byte-stream\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = "video/x-h264\,\ alignment\=\(string\)au\,\ stream-format\=\(string\)byte-stream\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
/GstPipeline:pipeline0/GstDucatiH264Enc:ducatih264enc0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)NV12\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
/GstPipeline:pipeline0/GstVpe:vpe0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)UYVY\,\ framerate\=\(fraction\)100/1\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ interlace-mode\=\(string\)interleaved\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)bt601\,\ interlaced\=\(boolean\)true"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)UYVY\,\ framerate\=\(fraction\)100/1\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ interlace-mode\=\(string\)interleaved\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)bt601\,\ interlaced\=\(boolean\)true"
/GstPipeline:pipeline0/GstVpe:vpe0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)NV12\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
/GstPipeline:pipeline0/GstDucatiH264Enc:ducatih264enc0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)NV12\,\ width\=\(int\)720\,\ height\=\(int\)576\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)100/1"
** (gst-launch-1.0:1195): CRITICAL **: gst_fd_memory_get_fd: assertion 'GST_IS_FD_ALLOCATOR (mem->allocator)' failed
** (gst-launch-1.0:1195): CRITICAL **: gst_fd_memory_get_fd: assertion 'GST_IS_FD_ALLOCATOR (mem->allocator)' failed
** (gst-launch-1.0:1195): CRITICAL **: gst_fd_memory_get_fd: assertion 'GST_IS_FD_ALLOCATOR (mem->allocator)' failed
** (gst-launch-1.0:1195): CRITICAL **: gst_fd_memory_get_fd: assertion 'GST_IS_FD_ALLOCATOR (mem->allocator)' failed
** (gst-launch-1.0:1195): CRITICAL **: gst_fd_memory_get_fd: assertion 'GST_IS_FD_ALLOCATOR (mem->allocator)' failed
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data flow error.
Additional debug info:
../../../../gstreamer-1.6.3/libs/gst/base/gstbasesrc.c(2943): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming task paused, reason error (-5)
Execution ended after 0:00:00.120163286
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
Our board has 1G of RAM
Michel Catudal
ACTIA Corp