GStreamer issueshttps://gitlab.freedesktop.org/groups/gstreamer/-/issues2021-07-14T14:11:02Zhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/891gstqmlgl plugin not found2021-07-14T14:11:02Znew-user-namegstqmlgl plugin not found1.18.4, Windows 10, QT Creator, QT 5.12.11, both MinGW and Msvc.
1) I cloned [gst-plugins-good](https://github.com/GStreamer/gst-plugins-good) reverting back to 1.18 ver. to keep on the same branch with dev. pack.
3) All steps from here...1.18.4, Windows 10, QT Creator, QT 5.12.11, both MinGW and Msvc.
1) I cloned [gst-plugins-good](https://github.com/GStreamer/gst-plugins-good) reverting back to 1.18 ver. to keep on the same branch with dev. pack.
3) All steps from here
[gst-plugins-good/qt](https://github.com/GStreamer/gst-plugins-good/tree/master/ext/qt), Windows part, no questions.
4) Build is OK, gstqmlgl.dll copied to C:\gstreamer\1.0\mingw_x86_64\lib\gstreamer-1.0\
And
```> gst-inspect-1.0 gstqmlgl.dll```
gives me
```
> (gst-inspect-1.0:3360): GStreamer-WARNING **: 23:25:49.199: Failed to load plugin 'gstqmlgl.dll': 'gstqmlgl.dll': The specified module could not be found.
> Could not load plugin file: Opening module failed: 'gstqmlgl.dll': The specified module could not be found.
```
Any other dll file from this folder is OK.
The same result is for Msvc compiler.https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/344New pages documentation has broken links to gtk-rs2021-06-02T11:05:41ZNirbheek Chauhannirbheek.chauhan@gmail.comNew pages documentation has broken links to gtk-rsAll links that point to gtk-rs are 404, for example on this page: https://gstreamer.pages.freedesktop.org/gstreamer-rs/stable/latest/docs/gstreamer/prelude/trait.ObjectExt.html#tymethod.connect
`glib::Value` points to https://gtk-rs.org...All links that point to gtk-rs are 404, for example on this page: https://gstreamer.pages.freedesktop.org/gstreamer-rs/stable/latest/docs/gstreamer/prelude/trait.ObjectExt.html#tymethod.connect
`glib::Value` points to https://gtk-rs.org/gtk-rs-core/stable/0.10/docs/glib/value/struct.Value.html which is 404.
The actual link is https://gtk-rs.org/gtk-rs-core/git/docs/glib/value/struct.Value.html
Not sure if this is a bug in the generator or on the gtk-rs website.https://gitlab.freedesktop.org/gstreamer/www/-/issues/37No links to IRC channels2021-06-14T19:16:57ZBastien NoceraNo links to IRC channelsI'm guessing that the GStreamer IRC channels might have moved, but there's no mention of them anywhere on the front page, and there doesn't seem to be any sections that would be relevant to having them.
Maybe the mailing-lists page coul...I'm guessing that the GStreamer IRC channels might have moved, but there's no mention of them anywhere on the front page, and there doesn't seem to be any sections that would be relevant to having them.
Maybe the mailing-lists page could be renamed to a "Contact" or "Discussion" page and include those?https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1600rsvgoverlay: allow dynamic images through data_sink2021-09-24T14:39:23ZBrett Downingrsvgoverlay: allow dynamic images through data_sink## issue:
rsvgoverlay cannot render a sequence of more than one svg frame from its data_sink, while rsvgdec can.
## cause:
rsvgoverlay waits for an EoF event before rendering a frame.
This prevents stream sources from being able to trig...## issue:
rsvgoverlay cannot render a sequence of more than one svg frame from its data_sink, while rsvgdec can.
## cause:
rsvgoverlay waits for an EoF event before rendering a frame.
This prevents stream sources from being able to trigger a push event, and once a push event has been triggered, it prevents the overlay from being updated.
This is fine for loading static images from filesrc, but that use-case is well-supported via the location property.
Other bugs prevent live animations in rsvgdec from being easily composited over a video.
## proposed fix:
rsvgdec contains logic to look for `</svg>` to trigger a push event, this can be replicated in rsvgoverlay. See [this comment](https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/blob/master/ext/rsvg/gstrsvgoverlay.c#L333)
Should I try to make a pull request?
edits: clarify this issue doesn't relate to svg animation featureshttps://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/3071.18 gstreamer-vaapi build through gst-build fails with "Dependency gstreamer...2021-06-03T22:10:55ZGuru Govindan1.18 gstreamer-vaapi build through gst-build fails with "Dependency gstreamer-gl-x11-1.0 from subproject subprojects/gst-plugins-base found: NO"The following is my build command
> git checkout 1.18 && \
> meson build_dir/ \
> -Dbad=enabled \
> -Dbase=enabled \
> -Ddevtools=enabled \
> -Dgood=enabled \
> -Dugly=enabled \
> -Dlib...The following is my build command
> git checkout 1.18 && \
> meson build_dir/ \
> -Dbad=enabled \
> -Dbase=enabled \
> -Ddevtools=enabled \
> -Dgood=enabled \
> -Dugly=enabled \
> -Dlibav=disabled \
> -Dqt5=disabled \
> -Drtsp_server=enabled \
> -DFFmpeg:vaapi=disabled \
> -Dvaapi=enabled \
> -Dgst-plugins-vaapi:vaapih264dec=enabled \
> -Dgst-plugins-vaapi:vaapih264enc=enabled \
> -Dgst-plugins-vaapi:vaapih265dec=enabled \
> -Dgst-plugins-vaapi:vaapih265enc=enabled \
> -Dgst-plugins-bad:nvcodec=enabled \
> -Dgst-plugins-bad:msdk=enabled \
> -Dgst-plugins-bad:mpegtsdemux=enabled \
> -Dgst-plugins-bad:videoparsers=enabled \
> -Dgst-plugins-base:videoscale=enabled \
> -Dgst-plugins-base:videoconvert=enabled
I am able to build with 1.16 but it does not produce the vaapi plugins thoughhttps://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues/43webrtc-unidirectional-h264 fails to display output2021-08-30T06:02:26Zxaldyzwebrtc-unidirectional-h264 fails to display outputHello all,
I am trying to build an application on a Jetson Xavier in which I have the necessity to send video stream from server to client, and I think the most portable way is using some of the HTML standard, and so WebRTC due the low l...Hello all,
I am trying to build an application on a Jetson Xavier in which I have the necessity to send video stream from server to client, and I think the most portable way is using some of the HTML standard, and so WebRTC due the low latency required (and high platform support, even mobile).
I'm trying to use the WebRTC unidirectional sample, everything seems to run fine but I have no video output.
As per title, I used the `webrtc-unidirectional-h264` demo, with some edit to compile in my setup (I am on Ubuntu 18.04 with gstreamer 1.14 from the repository)
- the source part of [video](https://gitlab.freedesktop.org/gstreamer/gst-examples/-/blob/1.19.1/webrtc/sendonly/webrtc-unidirectional-h264.c#L25) and [audio](https://gitlab.freedesktop.org/gstreamer/gst-examples/-/blob/1.19.1/webrtc/sendonly/webrtc-unidirectional-h264.c#L246), using the default `videotestsrc` and `audiotestsrc`.
- I commented the lines for [video and audio priority](https://gitlab.freedesktop.org/gstreamer/gst-examples/-/blob/1.19.1/webrtc/sendonly/webrtc-unidirectional-h264.c#L262-290) and the [utility function for translating the error in string representation](https://gitlab.freedesktop.org/gstreamer/gst-examples/-/blob/1.19.1/webrtc/sendonly/webrtc-unidirectional-h264.c#L202-218), due to compilation and linking errors.
- Removed [`aggregate-mode=zero-latency`](https://gitlab.freedesktop.org/gstreamer/gst-examples/-/blob/1.19.1/webrtc/sendonly/webrtc-unidirectional-h264.c#L243) due to error `Could not create WebRTC pipeline: no property "aggregate-mode" in element "payloader"`
Here is the diff file to replicate the behaviour from 1.19.1 (full procedure to replicate: `git clone https://gitlab.freedesktop.org/gstreamer/gst-examples.git && cd gst-examples && git checkout 1.19.1`, then copy this subsequent section in a file named `patched_version.patch` in the root of the git repository, then run `patch webrtc/sendonly/webrtc-unidirectional-h264.c patched_version.patch`)
<details><summary>patched_version.patch</summary>
```
--- webrtc/sendonly/webrtc-unidirectional-h264.c 2021-06-01 20:32:38.781154551 +0200
+++ webrtc/sendonly//webrtc-unidirectional-h264-patched.c 2021-06-01 21:21:48.728041670 +0200
@@ -22,7 +22,7 @@
#ifdef G_OS_WIN32
#define VIDEO_SRC "mfvideosrc"
#else
-#define VIDEO_SRC "v4l2src"
+#define VIDEO_SRC "videotestsrc"
#endif
gchar *video_priority = NULL;
@@ -199,7 +199,7 @@
return G_SOURCE_CONTINUE;
}
-static GstWebRTCPriorityType
+/*static GstWebRTCPriorityType
_priority_from_string (const gchar * s)
{
GEnumClass *klass =
@@ -215,7 +215,7 @@
return en->value;
return 0;
-}
+}*/
ReceiverEntry *
create_receiver_entry (SoupWebsocketConnection * connection)
@@ -240,10 +240,10 @@
STUN_SERVER " "
VIDEO_SRC
" ! videorate ! videoscale ! video/x-raw,width=640,height=360,framerate=15/1 ! videoconvert ! queue max-size-buffers=1 ! x264enc bitrate=600 speed-preset=ultrafast tune=zerolatency key-int-max=15 ! video/x-h264,profile=constrained-baseline ! queue max-size-time=100000000 ! h264parse ! "
- "rtph264pay config-interval=-1 name=payloader aggregate-mode=zero-latency ! "
+ "rtph264pay config-interval=-1 name=payloader ! "
"application/x-rtp,media=video,encoding-name=H264,payload="
RTP_PAYLOAD_TYPE " ! webrtcbin. "
- "autoaudiosrc is-live=1 ! queue max-size-buffers=1 leaky=downstream ! audioconvert ! audioresample ! opusenc ! rtpopuspay pt="
+ "audiotestsrc is-live=1 ! queue max-size-buffers=1 leaky=downstream ! audioconvert ! audioresample ! opusenc ! rtpopuspay pt="
RTP_AUDIO_PAYLOAD_TYPE " ! webrtcbin. ", &error);
if (error != NULL) {
g_error ("Could not create WebRTC pipeline: %s\n", error->message);
@@ -258,7 +258,7 @@
g_signal_emit_by_name (receiver_entry->webrtcbin, "get-transceivers",
&transceivers);
g_assert (transceivers != NULL && transceivers->len > 1);
- trans = g_array_index (transceivers, GstWebRTCRTPTransceiver *, 0);
+ /*trans = g_array_index (transceivers, GstWebRTCRTPTransceiver *, 0);
g_object_set (trans, "direction",
GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDONLY, NULL);
if (video_priority) {
@@ -287,7 +287,7 @@
gst_webrtc_rtp_sender_set_priority (sender, priority);
g_object_unref (sender);
}
- }
+ }*/
g_array_unref (transceivers);
g_signal_connect (receiver_entry->webrtcbin, "on-negotiation-needed",
```
</details>
The system compiles correctly, when I run it I have tons of messages about data exchange, however the player does not show anything, nor in Safari, Chromium, Edge or Opera. Is there something that I am missing?
The logs are the same if I connect locally using 127.0.0.1, so I doubt is something related to the network. Maybe something about encoding capabilities?
Some log I hope it is useful to debug the error:
<details><summary>Safari @ MacOS</summary>
[Log] Incoming SDP: {"type":"offer","sdp":"v=0\r\no=- 1993126931275653819 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=ice-options:trickle\r\na=msid-semantic:WMS webrtcbin\r\nm=video 9 UDP/TLS/RTP/SAVPF 96\r\nc=IN IP4 0.0.0.0\r\na=setup:actpass\r\na=ice-ufrag:lu20D3z3LHl0iI7TTqqP3YNuTJFz2man\r\na=ice-pwd:cE7Tiga1Gn6B4l7awi03PWEWcIoyKZDF\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:96 H264/90000\r\na=rtcp-fb:96 nack pli\r\na=framerate:15\r\na=fmtp:96 packetization-mode=1;profile-level-id=42c016;sprop-parameter-sets=Z0LAFtoCgL/lwFqDAILSgAAAAwCAAAAPR4sXUA==,aM48gA==\r\na=ssrc:233037786 msid:user1164376075@host-e25a6bc4 webrtctransceiver0\r\na=ssrc:233037786 cname:user1164376075@host-e25a6bc4\r\na=mid:video0\r\na=fingerprint:sha-256 99:CB:AF:CE:97:F2:0E:D3:F5:61:13:FD:17:BB:8D:CD:A7:54:59:01:F6:7F:61:19:D2:61:DB:F9:54:50:8D:F2\r\nm=audio 9 UDP/TLS/RTP/SAVPF 97\r\nc=IN IP4 0.0.0.0\r\na=setup:actpass\r\na=ice-ufrag:jiXz4+d9nMxSw2gES5uRhSElKaBfb7wa\r\na=ice-pwd:qUHdeb9acBBicA3c/xhRsglpOU6vPyn3\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:97 OPUS/48000/2\r\na=rtcp-fb:97 nack pli\r\na=fmtp:97 sprop-maxcapturerate=48000;sprop-stereo=0\r\na=ssrc:1847010302 msid:user1164376075@host-e25a6bc4 webrtctransceiver1\r\na=ssrc:1847010302 cname:user1164376075@host-e25a6bc4\r\na=mid:audio1\r\na=fingerprint:sha-256 99:CB:AF:CE:97:F2:0E:D3:F5:61:13:FD:17:BB:8D:CD:A7:54:59:01:F6:7F:61:19:D2:61:DB:F9:54:50:8D:F2\r\n"} (157.27.80.134, line 22)
[Log] Local description: {"sdp":"v=0\r\no=- 5980986696117147367 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=msid-semantic: WMS\r\nm=video 9 UDP/TLS/RTP/SAVPF 96\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:69+c\r\na=ice-pwd:A0ZeA33MjFaVzV0OVrGCIA/7\r\na=ice-options:trickle\r\na=fingerprint:sha-256 88:EC:D2:07:F5:EF:B2:37:AD:32:BD:A1:8F:C2:E4:F7:30:3B:36:42:E7:4F:A9:76:C2:A4:F3:E8:B5:3A:CD:23\r\na=setup:active\r\na=mid:video0\r\na=recvonly\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:96 H264/90000\r\na=rtcp-fb:96 nack pli\r\na=fmtp:96 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e016\r\nm=audio 9 UDP/TLS/RTP/SAVPF 97\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:oIzh\r\na=ice-pwd:zBL+E+mjO5048bjTDAc2EM8R\r\na=ice-options:trickle\r\na=fingerprint:sha-256 88:EC:D2:07:F5:EF:B2:37:AD:32:BD:A1:8F:C2:E4:F7:30:3B:36:42:E7:4F:A9:76:C2:A4:F3:E8:B5:3A:CD:23\r\na=setup:active\r\na=mid:audio1\r\na=recvonly\r\na=rtcp-mux\r\na=rtpmap:97 OPUS/48000/2\r\na=fmtp:97 minptime=10;useinbandfec=1\r\n","type":"answer"} (157.27.80.134, line 14)
[Log] Sending ICE candidate out: {"candidate":"candidate:1877728010 1 udp 2113937151 14bfa68a-875a-4057-aebc-48b4728b2eac.local 51213 typ host generation 0 ufrag oIzh network-cost 999","sdpMLineIndex":1,"sdpMid":"audio1","usernameFragment":null} (157.27.80.134, line 44)
[Log] Sending ICE candidate out: {"candidate":"candidate:1877728010 1 udp 2113937151 14bfa68a-875a-4057-aebc-48b4728b2eac.local 62754 typ host generation 0 ufrag 69+c network-cost 999","sdpMLineIndex":0,"sdpMid":"video0","usernameFragment":null} (157.27.80.134, line 44)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:1 1 UDP 2013266431 fe80::49f3:4acc:efb5:1837 58777 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:2 1 TCP 1015023871 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:3 1 TCP 1010829567 fe80::49f3:4acc:efb5:1837 47601 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:4 1 UDP 2013266430 fe80::f3c6:4f64:58e3:df95 36294 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:5 1 TCP 1015023870 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:6 1 TCP 1010829566 fe80::f3c6:4f64:58e3:df95 56049 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:7 1 UDP 2013266429 fe80::ec51:750e:663d:bb6e 52203 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:8 1 TCP 1015023869 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:9 1 TCP 1010829565 fe80::ec51:750e:663d:bb6e 42185 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:10 1 UDP 2013266428 169.254.195.26 39135 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:11 1 TCP 1015022591 169.254.195.26 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:12 1 TCP 1010828287 169.254.195.26 33827 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:13 1 UDP 2013266427 192.168.0.1 36804 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:14 1 TCP 1015022847 192.168.0.1 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:15 1 TCP 1010828543 192.168.0.1 44843 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:16 1 UDP 2013266426 157.27.80.134 35701 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:17 1 TCP 1015023103 157.27.80.134 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:18 1 TCP 1010828799 157.27.80.134 44877 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:1 2 UDP 2013266430 fe80::49f3:4acc:efb5:1837 54777 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:2 2 TCP 1015023870 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:3 2 TCP 1010829566 fe80::49f3:4acc:efb5:1837 51639 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:4 2 UDP 2013266429 fe80::f3c6:4f64:58e3:df95 33929 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:5 2 TCP 1015023869 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:6 2 TCP 1010829565 fe80::f3c6:4f64:58e3:df95 53389 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:7 2 UDP 2013266428 fe80::ec51:750e:663d:bb6e 35910 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:8 2 TCP 1015023868 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:9 2 TCP 1010829564 fe80::ec51:750e:663d:bb6e 34779 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:10 2 UDP 2013266427 169.254.195.26 58901 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:11 2 TCP 1015022590 169.254.195.26 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:12 2 TCP 1010828286 169.254.195.26 40087 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:13 2 UDP 2013266426 192.168.0.1 39228 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:14 2 TCP 1015022846 192.168.0.1 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:15 2 TCP 1010828542 192.168.0.1 60339 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:16 2 UDP 2013266425 157.27.80.134 46482 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:17 2 TCP 1015023102 157.27.80.134 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:18 2 TCP 1010828798 157.27.80.134 48353 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:1 1 UDP 2013266431 fe80::49f3:4acc:efb5:1837 41140 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:2 1 TCP 1015023871 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:3 1 TCP 1010829567 fe80::49f3:4acc:efb5:1837 49645 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:4 1 UDP 2013266430 fe80::f3c6:4f64:58e3:df95 37794 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:5 1 TCP 1015023870 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:6 1 TCP 1010829566 fe80::f3c6:4f64:58e3:df95 39619 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:7 1 UDP 2013266429 fe80::ec51:750e:663d:bb6e 35206 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:8 1 TCP 1015023869 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:9 1 TCP 1010829565 fe80::ec51:750e:663d:bb6e 47651 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:10 1 UDP 2013266428 169.254.195.26 49870 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:11 1 TCP 1015022591 169.254.195.26 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:12 1 TCP 1010828287 169.254.195.26 44095 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:13 1 UDP 2013266427 192.168.0.1 55002 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:14 1 TCP 1015022847 192.168.0.1 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:15 1 TCP 1010828543 192.168.0.1 53537 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:16 1 UDP 2013266426 157.27.80.134 46528 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:17 1 TCP 1015023103 157.27.80.134 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:18 1 TCP 1010828799 157.27.80.134 41657 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:1 2 UDP 2013266430 fe80::49f3:4acc:efb5:1837 50358 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:2 2 TCP 1015023870 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:3 2 TCP 1010829566 fe80::49f3:4acc:efb5:1837 52689 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:4 2 UDP 2013266429 fe80::f3c6:4f64:58e3:df95 48415 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:5 2 TCP 1015023869 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:6 2 TCP 1010829565 fe80::f3c6:4f64:58e3:df95 50535 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:7 2 UDP 2013266428 fe80::ec51:750e:663d:bb6e 59398 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:8 2 TCP 1015023868 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:9 2 TCP 1010829564 fe80::ec51:750e:663d:bb6e 48291 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:10 2 UDP 2013266427 169.254.195.26 46775 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:11 2 TCP 1015022590 169.254.195.26 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:12 2 TCP 1010828286 169.254.195.26 58301 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:13 2 UDP 2013266426 192.168.0.1 54679 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:14 2 TCP 1015022846 192.168.0.1 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:15 2 TCP 1010828542 192.168.0.1 47019 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:16 2 UDP 2013266425 157.27.80.134 58716 typ host"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:17 2 TCP 1015023102 157.27.80.134 9 typ host tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:18 2 TCP 1010828798 157.27.80.134 39461 typ host tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:19 1 UDP 1677722111 157.27.80.134 39135 typ srflx raddr 169.254.195.26 rport 39135"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:20 1 TCP 847250431 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:21 1 TCP 843056127 157.27.80.134 33827 typ srflx raddr 169.254.195.26 rport 33827 tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:19 2 UDP 1677722110 157.27.80.134 58901 typ srflx raddr 169.254.195.26 rport 58901"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:22 1 UDP 1677722110 157.27.80.134 36804 typ srflx raddr 192.168.0.1 rport 36804"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:23 1 TCP 847250687 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:24 1 TCP 843056383 157.27.80.134 44843 typ srflx raddr 192.168.0.1 rport 44843 tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:20 2 TCP 847250430 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:21 2 TCP 843056126 157.27.80.134 40087 typ srflx raddr 169.254.195.26 rport 40087 tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:22 2 UDP 1677722109 157.27.80.134 39228 typ srflx raddr 192.168.0.1 rport 39228"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:23 2 TCP 847250686 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:24 2 TCP 843056382 157.27.80.134 60339 typ srflx raddr 192.168.0.1 rport 60339 tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:19 1 UDP 1677722111 157.27.80.134 49870 typ srflx raddr 169.254.195.26 rport 49870"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:20 1 TCP 847250431 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:21 1 TCP 843056127 157.27.80.134 44095 typ srflx raddr 169.254.195.26 rport 44095 tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:19 2 UDP 1677722110 157.27.80.134 46775 typ srflx raddr 169.254.195.26 rport 46775"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:20 2 TCP 847250430 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:21 2 TCP 843056126 157.27.80.134 58301 typ srflx raddr 169.254.195.26 rport 58301 tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:22 1 UDP 1677722110 157.27.80.134 55002 typ srflx raddr 192.168.0.1 rport 55002"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:22 2 UDP 1677722109 157.27.80.134 54679 typ srflx raddr 192.168.0.1 rport 54679"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:23 1 TCP 847250687 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:23 2 TCP 847250686 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:24 1 TCP 843056383 157.27.80.134 53537 typ srflx raddr 192.168.0.1 rport 53537 tcptype passive"} (157.27.80.134, line 30)
[Log] Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:24 2 TCP 843056382 157.27.80.134 47019 typ srflx raddr 192.168.0.1 rport 47019 tcptype passive"} (157.27.80.134, line 30)
</details>
<details><summary>Host stdout</summary>
nvidia@nvidia-desktop:~/test_webrtc$ mak webrtc-unidirectional-h264 && ./webrtc-unidirectional-h264
"gcc" -O0 -ggdb -Wall -fno-omit-frame-pointer webrtc-unidirectional-h264-v2.c -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 -I/usr/include/json-glib-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -lgstwebrtc-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgstsdp-1.0 -lsoup-2.4 -ljson-glib-1.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -o webrtc-unidirectional-h264
webrtc-unidirectional-h264-v2.c: In function ‘create_receiver_entry’:
webrtc-unidirectional-h264-v2.c:225:28: warning: unused variable ‘trans’ [-Wunused-variable]
GstWebRTCRTPTransceiver *trans;
^~~~~
WebRTC page link: http://127.0.0.1:57778/
Processing new websocket connection 0x559d299b20Creating negotiation offer
Negotiation offer created:
v=0
o=- 1993126931275653819 0 IN IP4 0.0.0.0
s=-
t=0 0
a=ice-options:trickle
a=msid-semantic:WMS webrtcbin
m=video 9 UDP/TLS/RTP/SAVPF 96
c=IN IP4 0.0.0.0
a=setup:actpass
a=ice-ufrag:lu20D3z3LHl0iI7TTqqP3YNuTJFz2man
a=ice-pwd:cE7Tiga1Gn6B4l7awi03PWEWcIoyKZDF
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 H264/90000
a=rtcp-fb:96 nack pli
a=framerate:15
a=fmtp:96 packetization-mode=1;profile-level-id=42c016;sprop-parameter-sets=Z0LAFtoCgL/lwFqDAILSgAAAAwCAAAAPR4sXUA==,aM48gA==
a=ssrc:233037786 msid:user1164376075@host-e25a6bc4 webrtctransceiver0
a=ssrc:233037786 cname:user1164376075@host-e25a6bc4
a=mid:video0
a=fingerprint:sha-256 99:CB:AF:CE:97:F2:0E:D3:F5:61:13:FD:17:BB:8D:CD:A7:54:59:01:F6:7F:61:19:D2:61:DB:F9:54:50:8D:F2
m=audio 9 UDP/TLS/RTP/SAVPF 97
c=IN IP4 0.0.0.0
a=setup:actpass
a=ice-ufrag:jiXz4+d9nMxSw2gES5uRhSElKaBfb7wa
a=ice-pwd:qUHdeb9acBBicA3c/xhRsglpOU6vPyn3
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:97 OPUS/48000/2
a=rtcp-fb:97 nack pli
a=fmtp:97 sprop-maxcapturerate=48000;sprop-stereo=0
a=ssrc:1847010302 msid:user1164376075@host-e25a6bc4 webrtctransceiver1
a=ssrc:1847010302 cname:user1164376075@host-e25a6bc4
a=mid:audio1
a=fingerprint:sha-256 99:CB:AF:CE:97:F2:0E:D3:F5:61:13:FD:17:BB:8D:CD:A7:54:59:01:F6:7F:61:19:D2:61:DB:F9:54:50:8D:F2
Received SDP:
v=0
o=- 5980986696117147367 2 IN IP4 127.0.0.1
s=-
t=0 0
a=msid-semantic: WMS
m=video 9 UDP/TLS/RTP/SAVPF 96
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:69+c
a=ice-pwd:A0ZeA33MjFaVzV0OVrGCIA/7
a=ice-options:trickle
a=fingerprint:sha-256 88:EC:D2:07:F5:EF:B2:37:AD:32:BD:A1:8F:C2:E4:F7:30:3B:36:42:E7:4F:A9:76:C2:A4:F3:E8:B5:3A:CD:23
a=setup:active
a=mid:video0
a=recvonly
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 H264/90000
a=rtcp-fb:96 nack pli
a=fmtp:96 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e016
m=audio 9 UDP/TLS/RTP/SAVPF 97
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:oIzh
a=ice-pwd:zBL+E+mjO5048bjTDAc2EM8R
a=ice-options:trickle
a=fingerprint:sha-256 88:EC:D2:07:F5:EF:B2:37:AD:32:BD:A1:8F:C2:E4:F7:30:3B:36:42:E7:4F:A9:76:C2:A4:F3:E8:B5:3A:CD:23
a=setup:active
a=mid:audio1
a=recvonly
a=rtcp-mux
a=rtpmap:97 OPUS/48000/2
a=fmtp:97 minptime=10;useinbandfec=1
Received ICE candidate with mline index 1; candidate: candidate:1877728010 1 udp 2113937151 14bfa68a-875a-4057-aebc-48b4728b2eac.local 51213 typ host generation 0 ufrag oIzh network-cost 999
Received ICE candidate with mline index 0; candidate: candidate:1877728010 1 udp 2113937151 14bfa68a-875a-4057-aebc-48b4728b2eac.local 62754 typ host generation 0 ufrag 69+c network-cost 999
</details>
Using another browser and machine:
<details><summary>Opera @ Windows</summary>
(index):22 Incoming SDP: {"type":"offer","sdp":"v=0\r\no=- 4903925278861460350 0 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=ice-options:trickle\r\na=msid-semantic:WMS webrtcbin\r\nm=video 9 UDP/TLS/RTP/SAVPF 96\r\nc=IN IP4 0.0.0.0\r\na=setup:actpass\r\na=ice-ufrag:7gROvrrpx8z0NZy/+GwjQohAHY50nCNm\r\na=ice-pwd:3d1sSxhX+wt3ttv11LyINrHj28UPM1t0\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:96 H264/90000\r\na=rtcp-fb:96 nack pli\r\na=framerate:15\r\na=fmtp:96 packetization-mode=1;profile-level-id=42c016;sprop-parameter-sets=Z0LAFtoCgL/lwFqDAILSgAAAAwCAAAAPR4sXUA==,aM48gA==\r\na=ssrc:902117246 msid:user3654773533@host-dfba77e1 webrtctransceiver0\r\na=ssrc:902117246 cname:user3654773533@host-dfba77e1\r\na=mid:video0\r\na=fingerprint:sha-256 D7:1E:87:00:E0:B7:A1:CB:4C:C3:3B:4E:E2:0A:BA:0C:4A:CD:BF:18:EF:8E:4F:E7:47:A7:5D:08:50:1B:51:7C\r\nm=audio 9 UDP/TLS/RTP/SAVPF 97\r\nc=IN IP4 0.0.0.0\r\na=setup:actpass\r\na=ice-ufrag:cvvx17DShIvGBa69E/dlFkSKjkAe3OVU\r\na=ice-pwd:25rmFouozTL3lrSiFm1s2kP66f9S1ith\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:97 OPUS/48000/2\r\na=rtcp-fb:97 nack pli\r\na=fmtp:97 sprop-maxcapturerate=48000;sprop-stereo=0\r\na=ssrc:3074109248 msid:user3654773533@host-dfba77e1 webrtctransceiver1\r\na=ssrc:3074109248 cname:user3654773533@host-dfba77e1\r\na=mid:audio1\r\na=fingerprint:sha-256 D7:1E:87:00:E0:B7:A1:CB:4C:C3:3B:4E:E2:0A:BA:0C:4A:CD:BF:18:EF:8E:4F:E7:47:A7:5D:08:50:1B:51:7C\r\n"}
(index):14 Local description: {"type":"answer","sdp":"v=0\r\no=- 6754965593039382874 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=msid-semantic: WMS\r\nm=video 9 UDP/TLS/RTP/SAVPF 96\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:Kx0A\r\na=ice-pwd:9qWarMkRC+Z+cK1RKHMPbxi2\r\na=ice-options:trickle\r\na=fingerprint:sha-256 13:F1:3E:68:9C:6D:1F:A8:88:49:1B:28:9F:02:A5:52:4F:13:68:C2:8E:DA:31:61:30:EA:33:1E:4A:55:A4:07\r\na=setup:active\r\na=mid:video0\r\na=recvonly\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:96 H264/90000\r\na=rtcp-fb:96 nack pli\r\na=fmtp:96 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e016\r\nm=audio 9 UDP/TLS/RTP/SAVPF 97\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:+oCb\r\na=ice-pwd:uIZ/DpMhf1HsT6Ou5YQWFybN\r\na=ice-options:trickle\r\na=fingerprint:sha-256 13:F1:3E:68:9C:6D:1F:A8:88:49:1B:28:9F:02:A5:52:4F:13:68:C2:8E:DA:31:61:30:EA:33:1E:4A:55:A4:07\r\na=setup:active\r\na=mid:audio1\r\na=recvonly\r\na=rtcp-mux\r\na=rtpmap:97 OPUS/48000/2\r\na=fmtp:97 minptime=10;useinbandfec=1\r\n"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:1 1 UDP 2013266431 fe80::49f3:4acc:efb5:1837 44558 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:2 1 TCP 1015023871 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:3 1 TCP 1010829567 fe80::49f3:4acc:efb5:1837 37071 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:4 1 UDP 2013266430 fe80::f3c6:4f64:58e3:df95 46926 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:5 1 TCP 1015023870 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:6 1 TCP 1010829566 fe80::f3c6:4f64:58e3:df95 46221 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:7 1 UDP 2013266429 fe80::ec51:750e:663d:bb6e 57174 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:8 1 TCP 1015023869 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:9 1 TCP 1010829565 fe80::ec51:750e:663d:bb6e 58571 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:10 1 UDP 2013266428 169.254.195.26 48028 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:11 1 TCP 1015022591 169.254.195.26 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:12 1 TCP 1010828287 169.254.195.26 60573 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:13 1 UDP 2013266427 192.168.0.1 60112 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:14 1 TCP 1015022847 192.168.0.1 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:15 1 TCP 1010828543 192.168.0.1 52135 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:16 1 UDP 2013266426 157.27.80.134 34063 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:17 1 TCP 1015023103 157.27.80.134 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:18 1 TCP 1010828799 157.27.80.134 41497 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:1 2 UDP 2013266430 fe80::49f3:4acc:efb5:1837 57491 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:2 2 TCP 1015023870 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:3 2 TCP 1010829566 fe80::49f3:4acc:efb5:1837 44857 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:4 2 UDP 2013266429 fe80::f3c6:4f64:58e3:df95 45729 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:5 2 TCP 1015023869 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:6 2 TCP 1010829565 fe80::f3c6:4f64:58e3:df95 57241 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:7 2 UDP 2013266428 fe80::ec51:750e:663d:bb6e 44028 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:8 2 TCP 1015023868 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:9 2 TCP 1010829564 fe80::ec51:750e:663d:bb6e 59641 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:10 2 UDP 2013266427 169.254.195.26 59975 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:11 2 TCP 1015022590 169.254.195.26 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:12 2 TCP 1010828286 169.254.195.26 55665 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:13 2 UDP 2013266426 192.168.0.1 42344 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:14 2 TCP 1015022846 192.168.0.1 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:15 2 TCP 1010828542 192.168.0.1 38387 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:16 2 UDP 2013266425 157.27.80.134 41572 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:17 2 TCP 1015023102 157.27.80.134 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:18 2 TCP 1010828798 157.27.80.134 35429 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:1 1 UDP 2013266431 fe80::49f3:4acc:efb5:1837 38654 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:2 1 TCP 1015023871 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:3 1 TCP 1010829567 fe80::49f3:4acc:efb5:1837 41059 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:4 1 UDP 2013266430 fe80::f3c6:4f64:58e3:df95 52099 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:5 1 TCP 1015023870 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:6 1 TCP 1010829566 fe80::f3c6:4f64:58e3:df95 44093 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:7 1 UDP 2013266429 fe80::ec51:750e:663d:bb6e 34143 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:8 1 TCP 1015023869 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:9 1 TCP 1010829565 fe80::ec51:750e:663d:bb6e 55415 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:10 1 UDP 2013266428 169.254.195.26 52292 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:11 1 TCP 1015022591 169.254.195.26 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:12 1 TCP 1010828287 169.254.195.26 49253 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:13 1 UDP 2013266427 192.168.0.1 59704 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:14 1 TCP 1015022847 192.168.0.1 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:15 1 TCP 1010828543 192.168.0.1 59757 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:16 1 UDP 2013266426 157.27.80.134 36597 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:17 1 TCP 1015023103 157.27.80.134 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:18 1 TCP 1010828799 157.27.80.134 48893 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:1 2 UDP 2013266430 fe80::49f3:4acc:efb5:1837 58405 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:2 2 TCP 1015023870 fe80::49f3:4acc:efb5:1837 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:3 2 TCP 1010829566 fe80::49f3:4acc:efb5:1837 53515 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:4 2 UDP 2013266429 fe80::f3c6:4f64:58e3:df95 59829 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:5 2 TCP 1015023869 fe80::f3c6:4f64:58e3:df95 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:6 2 TCP 1010829565 fe80::f3c6:4f64:58e3:df95 38239 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:7 2 UDP 2013266428 fe80::ec51:750e:663d:bb6e 45192 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:8 2 TCP 1015023868 fe80::ec51:750e:663d:bb6e 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:9 2 TCP 1010829564 fe80::ec51:750e:663d:bb6e 37461 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:10 2 UDP 2013266427 169.254.195.26 59691 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:11 2 TCP 1015022590 169.254.195.26 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:12 2 TCP 1010828286 169.254.195.26 48979 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:13 2 UDP 2013266426 192.168.0.1 42601 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:14 2 TCP 1015022846 192.168.0.1 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:15 2 TCP 1010828542 192.168.0.1 36507 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:16 2 UDP 2013266425 157.27.80.134 39682 typ host"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:17 2 TCP 1015023102 157.27.80.134 9 typ host tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:18 2 TCP 1010828798 157.27.80.134 45285 typ host tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:19 1 UDP 1677722111 157.27.80.134 60112 typ srflx raddr 192.168.0.1 rport 60112"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:20 1 TCP 847250687 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:21 1 TCP 843056383 157.27.80.134 52135 typ srflx raddr 192.168.0.1 rport 52135 tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:28 1 UDP 1677722110 157.27.80.134 48028 typ srflx raddr 169.254.195.26 rport 48028"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:29 1 TCP 847250431 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:30 1 TCP 843056127 157.27.80.134 60573 typ srflx raddr 169.254.195.26 rport 60573 tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:28 2 UDP 1677722110 157.27.80.134 59975 typ srflx raddr 169.254.195.26 rport 59975"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:29 2 TCP 847250430 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:30 2 TCP 843056126 157.27.80.134 55665 typ srflx raddr 169.254.195.26 rport 55665 tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:19 2 UDP 1677722109 157.27.80.134 42344 typ srflx raddr 192.168.0.1 rport 42344"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:20 2 TCP 847250686 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":0,"candidate":"candidate:21 2 TCP 843056382 157.27.80.134 38387 typ srflx raddr 192.168.0.1 rport 38387 tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:19 1 UDP 1677722111 157.27.80.134 59704 typ srflx raddr 192.168.0.1 rport 59704"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:20 1 TCP 847250687 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:21 1 TCP 843056383 157.27.80.134 59757 typ srflx raddr 192.168.0.1 rport 59757 tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:28 2 UDP 1677722110 157.27.80.134 59691 typ srflx raddr 169.254.195.26 rport 59691"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:29 2 TCP 847250430 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:30 2 TCP 843056126 157.27.80.134 48979 typ srflx raddr 169.254.195.26 rport 48979 tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:19 2 UDP 1677722109 157.27.80.134 42601 typ srflx raddr 192.168.0.1 rport 42601"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:20 2 TCP 847250686 157.27.80.134 9 typ srflx raddr 192.168.0.1 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:28 1 UDP 1677722110 157.27.80.134 52292 typ srflx raddr 169.254.195.26 rport 52292"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:21 2 TCP 843056382 157.27.80.134 36507 typ srflx raddr 192.168.0.1 rport 36507 tcptype passive"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:29 1 TCP 847250431 157.27.80.134 9 typ srflx raddr 169.254.195.26 rport 9 tcptype active"}
(index):30 Incoming ICE: {"sdpMLineIndex":1,"candidate":"candidate:30 1 TCP 843056127 157.27.80.134 49253 typ srflx raddr 169.254.195.26 rport 49253 tcptype passive"}
(index):44 Sending ICE candidate out: {"candidate":"candidate:828040756 1 udp 2113937151 f5e16b95-9a3b-4ca7-8df7-4d240b597e8c.local 60696 typ host generation 0 ufrag +oCb network-cost 999","sdpMid":"audio1","sdpMLineIndex":1}
(index):44 Sending ICE candidate out: {"candidate":"candidate:1579368026 1 udp 2113939711 616c3e9e-18d3-42b8-b1d5-35b4bc7ac642.local 60697 typ host generation 0 ufrag +oCb network-cost 999","sdpMid":"audio1","sdpMLineIndex":1}
(index):44 Sending ICE candidate out: {"candidate":"candidate:828040756 1 udp 2113937151 f5e16b95-9a3b-4ca7-8df7-4d240b597e8c.local 60698 typ host generation 0 ufrag Kx0A network-cost 999","sdpMid":"video0","sdpMLineIndex":0}
(index):44 Sending ICE candidate out: {"candidate":"candidate:1579368026 1 udp 2113939711 616c3e9e-18d3-42b8-b1d5-35b4bc7ac642.local 60699 typ host generation 0 ufrag Kx0A network-cost 999","sdpMid":"video0","sdpMLineIndex":0}
</details>
<details><summary>Host stdout</summary>
nvidia@nvidia-desktop:~/test_webrtc$ make webrtc-unidirectional-h264 && ./webrtc-unidirectional-h264
make: Nothing to be done for 'all'.
WebRTC page link: http://127.0.0.1:57778/
Processing new websocket connection 0x55aa63db20Creating negotiation offer
Negotiation offer created:
v=0
o=- 4903925278861460350 0 IN IP4 0.0.0.0
s=-
t=0 0
a=ice-options:trickle
a=msid-semantic:WMS webrtcbin
m=video 9 UDP/TLS/RTP/SAVPF 96
c=IN IP4 0.0.0.0
a=setup:actpass
a=ice-ufrag:7gROvrrpx8z0NZy/+GwjQohAHY50nCNm
a=ice-pwd:3d1sSxhX+wt3ttv11LyINrHj28UPM1t0
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 H264/90000
a=rtcp-fb:96 nack pli
a=framerate:15
a=fmtp:96 packetization-mode=1;profile-level-id=42c016;sprop-parameter-sets=Z0LAFtoCgL/lwFqDAILSgAAAAwCAAAAPR4sXUA==,aM48gA==
a=ssrc:902117246 msid:user3654773533@host-dfba77e1 webrtctransceiver0
a=ssrc:902117246 cname:user3654773533@host-dfba77e1
a=mid:video0
a=fingerprint:sha-256 D7:1E:87:00:E0:B7:A1:CB:4C:C3:3B:4E:E2:0A:BA:0C:4A:CD:BF:18:EF:8E:4F:E7:47:A7:5D:08:50:1B:51:7C
m=audio 9 UDP/TLS/RTP/SAVPF 97
c=IN IP4 0.0.0.0
a=setup:actpass
a=ice-ufrag:cvvx17DShIvGBa69E/dlFkSKjkAe3OVU
a=ice-pwd:25rmFouozTL3lrSiFm1s2kP66f9S1ith
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:97 OPUS/48000/2
a=rtcp-fb:97 nack pli
a=fmtp:97 sprop-maxcapturerate=48000;sprop-stereo=0
a=ssrc:3074109248 msid:user3654773533@host-dfba77e1 webrtctransceiver1
a=ssrc:3074109248 cname:user3654773533@host-dfba77e1
a=mid:audio1
a=fingerprint:sha-256 D7:1E:87:00:E0:B7:A1:CB:4C:C3:3B:4E:E2:0A:BA:0C:4A:CD:BF:18:EF:8E:4F:E7:47:A7:5D:08:50:1B:51:7C
Received SDP:
v=0
o=- 6754965593039382874 2 IN IP4 127.0.0.1
s=-
t=0 0
a=msid-semantic: WMS
m=video 9 UDP/TLS/RTP/SAVPF 96
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:Kx0A
a=ice-pwd:9qWarMkRC+Z+cK1RKHMPbxi2
a=ice-options:trickle
a=fingerprint:sha-256 13:F1:3E:68:9C:6D:1F:A8:88:49:1B:28:9F:02:A5:52:4F:13:68:C2:8E:DA:31:61:30:EA:33:1E:4A:55:A4:07
a=setup:active
a=mid:video0
a=recvonly
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 H264/90000
a=rtcp-fb:96 nack pli
a=fmtp:96 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e016
m=audio 9 UDP/TLS/RTP/SAVPF 97
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:+oCb
a=ice-pwd:uIZ/DpMhf1HsT6Ou5YQWFybN
a=ice-options:trickle
a=fingerprint:sha-256 13:F1:3E:68:9C:6D:1F:A8:88:49:1B:28:9F:02:A5:52:4F:13:68:C2:8E:DA:31:61:30:EA:33:1E:4A:55:A4:07
a=setup:active
a=mid:audio1
a=recvonly
a=rtcp-mux
a=rtpmap:97 OPUS/48000/2
a=fmtp:97 minptime=10;useinbandfec=1
Received ICE candidate with mline index 1; candidate: candidate:828040756 1 udp 2113937151 f5e16b95-9a3b-4ca7-8df7-4d240b597e8c.local 60696 typ host generation 0 ufrag +oCb network-cost 999
Received ICE candidate with mline index 1; candidate: candidate:1579368026 1 udp 2113939711 616c3e9e-18d3-42b8-b1d5-35b4bc7ac642.local 60697 typ host generation 0 ufrag +oCb network-cost 999
Received ICE candidate with mline index 0; candidate: candidate:828040756 1 udp 2113937151 f5e16b95-9a3b-4ca7-8df7-4d240b597e8c.local 60698 typ host generation 0 ufrag Kx0A network-cost 999
Received ICE candidate with mline index 0; candidate: candidate:1579368026 1 udp 2113939711 616c3e9e-18d3-42b8-b1d5-35b4bc7ac642.local 60699 typ host generation 0 ufrag Kx0A network-cost 999
</details>https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/909gstopengl compiles with NEON flag enabled even while compiling on ARMv62021-06-07T04:39:30ZSeongyong Parkgstopengl compiles with NEON flag enabled even while compiling on ARMv6Version: Gstreamer 1.18.4
gst-inspect-1.0 on libgstopengl.so fails with `Illegal instruction`, and blacklists it.
When inspected with readelf, libgstopengl.so shows `Tag_FP_arch VFPv3`, even though armv6h supports up to VFPv2.
Archl...Version: Gstreamer 1.18.4
gst-inspect-1.0 on libgstopengl.so fails with `Illegal instruction`, and blacklists it.
When inspected with readelf, libgstopengl.so shows `Tag_FP_arch VFPv3`, even though armv6h supports up to VFPv2.
Archlinux ARM's armv6h gst-plugin-base package shows this, too: https://archlinuxarm.org/packages/armv6h/gst-plugins-base
When building on my own, I found `-mvfp=neon` flag getting enabled only on gstopengl related build targets inside `compile_commands.json` and `build.ninja`.
It persisted even when I disabled NEON test inside meson.build entirely: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/blob/1.18/meson.build#L373-383
I had to manually modify the build options from these two files after meson command. gstopengl works well with the binary I built.
There seems to be another source that turns on `-mvfp=neon` for these, but I can't tell which.https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/343Extend the example for EncodeBin by setting a specific encoder / bitrate / fr...2021-06-07T15:34:54ZRico BeierExtend the example for EncodeBin by setting a specific encoder / bitrate / framerate...It might be a useful addition the example of EncodeBin to show how the use can set more specific options for the Audio/Video-Encoding-Profiles like:
- a specific encoder (nvenc for h264, ...)
- bitrate, framerate, codec-specific quality ...It might be a useful addition the example of EncodeBin to show how the use can set more specific options for the Audio/Video-Encoding-Profiles like:
- a specific encoder (nvenc for h264, ...)
- bitrate, framerate, codec-specific quality options.
I combined the example of GES and EncodeBin to render a demo video. But I'm totally lost on how to be more specific about the used encoder and its settings.https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/329android: target latest LTS ndk (r25)2023-06-07T08:59:52ZImanol Fernández Gorostizagaandroid: target latest LTS ndk (r25)https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1599webrtc: DTLS setup with Chrome is broken2021-06-29T07:42:10ZSebastian Drögewebrtc: DTLS setup with Chrome is brokenThe following discussion from !2260 should be addressed:
- [ ] @slomo started a [discussion](https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2260#note_939120): (+1 comment)
> This commit (51821644bae58d5c...The following discussion from !2260 should be addressed:
- [ ] @slomo started a [discussion](https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2260#note_939120): (+1 comment)
> This commit (51821644bae58d5c87eca2551e51bda78560e029) breaks DTLS with Chrome:
>
> ```
> 0:00:01.315852160 688028 0x7fd8ec001b00 ERROR dtlsconnection gstdtlsconnection.c:985:handle_error:<GstDtlsConnection@0x7fd8ec008340> Fatal SSL error
> 0:00:01.315884488 688028 0x7fd8ec001b00 ERROR dtlsconnection gstdtlsconnection.c:968:ssl_err_cb:<GstDtlsConnection@0x7fd8ec008340> ssl error: 140568977995520:error:1420B114:SSL routines:ssl_read_internal:uninitialized:../ssl/ssl_lib.c:1735:
>
> 0:00:01.315905178 688028 0x7fd8ec001b00 ERROR dtlsdec gstdtlsdec.c:505:process_buffer:<dtlsdec0> Error processing buffer: Fatal SSL error
> 0:00:01.315937574 688028 0x7fd8ec001b00 ERROR dtlsdec gstdtlsdec.c:620:sink_chain:<dtlsdec0> Failed to process buffer: error
> ```1.19.2https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/89the "Your first application" example code does not run, gst_pad_link() return...2021-09-24T16:20:08ZZheng Lithe "Your first application" example code does not run, gst_pad_link() return GST_PAD_LINK_NOFORMATHi,
I'm studying GStreamer by reading the official tutorial, the example code in ["Your first application"](https://gstreamer.freedesktop.org/documentation/application-development/basics/helloworld.html?gi-language=c#your-first-applic...Hi,
I'm studying GStreamer by reading the official tutorial, the example code in ["Your first application"](https://gstreamer.freedesktop.org/documentation/application-development/basics/helloworld.html?gi-language=c#your-first-application) can be compiled on my machine,but it does not run,I found the call to gst_pad_link() in on_pad_added() encounter error,the return value of gst_pad_link() is GST_PAD_LINK_NOFORMAT, what's the meaning of the error? How to fix the problem? My platform is Windows 10, I compile the example code using VC2019;https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/342API docs site down2021-05-29T16:01:06ZAlberto RuizAPI docs site downThe docs site seems to be down:
https://gstreamer.pages.freedesktop.org/gstreamer-rs/gstreamer/index.htmlThe docs site seems to be down:
https://gstreamer.pages.freedesktop.org/gstreamer-rs/gstreamer/index.htmlhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/890matroskademu: Fails to process one of the VP9 conformance stream2021-11-08T20:30:49ZNicolas Dufresnematroskademu: Fails to process one of the VP9 conformance streamI've got one remaining compliance failure with vp9dec, and in that case it seems that the demuxer is bailing out.
```
0:00:00.118358011 53995 0x1c3f400 WARN matroskademux matroska-demux.c:2415:gst_matroska_demux_peek_clus...I've got one remaining compliance failure with vp9dec, and in that case it seems that the demuxer is bailing out.
```
0:00:00.118358011 53995 0x1c3f400 WARN matroskademux matroska-demux.c:2415:gst_matroska_demux_peek_cluster_info:<matroskademux0> Unknown ebml id 0x1c53bb6b (possibly garbage), bailing out
```
https://storage.googleapis.com/downloads.webmproject.org/test_data/libvpx/vp90-2-16-intra-only.webmhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/908`GstAudioMeta` receives section docs in g-ir2021-09-24T13:26:22ZMarijn Suijten`GstAudioMeta` receives section docs in g-ir`GstAudioMeta` has its own documentation in:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/blob/78e7612eb0707cda85baa0d2848b66e468ae7929/gst-libs/gst/audio/gstaudiometa.h#L134-174
Strangely enough G-IR reflection ends up ...`GstAudioMeta` has its own documentation in:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/blob/78e7612eb0707cda85baa0d2848b66e468ae7929/gst-libs/gst/audio/gstaudiometa.h#L134-174
Strangely enough G-IR reflection ends up with te documentation of the `gstaudiomeda.c` file:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/blob/78e7612eb0707cda85baa0d2848b66e468ae7929/gst-libs/gst/audio/gstaudiometa.c#L20-28
`GstAudio-1.0.gir` contains:
```xml
<record name="AudioMeta" c:type="GstAudioMeta" version="1.16">
<doc xml:space="preserve"
filename="../gst-libs/gst/audio/gstaudiometa.c"
line="20">#GstAudioDownmixMeta defines an audio downmix matrix to be send along with
audio buffers. These functions in this module help to create and attach the
meta as well as extracting it.</doc>
<source-position filename="../gst-libs/gst/audio/gstaudiometa.h"
line="185"/>
```
Any idea what causes this and if it can be rectified? It looks like more types suffer this issue but don't have any documentation on the type itself when the filename is the same. Should the type documentation simply be moved under `SECTION:gstaudiometa`?https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1598webrtcbin: First keyframe is usually lost2021-11-03T09:20:46ZSebastian Drögewebrtcbin: First keyframe is usually lostThe following discussion from !2260 should be addressed:
- [ ] @thaytan started a [discussion](https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2260#note_935859): (+8 comments)
> > This pad probe is no lon...The following discussion from !2260 should be addressed:
- [ ] @thaytan started a [discussion](https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2260#note_935859): (+8 comments)
> > This pad probe is no longer necessary, libnice now drops all buffers before the stream is connected.
>
> Does that mean we implicitly now depend on a particular libnice release, and if so which one?
>
> Dropping packets at the start probably means we'll always lose bits of our initial keyframe for video. It might be good if we requested a keyframe automatically as soon as the connection is established.https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/889rtpjpegpay: Passing JPEG images through 'rtpjpegpay' and 'rtpjpegdepay' resul...2021-06-02T18:24:34ZAbleBaconrtpjpegpay: Passing JPEG images through 'rtpjpegpay' and 'rtpjpegdepay' results in corrupt output on Windows# Details
On Windows, version 1.18.4:
This pipeline (on both Windows and Linux) results in a corrupted output:
```filesrc location=C:/test_in.jpeg ! jpegparse ! rtpjpegpay ! rtpjpegdepay ! filesink location=C:/test_out.jpeg```
This p...# Details
On Windows, version 1.18.4:
This pipeline (on both Windows and Linux) results in a corrupted output:
```filesrc location=C:/test_in.jpeg ! jpegparse ! rtpjpegpay ! rtpjpegdepay ! filesink location=C:/test_out.jpeg```
This pipeline (possibly only on Windows) also results in a corrupted output:
```videotestsrc ! jpegenc ! rtpjpegpay ! rtpjpegdepay ! jpegdec ! autovideosink```
In either of the above pipelines, it's easy to confirm that the payloader and/or depayloader are responsible for this by simply removing them from the pipeline. I am confident that it is the payloader and/or depayloader that are at fault based on several hours of trying different combinations of encoders, decoders, and other methods of sending and receiving JPEG data, also using different pixel formats.
| Result Without Payloader and Depayloader | Result with Payloader and Depayloader |
| ------ | ------ |
| ![capture2_test_pay2](/uploads/3df2dc21b278cc81e4d5db0ee581e3e8/capture2_test_pay2.jpeg) | ![capture2_test_pay](/uploads/9f1bbd667361d0da33b1ca3c623f04cf/capture2_test_pay.jpeg)|
You can see that the result with the payloader and depayloader (the "corrupted" image):
1. has the wrong colors (too bright),
2. is shifted over to the left (and wraps back around on the right), and
3. has a small corrupted rectangle in the bottom right corner.
Certain images may only exhibit the first problem.
# Research
I haven't been able to determine what specifically might be causing this, but I have made three important observations about the image that results from passing through the payloader and depayloader:
1. Any `APP0` headers from the original image (the "uncorrupted" image) will be missing.
2. Each color component has an ID 1 less than those of the uncorrupted image (0, 1, 2 instead of 1, 2, 3).
3. Two consecutive bytes are missing from the `SOS` section (this can occur in different places depending on the image)
It seems that fixing the third issue on any given image (adding back in the two missing consecutive bytes) is enough to fix the result image so that it is identical to the uncorrupted image.
I made these observations:
- using `xxd` via my MinGW terminal to convert JPEG images into hexadecimal (and back),
- comparing hexadecimal dumps of images using a diff tool,
- examining RTP packets prepared by the payloading using Wireshark, and
- comparing JPEG header contents using the tool at https://cyber.meme.tips/jpdump/https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/888The 'width' and 'height' caps for 'jpegenc' do not match what is displayed by...2021-06-02T19:05:24ZAbleBaconThe 'width' and 'height' caps for 'jpegenc' do not match what is displayed by 'gst-inspect'.Using version 1.18.4 on Windows:
Running `gst-inspect-1.0 jpegenc` displays (in part) the following, indicating a minimum value of "1" for both the 'width' and 'height' caps:
```
SINK template: 'sink'
Availability: Always
Capa...Using version 1.18.4 on Windows:
Running `gst-inspect-1.0 jpegenc` displays (in part) the following, indicating a minimum value of "1" for both the 'width' and 'height' caps:
```
SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw
format: { (string)I420, (string)YV12, (string)YUY2, (string)UYVY, (string)Y41B, (string)Y42B, (string)YVYU, (string)Y444, (string)NV21, (string)NV12, (string)RGB, (string)BGR, (string)RGBx, (string)xRGB, (string)BGRx, (string)xBGR, (string)GRAY8 }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
```
However, running a `videotestsrc ! video/x-raw,width=1,height=1 ! jpegenc ! fakesink` pipeline results (in part) in the following message in console:
```
GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:760:gst_parse_perform_link: could not link videotestsrc0 to jpegenc0, jpegenc0 can't handle caps video/x-raw, width=(int)1, height=(int)1
```
This pipeline also results in the message:
```videotestsrc ! video/x-raw,width=15,height=15 ! jpegenc ! fakesink```
This pipeline does not result in the message:
```videotestsrc ! video/x-raw,width=16,height=16 ! jpegenc ! fakesink```
So the runtime believes that 'width' and 'height' can be as low as "16", but `gst-streamer` believes that they can be as low as "1"--so this discrepancy should be fixed.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/703GstMiniObject is not compatible with GLIB2 type checking2022-07-19T20:54:13ZLibor BukataGstMiniObject is not compatible with GLIB2 type checkingGstMiniObject is not type compatible with GObject, and therefore, usage of G_IS_OBJECT and GST_IS_OBJECT macros is not safe. It manifested with multiple crashes on SPARC during unit tests. The issue is, however, not SPARC specific, x86 c...GstMiniObject is not type compatible with GObject, and therefore, usage of G_IS_OBJECT and GST_IS_OBJECT macros is not safe. It manifested with multiple crashes on SPARC during unit tests. The issue is, however, not SPARC specific, x86 crashes as well when TypeNode's ref_count is larger than 3 ('utype & ~TYPE_ID_MASK' in lookup_type_node_I resets only two lower bits).
In file gstminiobject.h:
> struct _GstMiniObject {
> GType type; <- 32 or 64 bit integer based on platform
> ....
However, G_IS_OBJECT and GST_IS_OBJECT macros expect a different type format:
> struct _GObject {
> GTypeInstance g_type_instance; <- pointer to GType
> ...
> struct _GTypeInstance {
> GTypeClass *g_class;
> }
> struct _GTypeClass {
> GType g_type;
> }
G_IS_OBJECT macro:
1) converts obj* to GTypeInstance* type_instance
2) calls g_type_check_instance_is_fundamentally_a(type_instance, ...)
3) calls lookup_type_node_I (type_instance->g_class->g_type)
The problem is that double dereference is not valid for GstMiniObject:<br>
type_instance->g_class (mini_obj->type)<br>
type_instance->g_class->gtype (contents of TypeNode)
> struct _TypeNode
> {
> guint volatile ref_count;
> #ifdef G_ENABLE_DEBUG
> guint volatile instance_count;
> #endif
> ...
As a result, lookup_type_node_I returns 0x|ref_count|instance_count| (e.g., 0x0000000100000000 on SPARC) as a TypeNode pointer...
The best should be to change _GstMiniObject structure to use GTypeClass instead of GType, however, it would change API and ABI of the library. As a workaround, we can avoid to use G_IS_OBJECT and GST_IS_OBJECT macros on GstMiniObject types, and in that way, preserve compatibility. I will open a pull request.
Example of an observed backtrace:
<pre>
#0 g_type_check_instance_is_fundamentally_a (type_instance=type_instance@entry=0x8d822f940, fundamental_type=fundamental_type@entry=0x50 [GObject]) at ../../glib-2.66.8/gobject/gtype.c:4030
#1 0x001ffde17d60cbb0 in object_log_new (obj=obj@entry=0x8d822f940) at ../../gstreamer-1.18.4/plugins/tracers/gstleaks.c:325
#2 0x001ffde17d60d468 in handle_object_created (self=self@entry=0x8d8262020 [GstLeaksTracer], object=object@entry=0x8d822f940, type=0x8d8235350 [GstCaps], gobject=gobject@entry=0)
at ../../gstreamer-1.18.4/plugins/tracers/gstleaks.c:397
#3 0x001ffde17d60d53c in mini_object_created_cb (tracer=0x8d8262020 [GstLeaksTracer], ts=3588225045, object=0x8d822f940) at ../../gstreamer-1.18.4/plugins/tracers/gstleaks.c:407
...
</pre>https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/133Question about the asset cache2021-06-02T01:57:46Zt13mQuestion about the asset cacheIn scenarios like a media library, user peeks and previews a big number of media files, then load only a few of them into project. Is UriClipAsset fit this kind of scenario? And will the asset cache take a big amount of memory after prev...In scenarios like a media library, user peeks and previews a big number of media files, then load only a few of them into project. Is UriClipAsset fit this kind of scenario? And will the asset cache take a big amount of memory after previewing.
Sorry I don't know if this is the right place to ask, my apologies if not.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/702Crash audio_tee_queue2021-09-24T18:39:27ZAlexandr TopilskiCrash audio_tee_queueHello, I have a crash when trying to unlink pads in realtime
```
Thread 99 "audio_tee_queue" received signal SIGFPE, Arithmetic exception.
[Switching to Thread 0x7f9f8dffb700 (LWP 356272)]
0x00007fa0a9cf2e38 in gst_queue_array_peek_tail_...Hello, I have a crash when trying to unlink pads in realtime
```
Thread 99 "audio_tee_queue" received signal SIGFPE, Arithmetic exception.
[Switching to Thread 0x7f9f8dffb700 (LWP 356272)]
0x00007fa0a9cf2e38 in gst_queue_array_peek_tail_struct () from /usr/local/bin/../lib/libgstbase-1.0.so.0
(gdb) bt
#0 0x00007fa0a9cf2e38 in gst_queue_array_peek_tail_struct () at /usr/local/bin/../lib/libgstbase-1.0.so.0
#1 0x00007fa0a8b8cc28 in gst_queue_loop () at /usr/local/lib/gstreamer-1.0/libgstcoreelements.so
#2 0x00007fa0aa3d5ef7 in gst_task_func () at /usr/local/bin/../lib/libgstreamer-1.0.so.0
#3 0x00007fa0aa540374 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007fa0aa53fad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007fa0acace609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6 0x00007fa0ac471293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
```