Open RioChan opened 2 years ago
Hi @RioChan,
I'm a bit confused, did you build gstreamer after installing libavtp? Note that you need to build gstreamer, which will then find libavtp and build itself with the AVTP plugin.
Hi edersondisouza : Thanks for the feedback. Sorry, I never know the sequence as your saying. Let me double confirm: The AVTP needs to be installed after Gstreamer installed?
BR Rio
Hi edersondisouza :
But the Gstreamer found not avtp.
May you comment how to solve this? Thank you very much.
BR Rio
audioparsers: aacparse: AAC audio stream parser audioparsers: ac3parse: AC3 audio stream parser audioparsers: amrparse: AMR audio stream parser audioparsers: dcaparse: DTS Coherent Acoustics audio stream parser audioparsers: flacparse: FLAC audio parser audioparsers: mpegaudioparse: MPEG1 Audio Parser audioparsers: sbcparse: SBC audio parser audioparsers: wavpackparse: Wavpack audio stream parser audiorate: audiorate: Audio rate adjuster audioresample: audioresample: Audio resampler audiotestsrc: audiotestsrc: Audio test source auparse: auparse: AU audio demuxer : autodetect: autoaudiosink: Auto audio sink
root@ubuntu-vm:/opt/gstreamer# cd .. root@ubuntu-vm:/opt# cd libavtp/ root@ubuntu-vm:/opt/libavtp# ls build CONTRIBUTING.md examples HACKING.md include LICENSE meson.build meson_options.txt README.md src travis.sh unit root@ubuntu-vm:/opt/libavtp# sudo ninjia -C build install sudo: ninjia: command not found root@ubuntu-vm:/opt/libavtp# sudo ninja -C build install ninja: Entering directory `build' ninja: warning: bad deps log signature or version; starting over [24/25] Installing files. Installing libavtp.so.0.1.0 to /usr/local/lib/x86_64-linux-gnu Installing symlink pointing to libavtp.so.0.1.0 to /usr/local/lib/x86_64-linux-gnu/libavtp.so.0 Installing symlink pointing to libavtp.so.0 to /usr/local/lib/x86_64-linux-gnu/libavtp.so Installing /opt/libavtp/include/avtp.h to /usr/local/include Installing /opt/libavtp/include/avtp_aaf.h to /usr/local/include Installing /opt/libavtp/include/avtp_crf.h to /usr/local/include Installing /opt/libavtp/include/avtp_cvf.h to /usr/local/include Installing /opt/libavtp/include/avtp_rvf.h to /usr/local/include Installing /opt/libavtp/include/avtp_ieciidc.h to /usr/local/include Installing /opt/libavtp/build/meson-private/avtp.pc to /usr/local/lib/x86_64-linux-gnu/pkgconfig root@ubuntu-vm:/opt/libavtp# cd .. root@ubuntu-vm:/opt# gst-inspect-1.0 avtp No such element or plugin 'avtp'
You definitely need to build gstreamer. Are you building it? If so, can you share the log from gstreamer build, please?
Hi edersondisouza:
Thanks for continuing helping me, appreciated. I have re-built the gstreamer with 1.19.2, full built log is as the bottom.
But, the below cmd still found no avtp. gst-inspect-1.0 avtp No such element or plugin 'avtp'
st-launch-1.0 -v fakesrc num_buffers=5 ! fakesink Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstSystemClock Got EOS from element "pipeline0". Execution ended after 0:00:00.012475278 Setting pipeline to NULL ... Freeing pipeline ...
BR Rio
Anaconda3.5 mcu_plus_sdk_am64x_08_01_00_36 ti-processor-sdk-linux-am57xx-evm-06.01.00.08
bazel-0.15.0-installer-linux-x86_64.sh mcu_plus_sdk_am64x_08_01_00_36-linux-x64-installer.run ti-processor-sdk-linux-am64xx-evm-08.00.00.21
build-gstreamer.log mediapipe ti-processor-sdk-linux-am65xx-evm-07_01_00_17
build_streamer.sh media_plex ti-processor-sdk-linux-am65xx-evm-08_00_00_04
caffe Neo-AI ti-processor-sdk-linux-j7200-evm-07_03_00_04
caffe-jacinto OpenAvnu ti-processor-sdk-linux-j7200-evm-08_00_00_05
containerd OpenCL_workspace ti-processor-sdk-linux-j7200-evm-08_01_00_01
Delta_Linux_SDK8.0 orc ti-processor-sdk-linux-j7-evm-07_01_00_10
depthai_hand_tracker plexmediaserver_1.13.5.5332-21ab172de_amd64.deb ti-processor-sdk-linux-j7-evm-07_02_00_07
detectron2 processor_sdk_sitara_am64x_00_09_00_01 ti-processor-sdk-linux-j7-evm-07_03_00_05
docker processor_sdk_sitara_am64x_07_02_00_02 ti-processor-sdk-linux-j7-evm-08_00_00_08
DRA821_703 processor_sdk_sitara_am64x_linux_07_02_00_01 ti-processor-sdk-linux-rt-am65xx-evm-06.02.00.81
DRA821_703_env_setup.sh PROCESSOR_SDK_VISION_03_07_00_00 ti-processor-sdk-rtos-j7200-evm-07_03_00_07
DRA821_800 PROCESSOR_SDK_VISION_03_08_00_00 ti-processor-sdk-rtos-j7200-evm-08_00_00_12
DRA821_801 psdk_rtos_auto_j7_06_00_01_00 ti-processor-sdk-rtos-j7200-evm-08_01_00_11
edgeai-yolov5 psdk_rtos_auto_j7_06_02_00_21 ti-processor-sdk-rtos-j721e-evm-07_01_00_11
etcher psdk_rtos_auto_j7_06_02_00_21_original ti-processor-sdk-rtos-j721e-evm-07_02_00_06
Foxconn_7200_Debug pytorch3d ti-processor-sdk-rtos-j721e-evm-07_03_00_07
gcc-11.2.0 Rio_2021_7_30_2ETH.txt ti-processor-sdk-rtos-j721e-evm-08_00_00_12
gcc-11.2.0.tar.gz SSC_Stack_5.12 tsn-doc
gst-libav TDA4_601_env_setup.sh usb-eth-RTL-unix-driver
gst-plugins-bad TDA4_602_TIDL_Patch yolov5
gst-plugins-base TDA4_701
root@ubuntu-vm:/opt# cd gstreamer
root@ubuntu-vm:/opt/gstreamer# ls
AUTHORS COPYING docs gst-element-check-1.0.m4 hooks MAINTAINERS meson_options.txt plugins README RELEASE tests
ChangeLog data gst gstreamer.doap libs meson.build NEWS po README.static-linking scripts tools
root@ubuntu-vm:/opt/gstreamer# meson build
^CFatal Python error: initsite: Failed to import the site module
Traceback (most recent call last):
File "/usr/lib/python3.7/site.py", line 79, in
root@ubuntu-vm:/opt/gstreamer# meson build
The Meson build system
Version: 0.61.1
Source dir: /opt/gstreamer
Build dir: /opt/gstreamer/build
Build type: native build
Project name: gstreamer
Project version: 1.19.2
C compiler for the host machine: ccache cc (gcc 7.5.0 "cc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0")
C linker for the host machine: cc ld.bfd 2.30
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports link arguments -Wl,-Bsymbolic-functions: YES
Compiler for C supports arguments -fvisibility=hidden: YES
Compiler for C supports arguments -fno-strict-aliasing: YES
Message: Disabling deprecated GLib API
Has header "dlfcn.h" : YES
Has header "inttypes.h" : YES
Has header "memory.h" : YES
Has header "poll.h" : YES
Has header "stdint.h" : YES
Has header "stdio_ext.h" : YES
Has header "strings.h" : YES
Has header "string.h" : YES
Has header "sys/param.h" : YES
Has header "sys/poll.h" : YES
Has header "sys/prctl.h" : YES
Has header "sys/socket.h" : YES
Has header "sys/stat.h" : YES
Has header "sys/times.h" : YES
Has header "sys/time.h" : YES
Has header "sys/types.h" : YES
Has header "sys/utsname.h" : YES
Has header "sys/wait.h" : YES
Has header "ucontext.h" : YES
Has header "unistd.h" : YES
Has header "sys/resource.h" : YES
Has header "sys/uio.h" : YES
Checking whether type "struct tm" has member "tm_gmtoff" : YES
Checking for function "gmtime_r" : YES
Checking for function "sigaction" : YES
Checking for function "getrusage" : YES
Checking for function "fseeko" : YES
Checking for function "ftello" : YES
Checking for function "poll" : YES
Checking for function "ppoll" : YES
Checking for function "pselect" : YES
Checking for function "getpagesize" : YES
Checking for function "clock_gettime" : YES
Checking for function "clock_nanosleep" : YES
Checking for function "strnlen" : YES
Checking for function "getline" : YES
Checking for function "mkstemp" : YES
Checking for function "alarm" : YES
Checking for function "gettimeofday" : YES
Checking for function "localtime_r" : YES
Checking if "pthread_setname_np(const char*)" : links: NO
Header
Program glib-mkenums found: YES (/root/anaconda3/bin/glib-mkenums) Program glib-mkenums found: YES (/root/anaconda3/bin/glib-mkenums) Message: PTP supported on linux. Checking if "SIOCGIFCONF, SIOCGIFFLAGS and SIOCGIFHWADDR available" : compiles: YES Checking if "getifaddrs() and AF_LINK available" : compiles: NO Program setcap found: YES (/sbin/setcap) Run-time dependency libcap found: NO (tried pkgconfig and cmake) Message: How to install gst-ptp-helper: setuid-root Configuring libgstreamer-1.0.so.0.1902.0-gdb.py using configuration Configuring check.h using configuration Compiler for C supports arguments -Wno-undef: YES Compiler for C supports arguments -Wno-redundant-decls: YES Compiler for C supports arguments -Wno-missing-prototypes: YES Compiler for C supports arguments -Wno-missing-declarations: YES Compiler for C supports arguments -Wno-old-style-definition: YES Compiler for C supports arguments -Wno-declaration-after-statement: YES Compiler for C supports arguments -Wno-format-nonliteral: YES (cached) Compiler for C supports arguments -Wno-tautological-constant-out-of-range-compare: NO Configuring internal-check.h using configuration Run-time dependency threads found: YES C++ compiler for the host machine: ccache c++ (gcc 7.5.0 "c++ (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0") C++ linker for the host machine: c++ ld.bfd 2.30 Run-time dependency gtk+-3.0 found: YES 3.22.30 Has header "pthread.h" : YES Dependency threads found: YES unknown (cached) Configuring gst using configuration Program /opt/gstreamer/build/docs/gst-plugins-doc-cache-generator found: YES (/opt/gstreamer/build/docs/gst-plugins-doc-cache-generator) Program hotdoc found: NO Message: Hotdoc not found, not building the documentation Program xgettext found: YES (/usr/bin/xgettext) Program scripts/extract-release-date-from-doap-file.py found: YES (/opt/gstreamer/scripts/extract-release-date-from-doap-file.py) Message: Package release date: 2021-09-23 Configuring config.h using configuration Build targets in project: 202 NOTICE: Future-deprecated features used:
gstreamer 1.19.2
Plugins: coreelements, coretracers
Found ninja-1.10.2 at /root/anaconda3/bin/ninja root@ubuntu-vm:/opt/gstreamer# root@ubuntu-vm:/opt/gstreamer# root@ubuntu-vm:/opt/gstreamer# ninja -C build ninja: Entering directory `build' [509/509] Linking target tests/examples/controller/controller-graph root@ubuntu-vm:/opt/gstreamer#
i have also installed the gst-plugin-bad, I don't why it find the gstreamer 1.14.2, but I'm using the 1.19.3. Log is as the below. BR Rio
Found pkg-config: /usr/bin/pkg-config (0.29.1) Dependency gstreamer-1.0 found: NO found 1.14.2 but need: '>= 1.19.0' Found CMake: /usr/local/bin/cmake (3.16.5) Run-time dependency gstreamer-1.0 found: NO (tried pkgconfig and cmake) Looking for a fallback subproject for the dependency gstreamer-1.0
meson.build:270:0: ERROR: Neither a subproject directory nor a gstreamer.wrap file was found.
A full log can be found at /opt/gst-plugins-bad/build/meson-logs/meson-log.txt
Hi,
There's no need to worry about gstreamer vs gst-plugins-bad anymore, since the monorepo. Try following these instructions https://gstreamer.freedesktop.org/documentation/installing/building-from-source-using-meson.html?gi-language=c#setting-up-the-build-with-meson. It should build all of gstreamer, including the avtp plugin, quite transparently.
If that doesn't work, just post the logs =D
Hi.
I can perform: meson test -C build:
108/108 gst_gstbufferpool TIMEOUT 180.02s killed by signal 15 SIGTERM
MALLOCPERTURB=26 GST_PLUGIN_PATH_1_0=/opt/gstreamer/build CK_DEFAULT_TIMEOUT=20 GST_PLUGIN_SYSTEM_PATH_1_0='' GST_PLUGIN_LOADING_WHITELIST=gstreamer GST_PLUGIN_SCANNER_1_0=/opt/gstreamer/build/libs/gst/helpers/gst-plugin-scanner GST_REGISTRY=/opt/gstreamer/build/tests/check/gst_gstbufferpool.registry GST_STATE_IGNORE_ELEMENTS='' /opt/gstreamer/build/tests/check/gst_gstbufferpool
Ok: 38
Expected Fail: 0
Fail: 68
Unexpected Pass: 0
Skipped: 1
Timeout: 1
ninja: Entering directory `/opt/libavtp/build' ninja: warning: bad deps log signature or version; starting over [24/24] Linking target test-ieciidc 1/7 AVTP API OK 0.05s 2/7 Stream API OK 0.03s 3/7 AAF API OK 0.02s 4/7 CRF API OK 0.01s 5/7 CVF API OK 0.01s 6/7 RVF API OK 0.01s 7/7 IEC61883/IIDC API OK 0.01s
Ok: 7
Expected Fail: 0
Fail: 0
Unexpected Pass: 0
Skipped: 0
Timeout: 0
Full log written to /opt/libavtp/build/meson-logs/testlog.txt
Thanks.
BR Rio
Hi,
Can you share the steps you are using to build gstreamer? If I do these steps:
git clone git@gitlab.freedesktop.org:gstreamer/gstreamer.git
cd gstreamer
meson build
I'll see this in the middle of the logs:
gst-plugins-bad| Checking for type "struct sock_txtime" : YES
gst-plugins-bad| Run-time dependency avtp found: NO (tried pkgconfig and cmake)
gst-plugins-bad| Looking for a fallback subproject for the dependency avtp
Cloning into 'avtp'...
remote: Enumerating objects: 250, done.
remote: Counting objects: 100% (26/26), done.
remote: Compressing objects: 100% (24/24), done.
remote: Total 250 (delta 8), reused 6 (delta 1), pack-reused 224
Receiving objects: 100% (250/250), 128.64 KiB | 1.71 MiB/s, done.
Resolving deltas: 100% (127/127), done.
HEAD is now at 9482c11 Fix compilation with GCC 9
Executing subproject gst-plugins-bad:avtp
avtp| Project name: libavtp
avtp| Project version: 0.1.0
avtp| C compiler for the host machine: cc (gcc 11.1.0 "cc (GCC) 11.1.0")
avtp| C linker for the host machine: cc ld.bfd 2.36.1
avtp| Run-time dependency cmocka found: NO (tried pkgconfig and cmake)
avtp| Library m found: YES
avtp| Build targets in project: 1020
avtp| Subproject avtp finished.
gst-plugins-bad| Dependency avtp from subproject subprojects/avtp found: YES 0.1.0
(...)
gstreamer-full 1.19.90
Build options
gstreamer-full : NO
Subprojects
avtp : YES
So, gstreamer just downloads libavtp if it doesn't find it on the system. Can you share (on pastebin) the full log generated by the meson build
step of gstreamer, so we can see what is doing wrong?
Hi edersondisouza:
Sorry for replying late due to vocation.
This is my problematic git of Gstreamer: git clone https://github.com/GStreamer/gstreamer.git
This is yours: git clone https://gitlab.freedesktop.org/gstreamer/gstreamer.git
Obvious, your gitlab gstreamer is better than my used one, I don't know why the reason.
May you teach me why there are difference between them?
At least, I know your gitlab gstreamer will auto git clone the Gstreamer bad/base/ugly....plugins.
My previous one github is ........
root@ubuntu-vm:/opt# git clone https://gitlab.freedesktop.org/gstreamer/gstreamer.git Cloning into 'gstreamer'... remote: Enumerating objects: 839648, done. remote: Counting objects: 100% (1330/1330), done. remote: Compressing objects: 100% (655/655), done. remote: Total 839648 (delta 849), reused 1068 (delta 671), pack-reused 838318 Receiving objects: 100% (839648/839648), 207.03 MiB | 584.00 KiB/s, done. Resolving deltas: 100% (657961/657961), done. Checking out files: 100% (9964/9964), done. root@ubuntu-vm:/opt# root@ubuntu-vm:/opt# root@ubuntu-vm:/opt# root@ubuntu-vm:/opt# cd gstreamer root@ubuntu-vm:/opt/gstreamer# ls ci data gst-env.py gst-uninstalled.py LICENSE meson.build meson_options.txt README.md scripts subprojects tests root@ubuntu-vm:/opt/gstreamer# meson build The Meson build system Version: 0.61.1 Source dir: /opt/gstreamer Build dir: /opt/gstreamer/build Build type: native build Project name: gstreamer-full Project version: 1.20.0
gst-plugins-bad 1.20.0
Plugins : accurip, adpcmdec, adpcmenc, aiff, asfmux, audiobuffersplit, audiofxbad, audiomixmatrix, audiolatency, audiovisualizers, autoconvert, bayer,
camerabin, codecalpha, coloreffects, debugutilsbad, dvbsubenc, dvbsuboverlay, dvdspu, faceoverlay, festival, fieldanalysis, freeverb, frei0r,
gaudieffects, gdp, geometrictransform, id3tag, inter, interlace, ivfparse, ivtc, jp2kdecimator, jpegformat, rfbsrc, midi, mpegpsdemux, mpegpsmux,
mpegtsdemux, mpegtsmux, mxf, netsim, rtponvif, pcapparse, pnm, proxy, legacyrawparse, removesilence, rist, rtmp2, rtpmanagerbad, sdpelem,
segmentclip, siren, smooth, speed, subenc, switchbin, timecode, transcode, videofiltersbad, videoframe_audiolevel, videoparsersbad, videosignal,
vmnc, y4mdec, decklink, dvb, fbdevsink, ipcpipeline, kms, nvcodec, shm, aes, **avtp**, closedcaption, colormanagement, dash, dc1394, dtls, fdkaac,
hls, microdns, openexr, openjpeg, opusparse, sctp, smoothstreaming, sndfile, ttmlsubs, webrtc
(A)GPL license allowed: False
BR Rio
In file included from ../subprojects/gst-plugins-good/ext/qt/qtitem.cc:30:0:
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:33:27: error: ‘function’ in namespace ‘std’ does not name a template type
using Callable = std::function<void()>;
^~~~
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:35:33: error: expected ‘)’ before ‘c’
explicit RenderJob(Callable c) : _c(c) { }
^
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:40:5: error: ‘Callable’ does not name a type; did you mean ‘glEnable’?
Callable _c;
^~~~
glEnable
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h: In member function ‘virtual void RenderJob::run()’:
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:37:18: error: ‘_c’ was not declared in this scope
void run() { _c(); }
^~
../subprojects/gst-plugins-good/ext/qt/qtitem.cc: In member function ‘void QtGLVideoItem::handleWindowChanged(QQuickWindow*)’:
../subprojects/gst-plugins-good/ext/qt/qtitem.cc:684:15: error: ‘bind’ is not a member of ‘std’
bind (&QtGLVideoItem::onSceneGraphInitialized, this)),
^~~~
../subprojects/gst-plugins-good/ext/qt/qtitem.cc:684:15: note: suggested alternative: ‘find’
bind (&QtGLVideoItem::onSceneGraphInitialized, this)),
^~~~
find
ninja: build stopped: subcommand failed.
root@ubuntu-vm:/opt/gstreamer#
This is the full - Fail Logs, Sir
[2378/6942] Compiling C++ object subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtglutility.cc.o
FAILED: subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtglutility.cc.o
ccache c++ -Isubprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p -Isubprojects/gst-plugins-good/ext/qt -I../subprojects/gst-plugins-good/ext/qt -Isubprojects/gst-plugins-good -I../subprojects/gst-plugins-good -I../subprojects/gst-plugins-good/gst-libs -Isubprojects/gstreamer -I../subprojects/gstreamer -Isubprojects/gst-plugins-base/gst-libs -I../subprojects/gst-plugins-base/gst-libs -Isubprojects/gstreamer/libs -I../subprojects/gstreamer/libs -Isubprojects/orc -I../subprojects/orc -Isubprojects/gl-headers/abyss -I../subprojects/gl-headers/abyss -Isubprojects/gl-headers/wglext -I../subprojects/gl-headers/wglext -Isubprojects/gstreamer/gst -Isubprojects/gst-plugins-base/gst-libs/gst/video -Isubprojects/gst-plugins-base/gst-libs/gst/gl -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libdrm -I/root/anaconda3/include/qt -I/root/anaconda3/include/qt/QtCore -I/root/anaconda3/include/qt/QtGui -I/root/anaconda3/include/qt/QtQml -I/root/anaconda3/include/qt/QtQuick -I/root/anaconda3/include/qt/QtX11Extras -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++11 -O2 -g -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Winit-self -Wmissing-include-dirs -Wno-multichar -Wvla -Wpointer-arith -fPIC -DQT_X11EXTRAS_LIB -DQT_CORE_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_QUICK_LIB -pthread -DHAVE_CONFIG_H -DHAVE_QT_QPA_HEADER '-DQT_QPA_HEADER=<5.6.2/QtGui/qpa/qplatformnativeinterface.h>' -DHAVE_QT_X11 -DHAVE_QT_EGLFS -MD -MQ subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtglutility.cc.o -MF subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtglutility.cc.o.d -o subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtglutility.cc.o -c ../subprojects/gst-plugins-good/ext/qt/gstqtglutility.cc
In file included from ../subprojects/gst-plugins-good/ext/qt/gstqtglutility.cc:25:0:
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:33:27: error: ‘function’ in namespace ‘std’ does not name a template type
using Callable = std::function<void()>;
^~~~
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:35:33: error: expected ‘)’ before ‘c’
explicit RenderJob(Callable c) : _c(c) { }
^
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:40:5: error: ‘Callable’ does not name a type; did you mean ‘llabs’?
Callable _c;
^~~~
llabs
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h: In member function ‘virtual void RenderJob::run()’:
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:37:18: error: ‘_c’ was not declared in this scope
void run() { _c(); }
^~
In file included from /root/anaconda3/include/qt/QtCore/qatomic.h:34:0,
from /root/anaconda3/include/qt/QtCore/qvariant.h:37,
from /root/anaconda3/include/qt/QtCore/QVariant:1,
from ../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:27,
from ../subprojects/gst-plugins-good/ext/qt/gstqtglutility.cc:25:
/root/anaconda3/include/qt/QtCore/qmetatype.h: In instantiation of ‘constexpr int qMetaTypeId() [with T = std::nullptr_t]’:
/root/anaconda3/include/qt/QtCore/qvariant.h:496:35: required from ‘QVariant qVariantFromValue(const T&) [with T = std::nullptr_t]’
/root/anaconda3/include/qt/QtCore/qvariant.h:350:31: required from ‘static QVariant QVariant::fromValue(const T&) [with T = std::nullptr_t]’
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.cc:358:39: required from here
/root/anaconda3/include/qt/QtCore/qglobal.h:724:47: error: static assertion failed: Type is not registered, please use the Q_DECLARE_METATYPE macro to make it known to Qt's meta-object system
^
/root/anaconda3/include/qt/QtCore/qmetatype.h:1739:5: note: in expansion of macro ‘Q_STATIC_ASSERT_X’
Q_STATIC_ASSERT_X(QMetaTypeId2~~~~
In file included from /root/anaconda3/include/qt/QtCore/qvariant.h:40:0,
from /root/anaconda3/include/qt/QtCore/QVariant:1,
from ../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:27,
from ../subprojects/gst-plugins-good/ext/qt/gstqtglutility.cc:25:
/root/anaconda3/include/qt/QtCore/qmetatype.h: In instantiation of ‘static constexpr int QMetaTypeId2
/root/anaconda3/include/qt/QtCore/qmetatype.h:1598:100: error: body of constexpr function ‘static constexpr int QMetaTypeId2<T>::qt_metatype_id() [with T = std::nullptr_t]’ not a return-statement
static inline Q_DECL_CONSTEXPR int qt_metatype_id() { return QMetaTypeId<T>::qt_metatype_id(); }
^
[2381/6942] Compiling C++ object subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtoverlay.cc.o
FAILED: subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtoverlay.cc.o
ccache c++ -Isubprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p -Isubprojects/gst-plugins-good/ext/qt -I../subprojects/gst-plugins-good/ext/qt -Isubprojects/gst-plugins-good -I../subprojects/gst-plugins-good -I../subprojects/gst-plugins-good/gst-libs -Isubprojects/gstreamer -I../subprojects/gstreamer -Isubprojects/gst-plugins-base/gst-libs -I../subprojects/gst-plugins-base/gst-libs -Isubprojects/gstreamer/libs -I../subprojects/gstreamer/libs -Isubprojects/orc -I../subprojects/orc -Isubprojects/gl-headers/abyss -I../subprojects/gl-headers/abyss -Isubprojects/gl-headers/wglext -I../subprojects/gl-headers/wglext -Isubprojects/gstreamer/gst -Isubprojects/gst-plugins-base/gst-libs/gst/video -Isubprojects/gst-plugins-base/gst-libs/gst/gl -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libdrm -I/root/anaconda3/include/qt -I/root/anaconda3/include/qt/QtCore -I/root/anaconda3/include/qt/QtGui -I/root/anaconda3/include/qt/QtQml -I/root/anaconda3/include/qt/QtQuick -I/root/anaconda3/include/qt/QtX11Extras -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++11 -O2 -g -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Winit-self -Wmissing-include-dirs -Wno-multichar -Wvla -Wpointer-arith -fPIC -DQT_X11EXTRAS_LIB -DQT_CORE_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_QUICK_LIB -pthread -DHAVE_CONFIG_H -DHAVE_QT_QPA_HEADER '-DQT_QPA_HEADER=<5.6.2/QtGui/qpa/qplatformnativeinterface.h>' -DHAVE_QT_X11 -DHAVE_QT_EGLFS -MD -MQ subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtoverlay.cc.o -MF subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtoverlay.cc.o.d -o subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtoverlay.cc.o -c ../subprojects/gst-plugins-good/ext/qt/gstqtoverlay.cc
In file included from ../subprojects/gst-plugins-good/ext/qt/gstqtoverlay.cc:85:0:
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:33:27: error: ‘function’ in namespace ‘std’ does not name a template type
using Callable = std::function<void()>;
^~~~~~~~
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:35:33: error: expected ‘)’ before ‘c’
explicit RenderJob(Callable c) : _c(c) { }
^
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:40:5: error: ‘Callable’ does not name a type; did you mean ‘glEnable’?
Callable _c;
^~~~~~~~
glEnable
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h: In member function ‘virtual void RenderJob::run()’:
../subprojects/gst-plugins-good/ext/qt/gstqtglutility.h:37:18: error: ‘_c’ was not declared in this scope
void run() { _c(); }
^~
[2383/6942] Compiling C++ object subprojects/gst-plugins-good/ext/qt/libgstqmlgl.so.p/gstqtsrc.cc.o
ninja: build stopped: subcommand failed.
root@ubuntu-vm:/opt/gstreamer#
I tried to build the subprojects/gst-plugins-good, it shows me this error. Do I need to fix this first? But I don't know how to fix it :(.
Found pkg-config: /usr/bin/pkg-config (0.29.1) Dependency gstreamer-1.0 found: NO found 1.14.2 but need: '>= 1.20.0' Found CMake: /usr/local/bin/cmake (3.16.5) Run-time dependency gstreamer-1.0 found: NO (tried pkgconfig and cmake) Looking for a fallback subproject for the dependency gstreamer-1.0
meson.build:255:0: ERROR: Neither a subproject directory nor a gstreamer.wrap file was found.
A full log can be found at /opt/gstreamer/subprojects/gst-plugins-good/build/meson-logs/meson-log.txt
Hi,
May you teach me why there are difference between them?
Not sure, as the github one should be a mirror of the gitlab one. Anyway, gitlab is the official one for gstreamer.
About the compilation errors, I'd guess it's about the compiler version you're using. Nevertheless, if you are not using those parts of gstreamer (Qt from the failing logs), you could do something like meson -Dgst-plugins-good:qt5=disabled
so not to build Qt support. You can find more information on how to enable/disable parts of gstreamer build here: https://gitlab.freedesktop.org/gstreamer/gst-build/blob/master/README.md
Finally, I don't think you're supposed to go inside the subproject directory to build only it - refer to the link above for more details on how to build gstreamer.
Hi Ederson:
Sorry for replying late. I have tested some ubuntu versions with Gstreamer. Only the ubuntu 22.04 can make it compiled finished and the UI screen of the ubuntu won't be black.
Now, I'm going to test the Gstreamer. I confirm my gstreamer has the "videotestsrc". But, testing it will show me the "no element of the videotestsrc". May you guide me how to solve this?
I have read almost > 50 articles by google. None of them fixes my issue. :(.
BR Rio
It seems that you are having problems with gstreamer itself, not the avtp plugin. Maybe try asking on gstreamer forums, mailing list, IRC?
You definitely need to build gstreamer. Are you building it? If so, can you share the log from gstreamer build, please?
Hi guys,
I hope you have solved the problems. Can you give me a hand? I find the same problem after building the libavtp. My system is Ubuntu 20.04. I have installed GStreamer by using the command:
$ sudo apt-get install gcc build-essential libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good \ gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools \ gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-qt5 gstreamer1.0-pulseaudio
Then, I downloaded the libavtp from https://github.com/AVnu/libavtp, and built it successfully. However, I also get the message "No such element or plugin 'avtp'" when I try "gst-inspect-1.0 avtp".
Hi @KilledByBugs,
You need to rebuild gstreamer so that it can find libavtp during build time - if it was built without support for it, just getting libavtp after won't help.
Hi @KilledByBugs,
You need to rebuild gstreamer so that it can find libavtp during build time - if it was built without support for it, just getting libavtp after won't help.
Hi Ederson,
Thank you so much for your reply. I am going to uninstall my GStreamer now. Do you think the AVTP plugin will work if I re-install GStreamer using apt? Do I have to build GStreamer from source code using meson and ninja?
You need to build it from source - shouldn't be hard, though.
You need to build it from source - shouldn't be hard, though. The AVTP plugin doesn't work after a build of GStreamer. It's not that easy for me to build GStreamer from the source. I need to install a lot of dependencies. Also, my Ubuntu crashed when I uninstalled libgstreamer to re-installing GStreamer last time.😂 I am going to try AVTP plugin in Ubuntu 22.04 now. Thank you anyway.
Hi.
1. I have install the libavtp, log is like below.
2. But, I'm fail to use the gstreamer to test with avtp.
root@ubuntu-vm:/opt/libavtp# sudo ninja -C build install ninja: Entering directory `build' ninja: warning: bad deps log signature or version; starting over [24/25] Installing files. Installing libavtp.so.0.1.0 to /usr/local/lib/x86_64-linux-gnu Installing symlink pointing to libavtp.so.0.1.0 to /usr/local/lib/x86_64-linux-gnu/libavtp.so.0 Installing symlink pointing to libavtp.so.0 to /usr/local/lib/x86_64-linux-gnu/libavtp.so Installing /opt/libavtp/include/avtp.h to /usr/local/include Installing /opt/libavtp/include/avtp_aaf.h to /usr/local/include Installing /opt/libavtp/include/avtp_crf.h to /usr/local/include Installing /opt/libavtp/include/avtp_cvf.h to /usr/local/include Installing /opt/libavtp/include/avtp_rvf.h to /usr/local/include Installing /opt/libavtp/include/avtp_ieciidc.h to /usr/local/include Installing /opt/libavtp/build/meson-private/avtp.pc to /usr/local/lib/x86_64-linux-gnu/pkgconfig NOTICE: You are using Python 3.6 which is EOL. Starting with v0.62.0, Meson will require Python 3.7 or newer root@ubuntu-vm:/opt/libavtp# cd ..
3. This is my error, may you guide me how to solve it?
root@ubuntu-vm:/opt# cd gstreamer/ root@ubuntu-vm:/opt/gstreamer# gst-inspect-1.0 avtp No such element or plugin 'avtp'
Thanks.
BR Rio