Tool/software: Linux
hi all:
hardware env: am5728, logitech usb webcam 270, HDMI monitor with 1080
software env: ti-processor-sdk-linux-am57xx-evm-03.01.00.06
boot from nfs, kernel build from sdk 3.01(patch with this topic e2e.ti.com/.../2023362
dts use beagle-x15
run the gst command:
gst-launch-1.0 v4l2src device=/dev/video1 num-buffers=1000 io-mode=4 ! 'video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)720' ! queue ! vpe ! queue ! kmssink
log from dmesg:
[ 735.664284] contiguous chunk is too small 4096/1843200 b
[ 903.616336] contiguous chunk is too small 4096/1843200 b
[ 1003.872194] contiguous chunk is too small 4096/1843200 b
log from gst:
0:00:03.986349826 1187 0x143ec0 DEBUG v4l2allocator gstv4l2allocator.c:1310:gst_v4l2_allocator_dqbuf:<v4l2src0:pool:src:allocator> driver pretends buffer is queued even if dequeue succeeded
0:00:03.986413429 1187 0x143ec0 DEBUG v4l2bufferpool gstv4l2bufferpool.c:1704:gst_v4l2_buffer_pool_process:<v4l2src0:pool:src> process buffer 0xb49fecb4
0:00:03.986486792 1187 0x143ec0 DEBUG v4l2src gstv4l2src.c:774:gst_v4l2src_create:<v4l2src0> ts: 0:16:41.711131000 now 0:16:43.851901055 delay 0:00:02.140770055
0:00:03.986549581 1187 0x143ec0 INFO v4l2src gstv4l2src.c:810:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.133333333 out ts 0:00:01.498335565
0:00:03.986711760 1187 0x143ec0 DEBUG v4l2bufferpool gstv4l2bufferpool.c:1301:gst_v4l2_buffer_pool_acquire_buffer:<v4l2src0:pool:src> acquire
0:00:04.004511072 1187 0x143ef0 DEBUG v4l2bufferpool gstv4l2bufferpool.c:1379:gst_v4l2_buffer_pool_release_buffer:<v4l2src0:pool:src> release buffer 0x179850
0:00:04.145967956 1187 0x143ec0 DEBUG v4l2allocator gstv4l2allocator.c:1310:gst_v4l2_allocator_dqbuf:<v4l2src0:pool:src:allocator> driver pretends buffer is queued even if dequeue succeeded
0:00:04.146038554 1187 0x143ec0 DEBUG v4l2bufferpool gstv4l2bufferpool.c:1704:gst_v4l2_buffer_pool_process:<v4l2src0:pool:src> process buffer 0xb49fecb4
0:00:04.146095650 1187 0x143ec0 DEBUG v4l2src gstv4l2src.c:774:gst_v4l2src_create:<v4l2src0> ts: 0:16:43.851720000 now 0:16:44.011511214 delay 0:00:00.159791214
0:00:04.146149330 1187 0x143ec0 INFO v4l2src gstv4l2src.c:810:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.266666666 out ts 0:00:03.638925216
0:00:04.146230988 1187 0x143ec0 DEBUG v4l2bufferpool gstv4l2bufferpool.c:1379:gst_v4l2_buffer_pool_release_buffer:<v4l2src0:pool:src> release buffer 0x1798f0
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)
0:00:04.147025127 1187 0x143440 DEBUG v4l2bufferpool gstv4l2bufferpool.c:926:gst_v4l2_buffer_pool_flush_start:<v4l2src0:pool:src> start flushing
0:00:04.164697396 1187 0x143440 DEBUG v4l2bufferpool gstv4l2bufferpool.c:874:gst_v4l2_buffer_pool_stop:<v4l2src0:pool:src> stopping pool
0:00:04.176815087 1187 0x143440 DEBUG v4l2bufferpool gstv4l2bufferpool.c:658:gst_v4l2_buffer_pool_streamoff:<v4l2src0:pool:src> Stopped streaming
0:00:04.177013540 1187 0x143440 DEBUG v4l2allocator gstv4l2allocator.c:757:gst_v4l2_allocator_stop:<v4l2src0:pool:src:allocator> stop allocator
0:00:04.177766362 1187 0x143440 DEBUG v4l2 gstv4l2object.c:3545:gst_v4l2_object_stop:<v4l2src0> stopping
0:00:04.177894218 1187 0x143440 DEBUG v4l2 gstv4l2object.c:3553:gst_v4l2_object_stop:<v4l2src0> deactivating pool
0:00:04.178691935 1187 0x143440 DEBUG v4l2 v4l2_calls.c:710:gst_v4l2_close:<v4l2src0> Trying to close /dev/video1
0:00:04.178933983 1187 0x143440 DEBUG v4l2 v4l2_calls.c:459:gst_v4l2_empty_lists:<v4l2src0> deleting enumerations
run command capturevpedisplay:
capturevpedisplay 800 600 yuyv 1920 1080 yuyv 0 0 -s 32:1920x1080
and the output log is
vpe:/dev/video0 open success!!!
vip open success!!!
using 1 connectors, 1920x1080 display, multiplanar: 1
vip: G_FMT(start): width = 800, height = 600, 4cc = YUYV
vpe i/p: G_FMT: width = 800, height = 600, 4cc = YUYV
vpe o/p: G_FMT: width = 1920, height = 1080, 4cc = YUYV
vip: QBUF failed: Bad address, index = 0
dmesg is
[ 21.219734] usbcore: registered new interface driver uvcvideo
[ 21.226079] USB Video Class driver (1.1.1)
[ 22.624684] usb 1-1: set resolution quirk: cval->res = 384
[ 22.631824] usbcore: registered new interface driver snd-usb-audio
[ 23.904950] PVR_K: UM DDK-(3699939) and KM DDK-(3699939) match. [ OK ]
[ 30.044643] omap_hwmod: mmu1_dsp2: _wait_target_disable failed
[ 30.058195] omap_hwmod: mmu0_dsp2: _wait_target_disable failed
[ 30.074735] omap_hwmod: mmu1_dsp1: _wait_target_disable failed
[ 30.088879] omap_hwmod: mmu0_dsp1: _wait_target_disable failed
[ 75.553784] usb 1-1: reset high-speed USB device number 2 using xhci-hcd
[ 685.040821] contiguous chunk is too small 4096/1843200 b
[ 735.664284] contiguous chunk is too small 4096/1843200 b
[ 903.616336] contiguous chunk is too small 4096/1843200 b
[ 1003.872194] contiguous chunk is too small 4096/1843200 b
would someone help me to solve this problem?? I try many methods but can't solve it.
thank you very much.