UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Contributor
Contributor
642 Views
Registered: ‎05-07-2018

Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution

Hello,

I have been trying to implement Zynq UltraScale+ MPSoC VCU TRD 2018.3 - SDI Video Capture and SDI Display project for weeks. My goal is to apply H.264 codec to 1080p 60fps video input and display it with 1080p 60fps resolution. I have a zcu106 rev 1.0 zynq ultrascale+ board, Blackmagic Video Assist 4K, Blackmagic HDLink Pro and DELL U2715H Monitor. I use Blackmagic Video assist 4K device as SDI source(1080p 60fps) and Blackmagic HDLink Pro as SDI sink. HDLink pro converts SDI input to HDMI output which is connected to the monitor.

I am currently stucked at 2.2 GStreamer Application (vcu_gst_app) step(I skipped creating dsa file because I couldn't solve it which is in another post : link ). When I tried to run vcu_gst_app /media/card/config/input.cfg command in Appendix B I got an error:

root@zcu106_vcu_trd:~# xmedia-ctl -d /dev/media0 -p
Media controller API version 4.14.0

Media device information
------------------------
driver xilinx-video
model Xilinx Video Composite Device
serial
bus info
hw revision 0x0
driver version 4.14.0

Device topology
- entity 1: vcap_sdi output 0 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "a0080000.v_proc_ss":1 [ENABLED]

- entity 5: a0030000.v_smpte_uhdsdi_rx_ss (1 pad, 1 link)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Source
[fmt:UYVY8_1X16/1920x1080@1000/60000 field:none]
-> "a0080000.v_proc_ss":0 [ENABLED]

- entity 7: a0080000.v_proc_ss (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
[fmt:RBG888_1X24/1280x720 field:none colorspace:srgb]
<- "a0030000.v_smpte_uhdsdi_rx_ss":0 [ENABLED]
pad1: Source
[fmt:VYYUYY8_1X24/1920x1080 field:none colorspace:srgb]
-> "vcap_sdi output 0":0 [ENABLED]

root@zcu106_vcu_trd:~# vcu_gst_app /media/card/config/input.cfg
/*************************Pipeline Information Start*************************/
Pipeline Info : On
Fps Info : On
APM Info : On
Output goes on : SDI
Frame rate : 60
Number of Source is : 1
Use case is to : Display
B Frames : 0
Bitrate : 60000
Enable L2Cache : True
Enc Name : AVC
Gop Len : 60
Profile : High
Qp Mode : Auto
Rc Mode : CBR
Num Slice : 8
GoP Mode : Basic
Filler Data : True
Low Bandwidth : False
Latency Mode : Normal
Device Type : SDI
Format : NV12
Width : 1920
Height : 1080
Raw : False
Src Type : Live Src
URI : file:///media/usb/test_1.ts
/*************************Pipeline Information End*************************/
!! The specified Level is too low and will be adjusted !!
!! Warning specified CPBSize is higher than the Max CPBSize allowed for this level and will be adjusted !!
Error!! code "GStreamer error: negotiation problem." to pipeline [1]

Then I tried to run modetest command but I can only see a blue screen, I also tried to run gst-launch commands with different parameters but I got errors again. Log file is attached. Thanks in advance.

 

0 Kudos
1 Solution

Accepted Solutions
Contributor
Contributor
225 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution

Hi @kvasantr ,

I changed my version to 2019.1 and I got some other problems (described in here). I accepted changing version to 2019.1 as solution for this thread.

Thank you.

12 Replies
Scholar watari
Scholar
604 Views
Registered: ‎06-16-2013

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem.&quot; to pipeline

Jump to solution

Hi @silat14 

 

You need to set suitable parameter by xmedia-ctl on media bus (might include v4l2 bus).

Would you change them ?

 

- entity 5: a0030000.v_smpte_uhdsdi_rx_ss (1 pad, 1 link)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Source
[fmt:UYVY8_1X16/1920x1080@1000/60000 field:none]
-> "a0080000.v_proc_ss":0 [ENABLED]

- entity 7: a0080000.v_proc_ss (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
[fmt:RBG888_1X24/1280x720 field:none colorspace:srgb]
<- "a0030000.v_smpte_uhdsdi_rx_ss":0 [ENABLED]
pad1: Source
[fmt:VYYUYY8_1X24/1920x1080 field:none colorspace:srgb]
-> "vcap_sdi output 0":0 [ENABLED]

 

Best regards,

Moderator
Moderator
520 Views
Registered: ‎11-21-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem.&quot; to pipeline

Jump to solution

Hi @silat14 

If your question is answered or your issue is solved, please kindly mark the response which helped as solution (click on "Accept as solution" button below the reply).

 

If this is not solved/answered, please reply in the topic giving more information on your current status.

 

Thanks and Regards,

Aoife
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
Contributor
Contributor
496 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem.&quot; to pipeline

Jump to solution

Hello,

First of all I want to thank to you. Sorry for the late answer.
I tried to apply your advice but I might misunderstood something. I changed the format in the input.cfg file in SD Card as UYVY8 (it was NV12 previously) but nothing has changed and it still shows the format as NV12 after entering the "vcu_gst_app /media/card/config/input.cfg" command. There weren't any format option in other cfg files. In where should I change the format?

Thanks in advance.

0 Kudos
Scholar watari
Scholar
489 Views
Registered: ‎06-16-2013

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem.&quot; to pipeline

Jump to solution

Hi @silat14 

 

I guess you need to execute the following commands.

 

$ xmedia-ctl -d /dev/media0 -V "\"a0030000.v_smpte_uhdsdi_rx_ss\":0 [fmt:VYYUYY8_1X24/1920x1080 field:nome]

$ xmedia-ctl -d /dev/media0 -V "\"a0080000.v_proc_ss\":0 [fmt:VYYUYY8_1X24/1920x1080 field:nome]

$ v4l2-ctl -d /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat='NV12'

 

Best regards,

 

Contributor
Contributor
470 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem.&quot; to pipeline

Jump to solution

Hello,

I executed the commands you wrote, however, I received "Unable to setup formats: Invalid argument (22)" error after both of xmedia-ctl commands. During my research, I found AR# 71798 and applied this patch. When I execute the commands, the error still remains. Any suggestions?

PS: After executing these commands, I tried "modetest -M xlnx -D a0070000.v_mix -s 36:1920x1080-60@YUYV" and nothing happens. When I enter this command first, it gives a blue screen on my monitor.

Thanks in advance.

0 Kudos
Contributor
Contributor
382 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem.&quot; to pipeline

Jump to solution

Unfortunatelly it's not the solution for my problem. How can it seem solved even though I said it's not ?

0 Kudos
Moderator
Moderator
336 Views
Registered: ‎04-12-2017

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution

Hello @silat14 

My first recommendation is to try the latest  VCU TRD 2019.1 for obvious all fixes around IPs, Drivers and control software of VCU.

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/115933262/Zynq+UltraScale+MPSoC+VCU+TRD+2019.1+-+SDI+Video+Capture+and+SDI+Display

Now coming back to your issue with VCU TRD SDI RX/TX capture and Display pipeline using VCU_GST_APP.

1. I looked at the media graph printed by xmedia-ctl -d /dev/media0 -p 

Media device information
------------------------
driver xilinx-video
model Xilinx Video Composite Device
serial
bus info
hw revision 0x0
driver version 4.14.0

Device topology
- entity 1: vcap_sdi output 0 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "a0080000.v_proc_ss":1 [ENABLED]

- entity 5: a0030000.v_smpte_uhdsdi_rx_ss (1 pad, 1 link)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Source
[fmt:UYVY8_1X16/1920x1080@1000/60000 field:none]
-> "a0080000.v_proc_ss":0 [ENABLED]

- entity 7: a0080000.v_proc_ss (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
[fmt:RBG888_1X24/1280x720 field:none colorspace:srgb]
<- "a0030000.v_smpte_uhdsdi_rx_ss":0 [ENABLED]
pad1: Source
[fmt:VYYUYY8_1X24/1920x1080 field:none colorspace:srgb]
-> "vcap_sdi output 0":0 [ENABLED]

If you look closely at hoghlighted data above, source and sink pad of video processing IP are not matching to the source detected at UHD SDI RX SS by V4L2 on the receiving side.

Please use following commands to fix the pipeline and make it uniform:

for Source PAD:  xmedia-ctl -v -V '"a0080000.v_proc_ss":0 [fmt:UYVY8_1X16/1920x1080 field:none]'

For Sink PAD:      xmedia-ctl -v -V '"a0080000.v_proc_ss":1 [fmt:UYVY8_1X16/1920x1080 field:none]'

 

After running above commands, please run xmedia utility to check media graph again to check if its set properly or not.

 

2. When you are using VCU_GST_APP above steps are not required. GST application provided in the TRD takes care of setting media graph.

but the problem in your case is the .cfg file used by you to run the GST application.

 

Following are the settings for input in configuration file:

Input Configuration : START
Input Num : 1
Input Type : sdi
Uri : file:///media/usb/test_1.ts
Raw : FALSE
Width : 3840
Height : 2160
Exit

 

The width and height mentioned is not matching to the input SDI resolution detected by the media graph given by you earlier.

That's why you receive the following error:  Error!! code "GStreamer error: negotiation problem." to pipeline [1]

 

Under the /media/card/config/ path you will find multiple configuration files. Please note you will need to edit them for the Input resolution selected by you from your INPUT video source.

 

Above suggestion should help you run the SDI capture and Display pipeline successfully.

But my primary recommendation is to switch to  VCU TRD 2019.1.

 

Thank you.

 

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
Contributor
Contributor
301 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution
Hello @kvasantr,
I tried to apply your advices but it didn't work. I am working on SDI Capture and Display with Audio 2019.1 project right now.
I will update this post if I fail at some point. Thanks for your help.


0 Kudos
Contributor
Contributor
274 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution

Hello @kvasantr ,

After finishing "petalinux-build" successfully, I had an error at "petalinux-build --sdk" step. I attached log file. It looks similar to this. I applied suggested changes (given below) but still got the same error (connection timeout to the server).

[submodule "capstone"]
	active = true
	url = git://git.qemu.org/git/capstone.git
[submodule "ui/keycodemapdb"]
	active = true
	url = git://git.qemu.org/git/keycodemapdb.git 

 I cannot try @shabbirk 's changes due to not being able to get my company's proxy server information. Are there any workaround to this problem?

Note: At the first sdk build log, it says: "fatal: unable to access 'http://git.qemu.or/git/capstone.git/': Could not resolve host: git.qemu.or". Then I changed .git/config file. At the second sdk build log, this problem fixed but it couldn't clone again. Manual update ("git submodule update") didnt'work neither.

Edit: Probably there is a typo in @shabbirk's post. Letter g's are missing in qemu addresses. I guess its the reason why I got the error in the note and I can't revert it.

Thanks in advance.

0 Kudos
Scholar watari
Scholar
253 Views
Registered: ‎06-16-2013

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution

Hi @silat14 

 

Would you set "insteadOf" parameter on .gitconfig ?

 

ex.)

$ git config --global url."https://".insteadOf git://

 

Best regards,

Contributor
Contributor
226 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution

Hi @watari,
I set insteadof parameter regarding to this answer. Then I broke the link with the command below and problem had gone:

git config --global --remove-section url."address"

Thank you for answering.

0 Kudos
Contributor
Contributor
226 Views
Registered: ‎05-07-2018

Re: Zynq UltraScale+ MPSoC VCU TRD 2018.3 - GStreamer error: negotiation problem. to pipeline [1]

Jump to solution

Hi @kvasantr ,

I changed my version to 2019.1 and I got some other problems (described in here). I accepted changing version to 2019.1 as solution for this thread.

Thank you.