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: 
Adventurer
Adventurer
324 Views
Registered: ‎10-04-2018

Where is gstreamer source code in ReVision applications?

I have a zcu104 development system and have downloaded the ReVision package zcu104_rv_ss which uses gstreamer for video pipeline control.

I do have vivado and petalinux and have implemented the hardware BSP and have done a Petalinux configure and build.

What I can not find is the source code for gstreamer or the header files for gstreamer, for the applications that are compiled into the application.

Thank You

Tom

 

Tags (2)
0 Kudos
8 Replies
Highlighted
Mentor watari
Mentor
304 Views
Registered: ‎06-16-2013

Re: Where is gstreamer source code in ReVision applications?

Adventurer
Adventurer
275 Views
Registered: ‎10-04-2018

Re: Where is gstreamer source code in ReVision applications?

Thank you for the reply.

I have gone to the sites that you suggested.

Perhaps I asked my question incorrectly. I am working with ReVision for the zcu104 development  board. I know that gstreamer is used in the project. There are examples of how to use gstreamer once the SD card is loaded and the firmware is booted.

gst-launch-1.0 \
    xlnxvideosrc src-type="mipi" ! \
    "video/x-raw, width=1920, height=1080, format=YUY2" ! \
    sdxfilter2d filter-preset=4 filter-mode=1 ! queue ! \
    xlnxvideosink sink-type="hdmi" plane-id=29 sync=false fullscreen-overlay=true

Clearly, when I have made modifications to the scripts, I have caused errors. I expect that I need to find the specific data on how to use the plugins.

What I am looking for are the code or plugins or headers, in the ReVision project files, that enable the above. How are they incorporated into the ReVision project?

I found where the gst plugins are referenced in yocto:

Please find the related recipes(gst-plugins) at following location in ptealinux installed directory:

/petalinux-v2018.2-final/components/yocto/source/aarch64/layers/meta-openembedded/meta-multimedia/recipes-multimedia/gstreamer-0.10

I also found how to add "gst-plugins-xlnx" to the petalinux rootfs configuration.

But I have not found out how the plugins are used/called in the ReVision project.

Thank You

Tom

 

0 Kudos
Mentor watari
Mentor
264 Views
Registered: ‎06-16-2013

Re: Where is gstreamer source code in ReVision applications?

Hi @miner_tom 

 

Which version are you using gstreamer 0.1 series or gstreamer 1.0 series ?

Also, if you have cross compile environment, I suggest you to use it to build gstreamer's plugin.

 

I will help you if you share more detail error information.

 

Best regards,

Explorer
Explorer
256 Views
Registered: ‎10-21-2015

Re: Where is gstreamer source code in ReVision applications?

Hi

Download reference design zip file from

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841774/Zynq+UltraScale+MPSoC+Base+TRD+2018.2

It's petalinux has xilinx gstreamer plugins

Adventurer
Adventurer
201 Views
Registered: ‎10-04-2018

Re: Where is gstreamer source code in ReVision applications?

hokim,

Thank you for the reply. I am going to download the files you suggest. 

One question: All of the TRD for Ultrascale+ MPSoC are for the zcu102 development board. Of course, I have the zcu104 development system. Would you know if Xilinx is working on porting these designs to zcu104? Or is zcu104 just too under powered for the tasks?

Tom

 

0 Kudos
Adventurer
Adventurer
198 Views
Registered: ‎10-04-2018

Re: Where is gstreamer source code in ReVision applications?

Thank you watari,

I will kindly accept your offer for helping with detail errors.

For example, in ReVision Getting Started Guide, section 7 https://github.com/Xilinx/reVISION-Getting-Started-Guide/blob/master/Docs/run-application.md

to run the Optical Flow Pipeline, there is the following script, which, when run, causes no error.

gst-launch-1.0 \
    xlnxvideosrc src-type="hdmi" ! \
    "video/x-raw, width=1920, height=1080, format=YUY2" ! \
    sdxopticalflow filter-mode=1 ! queue ! \
    xlnxvideosink sink-type="hdmi" sync=false fullscreen-overlay=true

I attempted to change this script, by modifying the second and third line, in order to use the USB webcam for video source. The camera that I am using is the one that came with the zcu104 development kit, "3.4 MP USB 3.0  CAM_CU30_CHL_TC_BX"

gst-launch-1.0 \
    xlnxvideosrc src-type="usbcam" ! \
    "video/x-raw, width=3840, height=1080, format=YUY2" ! \
    sdxopticalflow filter-mode=1 ! queue ! \
    xlnxvideosink sink-type="hdmi" sync=false fullscreen-overlay=true

I received the error shown.

 

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Redistribute latency...
ERROR: from element /GstPipeline:pipeline0/GstXlnxVideoSrc:xlnxvideosrc0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
../../../../gstreamer-1.12.2/libs/gst/base/gstbasesrc.c(2939): gst_base_src_loop (): /GstPipeline:pipeline0/GstXlnxVideoSrc:xlnxvideosrc0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.126797740

 

Do you have a suggestion?

Thank You

Tom

 

0 Kudos
Mentor watari
Mentor
166 Views
Registered: ‎06-16-2013

Re: Where is gstreamer source code in ReVision applications?

Hi @miner_tom 

 

It's basic issue.

 

Gstreamer requeires consistent setting on its pipeline.

In your cases, there are no consistant setting.

 

According to your error information, gstreamer said "Internal data stream error" on v4l2src0.

It means that you didn't set suitable parameters on "hdmi" and "usbcam".

 

Would you refer the followings ?

 

1. Make sure capability for source devices by using "gst-device-monitor-1.0"

2. Set suitable parameters for /dev/videoX and /dev/mediaX for gstreamer's source pad.

3. Also, set suitable parameters for HDMI Tx on drm graph.

 

Let's me know, if you have any question.

Also, I suggest you to share the followings to resolve this issue.

 

- Result of "gst-device-monitor-1.0" to understand yor abailable devices on your side.

- Result of "ls /dev/video*" and "ls /dev/media*" to understand your v4l2 devices.

- Result of "v4l2-ctl -d <your v4l2 device> --all" (ex. v4l2-ctl -d /dev/video0 --all) to make sure capability of the device.

- Result of "xmedia-ctl -p -d <your media device>" (ex. xmedia-ctl -p -d /dev/media0) to make sure current setting on v4l2 graph.

- Result of "cat /sys/devices/platform/amba_pl@0/<your hdmi rx device name on dtb>/hdmi_info" (ex. cat /sys/devices/platform/amba_pl@0/a0000000.v_hdmi_rx_ss/hdmi_info) to understand condition of HDMI Rx.

- Result of "cat /sys/devices/platform/amba_pl@0/<your hdmi tx device name on dtb>/hdmi_info" (ex. cat /sys/devices/platform/amba_pl@0/a0020000.v_hdmi_tx_ss/hdmi_info) to understand condition of HDMI Tx.

- Result of "modetest" and "modetest -M xlnx" to understand current setting on drm graph.

 

[notice]

If you have any question about gstreamer, I strongly recommend to post it on video category.

I'm sure that it's helpful for you.

 

Best regards,

Adventurer
Adventurer
135 Views
Registered: ‎10-04-2018

Re: Where is gstreamer source code in ReVision applications?

I will take your advice and will let you know of the results.

Thank you very much
Tom
0 Kudos