How to stream a video using the gst-launch-1.0?

  • Sorry, we have not tested the gst-launch-1.0 tool yet. Based on the error description, it may be that necessary plugins or components are missing in the GStreamer environment. You can list the relevant information through "gst-inspect-1.0 | grep v4l2src" to check if the plugins are installed correctly.
  • Thank you for the reply. I already have v4l2src. The interesting thing is that I was unable to get it working. Even despite that I have recompiled the image etc. it was still missing. After all I have deleted whole luckfox-pico SDK folder and downloaded everything again and it was there. Now I am facing the same issue with missing udpsink element for gstreamer and I suspect that when I build all images, it just miss something and doesn't download all dependencies?

    Now I do have udpsink and v4l2src. But I didn't do any differently. I just had to re-download luckfox-pico SDK and run build multiple times.

    Is there a way to force luckfox-pico SDK to re-download all dependencies?
  • If you need the SDK to re download all dependencies, you can execute build.sh clean and then build.sh. But if you successfully use build.sh buildrootconfig and then build. sh also executes successfully, it means that the dependencies were not downloaded successfully. It may be that some dependencies were missed.
  • Thank you for your help. I'm able to run udp stream to another computer via:

    Code: Select all

    ST_DEBUG=2 gst-launch-1.0 v4l2src device=/dev/video11 ! video/x-raw,width=640,height=360,framerate=30/1 ! videoscale ! videoconvert ! x264enc tune=zerolatency bitrate=5000 ! h264parse ! rtph264pay ! udpsink host=192.168.1.34 p
    ort=5000
    Packages in buildrootconfig:

    Code: Select all

    cat config/buildroot_defconfig 
    
    BR2_arm=y
    BR2_cortex_a7=y
    BR2_TOOLCHAIN_EXTERNAL=y
    BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
    BR2_TOOLCHAIN_EXTERNAL_PATH="../../../../tools/linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf"
    BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="arm-rockchip830-linux-uclibcgnueabihf"
    BR2_TOOLCHAIN_EXTERNAL_GCC_8=y
    BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_10=y
    BR2_TOOLCHAIN_EXTERNAL_WCHAR=y
    BR2_TOOLCHAIN_EXTERNAL_HAS_SSP=y
    BR2_TOOLCHAIN_EXTERNAL_CXX=y
    BR2_PRIMARY_SITE="http://sources.buildroot.net"
    BR2_OPTIMIZE_3=y
    BR2_TARGET_GENERIC_HOSTNAME="luckfox pico"
    BR2_TARGET_GENERIC_ISSUE="Welcome to luckfox pico"
    BR2_TARGET_GENERIC_ROOT_PASSWD="luckfox"
    BR2_SYSTEM_ENABLE_NLS=y
    BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
    BR2_PACKAGE_GSTREAMER1=y
    BR2_PACKAGE_GST1_PLUGINS_GOOD=y
    BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTP=y
    BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_UDP=y
    BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2=y
    BR2_PACKAGE_GST1_PLUGINS_BAD=y
    BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOPARSERS=y
    BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265=y
    BR2_PACKAGE_GST1_PLUGINS_UGLY=y
    BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_X264=y
    BR2_PACKAGE_E2FSPROGS=y
    BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
    BR2_PACKAGE_EVTEST=y
    BR2_PACKAGE_PYTHON3=y
    BR2_PACKAGE_PYTHON3_SSL=y
    BR2_PACKAGE_PYTHON_AIOHTTP=y
    BR2_PACKAGE_PYTHON_CLICK=y
    BR2_PACKAGE_PYTHON_ITSDANGEROUS=y
    BR2_PACKAGE_PYTHON_JINJA2=y
    BR2_PACKAGE_PYTHON_PERIPHERY=y
    BR2_PACKAGE_PYTHON_PILLOW=y
    BR2_PACKAGE_PYTHON_SERIAL=y
    BR2_PACKAGE_PYTHON_SETUPTOOLS=y
    BR2_PACKAGE_PYTHON_SMBUS_CFFI=y
    BR2_PACKAGE_PYTHON_SPIDEV=y
    BR2_PACKAGE_PYTHON_WERKZEUG=y
    BR2_PACKAGE_GNUTLS=y
    BR2_PACKAGE_LIBMD=y
    BR2_PACKAGE_LIBSODIUM=y
    BR2_PACKAGE_FREETYPE=y
    BR2_PACKAGE_LIBDRM=y
    BR2_PACKAGE_DTC=y
    BR2_PACKAGE_DTC_PROGRAMS=y
    BR2_PACKAGE_LIBV4L=y
    BR2_PACKAGE_LIBV4L_UTILS=y
    BR2_PACKAGE_LIBPCAP=y
    BR2_PACKAGE_IW=y
    BR2_PACKAGE_LRZSZ=y
    BR2_PACKAGE_NTP=y
    BR2_PACKAGE_OPENSSH=y
    BR2_PACKAGE_SOCAT=y
    BR2_PACKAGE_BASH=y
    BR2_PACKAGE_BASH_LOADABLE_EXAMPLES=y
    BR2_PACKAGE_DIALOG=y
    BR2_PACKAGE_TIME=y
    BR2_PACKAGE_HTOP=y
    BR2_PACKAGE_UTIL_LINUX_LIBMOUNT=y
    BR2_PACKAGE_NANO=y
    BR2_PACKAGE_HOST_DTC=y
    Are there any options how to use RV1103's HW acceleration?

    Thank you for your help
  • Hardware acceleration requires the use of the Rockit library, but this library is closed source and cannot be directly supported by gst-launch-1.0. At present, the only way to accelerate encoding is to use rkmpi alone to extract hardware encoded frames and send them to gst-launch-1.0 for streaming.