Hello,
When I try to run any application from the example applications that use video input (e.g. saLoopBack) they fail when opening the video input device:
root@dm816x-evm:~/bin# ./saLoopBackfailed to open capture deviceError in opening capture device for channel 0
As described in the wiki: http://processors.wiki.ti.com/index.php/TI81XX_Video_Capture_Driver_User_Guide
The gstreamer pipelines also can't access the video inputs:
root@dm816x-evm:~/bin# gst-launch v4l2src device=/dev/video1 always-copy=false queue-size=11 ! 'video/x-raw-yuv-strided,format=(fourcc)YUY2,width=1280,height=720,framerate=(fraction)60/1' ! omxbufferalloc numBuffers=11 ! gstperf ! v4l2sink min-queued-bufs=2 Setting pipeline to PAUSED ...** (gst-launch-0.10:1371): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed** (gst-launch-0.10:1371): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed** (gst-launch-0.10:1371): CRITICAL **: gst_v4l2sink_sync_flip: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failedERROR: Pipeline doesn't want to pause.ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Device '/dev/video1' is not a capture device.Additional debug info:v4l2_calls.c(515): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:Capabilities: 0x4000002Setting pipeline to NULL ...Freeing pipeline ...
wiki: http://processors.wiki.ti.com/index.php/DM81xx_Gstreamer_Pipelines#Capture_Pipelines
I tried using the video devices 1,2 and 3:
root@dm816x-evm:~/bin# ls -la /dev/video*crw-rw-rw- 1 root video 81, 0 Apr 30 04:57 /dev/video1crw-rw-rw- 1 root video 81, 1 Apr 30 04:57 /dev/video2crw-rw-rw- 1 root video 81, 2 Apr 30 04:57 /dev/video3
The matrix application is not running.
Am I missing some initialization for the video inputs?
Regards,
Lo
Hi,
What you are seeing are video display nodes. Capture nodes are /dev/video0, /dev/video4, /dev/video5 and /dev/video6. From log it seems either you are not doing insmod of capture driver or if you are doing insmod it failed to load because of some issue.
Hardik Shah
Please mark this post as answered via the Verify Answer button below if you think it answers your question. Thanks!
Looks like you're not running the load-hd-v4l2-firmware.sh script, or if you are, it's being run _after_ you've already run load-hd-firmware.sh.
Ralph
I created a new SDK 5.04 SD card and copied the load-hd-v4l2-firmware.sh script to /etc/init.d/load-hd-firmware.sh (see log).
After rebooting there is still no /dev/videox device for input.
The boards are firmly connected and held together by screws/bolts
There are some console log messages related to the tvp7002 and the ti81xxvin module:
FIRMWARE: isI2cInitRequiredOnM3: 1FIRMWARE: Default memory configuration is usedMemCfg: DCMM (Dynamically Configurable Memory Map) Version : 2.1.2.1FIRMWARE: Memory Configuration status : In ProgressFIRMWARE: 2 start Successfulomap_i2c omap_i2c.2: controller timed outVPSS_DCTRL: setup 7360 filter failed.tvp7002 2-005d: tvp7002 found @ 0x5d (OMAP I2C adapter)omap_i2c omap_i2c.2: controller timed outomap_i2c omap_i2c.2: controller timed outomap_i2c omap_i2c.2: controller timed outtvp7002 2-005d: Rev. 9c detected.tvp7002 2-005d: Unknown revision detected.omap_i2c omap_i2c.2: controller timed outtvp7002 2-005d: Write: retry ... 0omap_i2c omap_i2c.2: controller timed outtvp7002 2-005d: Write: retry ... 1omap_i2c omap_i2c.2: controller timed outtvp7002 2-005d: Write: retry ... 2omap_i2c omap_i2c.2: controller timed outtvp7002 2-005d: Write: retry ... 3omap_i2c omap_i2c.2: controller timed outtvp7002 2-005d: Write: retry ... 4tvp7002 2-005d: TVP7002 write error -110tvp7002: probe of 2-005d failed with error -110ti81xxvin ti81xxvin: Error registering v4l2 subdevice
Looks like at least one TVP7002 is found?
full logs:
7266.sdk_5.04_default.txt
7608.sdk_5.04_v4l2_default.txt
Refer thread below
http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/206681.aspx
Above should solve your problem.
Thanks Hardik,
the devices /dev/video0-6 are now present.
I copied the script: cp /usr/share/ti/ti-media-controller-utils/load-hd-v4l2-firmware.sh /etc/init.d/load-hd-firmware.sh and modified line 20: "firmware_loader $HDVPSS_ID /usr/share/ti/ti-media-controller-utils/dm816x_hdvpss_v4l2.xem3 start -i2c 0"
The saLoopBack example application does not yet run:
# ./saLoopBackDriver Name: ti81xxvinDriver bus info: TI81xx PlatformDriver is capable of doing capturesaLoopBack: Mode set is 0Setting DV Preset failed
The ioctl VIDIOC_QUERY_DV_PRESET returns "0" although I've tried HDMI and component inputs. (composite should be tvp51xx)
Which input is selected by default?
Should I add a VIDIOC_S_INPUT ioctl?
Only component input is supported on TI Netra EVM + IO Expansion platform. DVI and SD inputs are not supported.
But people can add support for any external decoders of their choice or TVP5158 and sii1161 present on board using appnote
Hello Hardik,
thanks, it works fine with component 720p60 input (on D6,D7 andD8)!
saLoopBack and saLoopBackScale work fine.
I started with 576i but that mode is not supported and the demo will respond with the message "Setting DV Preset failed"
Console output:
root@dm816x-evm:~/bin# ./saLoopBackDriver Name: ti81xxvinDriver bus info: TI81xx PlatformDriver is capable of doing capturesaLoopBack: Mode set is 6Driver Name: Driver bus info: �s@@`=============================================================Capture Format:=============================================================fmt.type = 1fmt.width = 1920fmt.height = 1080fmt.pixelformat = 1448695129fmt.bytesperline = 3840fmt.sizeimage = 4147200==========================================================================================================================Display Format:=============================================================fmt.type = 2fmt.width = 1920fmt.height = 1080fmt.pixelformat = 1448695129fmt.bytesperline = 3840fmt.sizeimage = 4147200=============================================================Count=0Frame rate = 50
Great,
Lo=============================================================fmt.type = 2fmt.width = 1920fmt.height = 1080fmt.pixelformat = 1448695129fmt.bytesperline = 3840fmt.sizeimage = 4147200=============================================================Count=0Frame rate = 50
It seems you are feeding 720P50 and not 720P60, frame rate is shown is 50 above.