Q1 - While running yavta for resolution AxB with our source box, we see "Unable to start streaming: Invalid argument (22)." Why is this happening?
Ans - One possible reason is that the resolution that the SDI source is generating and what is being passed to yavta don't match.
Run media-ctl to find out the resolution currently being identified by the SDI Rx IP driver.
Read your SDI source documentation to know how to manipulate the resolutions.
Q2 - The frame rate reported by yavta is significantly lesser than expected.
Ans - Depending on your design and system load, there may be a case where there may be frame drops.
But double check the ST352 payload in SDI Rx to verify if the SDI source connected is correctly generating the required frame rate (fps).
You may have to refer to PG205 to decode the RX FAMILY to get the resolution and RX Frame Rate (in case of zero payload in 2017.3/4)
Family Detection
rx_t_family | Transport Video Format | Active Pixels |
---|---|---|
0000 | SMPTE ST 275 | 1920 x 1080 |
0001 | SMPTE ST 296 | 1280 x 720 |
0010 | SMPTE ST 2048-2 | 2048x1080 |
0011 | SMPTE ST 295 | 1920 x 1080 |
1000 | NTSC | 720 x 486 |
1001 | PAL | 720 x 576 |
1111 | Unknown | |
Others | Reserved |
Frame Rate
rx_t_rate | Frame Rate |
---|---|
0000 | None |
0010 | 23.98 Hz |
0011 | 24 Hz |
0100 | 47.95 Hz |
0101 | 25 Hz |
0110 | 29.97 Hz |
0111 | 30 Hz |
1000 | 48 Hz |
1001 | 50 Hz |
1010 | 59.94 Hz |
1011 | 60 Hz |
Others | Reserved |
Q3 - After boot up, even though there is valid SDI source connected, the IP is unable to detect the source and video is not locked. Why could this happen?
Ans - Check if the IP's registers are not default values after kernel boots up. E.g. MODULE_CTRL register should be 0x3F30. If the registers are in default state, it may mean the clocking to the IP is not correct. Please check device tree to set the correct clock source.