Media Control for Capture Link Up

Multimedia User Guide (UG1449)

Document ID
UG1449
Release Date
2023-10-19
Revision
1.7 English

The media-ctl application from the v4l-utils package is a userspace application that uses the Linux Media Controller API to configure video pipeline entities.

Run the following command to check the link up status and formats set for each of the source and sink pads.
$ media-ctl -d /dev/mediaX -p     -> Replace X with the corresponding media node
		                Media controller API version 6.1.5
If the capture device is connected, then the preceding command generates the following media graph:

Media controller API version 6.1.5


Media device information
------------------------
driver xilinx-video
model Xilinx Video Composite Device
serial 
bus info platform:amba_pl@0:vcapaxis_bro
hw revision 0x0
driver version 6.1.5


Device topology
- entity 1: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":1 [ENABLED]


- entity 5: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video1
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":2 [ENABLED]


- entity 9: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":3 [ENABLED]


- entity 13: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":4 [ENABLED]


- entity 17: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":5 [ENABLED]


- entity 21: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video5
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":6 [ENABLED]


- entity 25: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video6
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":7 [ENABLED]


- entity 29: amba_pl@0:axis_broadcasterhdmi_ (8 pads, 8 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev15
pad0: Sink
[fmt:VYYUYY8_1X24/3840x2160 field:none]
<- "a0080000.v_proc_ss":1 [ENABLED]
pad1: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad2: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad3: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad4: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad5: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad6: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad7: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]


- entity 38: a0080000.v_proc_ss (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev16
pad0: Sink
[fmt:VYYUYY8_1X24/3840x2160 field:none]
<- "a0000000.v_hdmi_rx_ss":0 [ENABLED]
pad1: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "amba_pl@0:axis_broadcasterhdmi_":0 [ENABLED]


- entity 41: a0000000.v_hdmi_rx_ss (1 pad, 1 link)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev17
pad0: Source
[fmt:VYYUYY8_1X24/3838x2160 field:none colorspace:bt2020 xfer:709 ycbcr:bt2020 quantization:lim-range]
[dv.caps:BT.656/1120 min:0x0@25000000 max:4096x2160@297000000 stds:CEA-861,DMT,CVT,GTF caps:progressive,reduced-blanking,custo
m]
[dv.detect:BT.656/1120 3838x2160p60 (4400x2250) stds:CEA-861 flags:CE-video]
-> "a0080000.v_proc_ss":0 [ENABLED]

If a source is not connected to the HDMI-Rx port, then the media-ctl utility generates the following media graph:


Media controller API version 6.1.5


Media device information
------------------------
driver xilinx-video
model Xilinx Video Composite Device
serial 
bus info platform:amba_pl@0:vcapaxis_bro
hw revision 0x0
driver version 6.1.5


Device topology
- entity 1: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":1 [ENABLED]


- entity 5: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video1
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":2 [ENABLED]


- entity 9: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":3 [ENABLED]


- entity 13: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":4 [ENABLED]


- entity 17: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":5 [ENABLED]


- entity 21: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video5
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":6 [ENABLED]


- entity 25: vcapaxis_broad_out1hdmi_input_a (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video6
pad0: Sink
<- "amba_pl@0:axis_broadcasterhdmi_":7 [ENABLED]


- entity 29: amba_pl@0:axis_broadcasterhdmi_ (8 pads, 8 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev15
pad0: Sink
[fmt:VYYUYY8_1X24/3840x2160 field:none]
<- "a0080000.v_proc_ss":1 [ENABLED]
pad1: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad2: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad3: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad4: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad5: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad6: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]
pad7: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "vcapaxis_broad_out1hdmi_input_a":0 [ENABLED]


- entity 38: a0080000.v_proc_ss (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev16
pad0: Sink
[fmt:VYYUYY8_1X24/3840x2160 field:none]
<- "a0000000.v_hdmi_rx_ss":0 [ENABLED]
pad1: Source
[fmt:VYYUYY8_1X24/3840x2160 field:none]
-> "amba_pl@0:axis_broadcasterhdmi_":0 [ENABLED]


- entity 41: a0000000.v_hdmi_rx_ss (1 pad, 1 link)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev17
pad0: Source
[fmt:VYYUYY8_1X24/3838x2160 field:none colorspace:bt2020 xfer:709 ycbcr:bt2020 quantization:lim-range]
[dv.caps:BT.656/1120 min:0x0@25000000 max:4096x2160@297000000 stds:CEA-861,DMT,CVT,GTF caps:progressive,reduced-blanking,custo
m]
[dv.query:no-link]
-> "a0080000.v_proc_ss":0 [ENABLED]
Note: Media Graph and Entity Name can vary as per design. For exact media graph of specific design, refer to the relevant design wiki pages of the desired release.