I used the Processor SDK examples to figure out how to use V4L2 to control the AM57XX VPE And VIP. Those devices correspond to /dev/video0 and /dev/video1 in Linux. There is a /dev/video10 that is the 'omapwb-m2m' device. When I run v4l2-ctl on it, I can see more information about it as shown below.
The TRM shows that I can choose the output of any DRM plane or DSS Compositor as an input to the WB pipeline. However, I cannot find any examples of how to use it in the Processor SDK.
- How do I use it?
- I've noticed that the /dev/video10 device becomes busy as soon as I call drmModeSetPlane() in my code. Why is this?
- Where is the example in the Processor SDK? - Thank you.
root@am57xx-evm:~# v4l2-ctl -d /dev/video10 --all
Driver Info (not using libv4l2):
Driver name : omapwb-m2m
Card type : omapwb-m2m
Bus info : platform:omapwb-m2m
Driver version: 4.1.18
Capabilities : 0x84204000
Video Memory-to-Memory Multiplanar
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04204000
Video Memory-to-Memory Multiplanar
Streaming
Extended Pix Format
Priority: 2
Format Video Capture Multiplanar:
Width/Height : 1920/1080
Pixel Format : 'YUYV'
Field : None
Number of planes : 1
Flags :
Colorspace : HDTV and modern devices (ITU709)
Plane 0 :
Bytes per Line : 3840
Size Image : 4147200
Format Video Output Multiplanar:
Width/Height : 1920/1080
Pixel Format : 'YUYV'
Field : None
Number of planes : 1
Flags :
Colorspace : HDTV and modern devices (ITU709)
Plane 0 :
Bytes per Line : 3840
Size Image : 4147200
Selection: compose, Left 0, Top 0, Width 1920, Height 1080
Selection: compose_default, Left 0, Top 0, Width 1920, Height 1080
Selection: compose_bounds, Left 0, Top 0, Width 1920, Height 1080
Selection: crop, Left 0, Top 0, Width 1920, Height 1080
Selection: crop_default, Left 0, Top 0, Width 1920, Height 1080
Selection: crop_bounds, Left 0, Top 0, Width 1920, Height 1080
...
root@am57xx-evm:~# v4l2-ctl -d /dev/video10 --all
Failed to open /dev/video10: Device or resource busy