GStreamer issueshttps://gitlab.freedesktop.org/groups/gstreamer/-/issues2019-07-11T15:29:40Zhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1011GStreamer OpenGL renderer creates a new texture for each frame - highly ineff...2019-07-11T15:29:40ZAdvance SoftwareGStreamer OpenGL renderer creates a new texture for each frame - highly inefficient._new_texture in gst-build/subprojects/gst-plugins-base/gst-libs/gst/gl/gstglmemory.c
Is called once per frame. The configuration should be 2 textures of the same dimension as the video decoder output, decode into one, display from the o..._new_texture in gst-build/subprojects/gst-plugins-base/gst-libs/gst/gl/gstglmemory.c
Is called once per frame. The configuration should be 2 textures of the same dimension as the video decoder output, decode into one, display from the other, then swap. Repeat until done.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/409Meson build error on Windows x64 Msvc 20172019-07-30T14:19:33ZSemih KurtMeson build error on Windows x64 Msvc 2017Hello,
I am trying to compile gstreamer with meson on Windows with MSVC 2017 X64 architecture.
I currently tried with gst-build branch 1.16 and also master. Same error occurred in both of them.
I have followed the instructions ...Hello,
I am trying to compile gstreamer with meson on Windows with MSVC 2017 X64 architecture.
I currently tried with gst-build branch 1.16 and also master. Same error occurred in both of them.
I have followed the instructions from https://github.com/GStreamer/gst-build
I have run these commands as you said Visual Studio command prompt of the appropriate architecture and version.
meson build/
ninja -C build/
meson build/ does not give any errors. However, when I compile with
ninja -C build/
It gives some of these errors:
Errors:
1) `subprojects\libnice\agent\candidate.h(159): error C2061: syntax error: identifier 'uint8_t'`
Solution: I added #include <stdint.h> at the top of the header file of candidate.h and the error is gone.
Compilation continued until the error #2
2) I have got these REDEFINITION Errors at
```
[2179/3370] Linking static target subprojects/FFmpeg/libavcodec-static.a.
v210enc.o : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
[2212/3370] Linking target subprojects/FFmpeg/avcodec-58.dll.
Creating library subprojects\\FFmpeg\\avcodec.lib and object subprojects\\FFmpeg\\avcodec.exp
[2339/3370] Compiling C object subprojects/FFmpeg/00cc031@@avformat-static@sta/libavformat_hlsenc.c.obj.
FAILED: subprojects/FFmpeg/00cc031@@avformat-static@sta/libavformat_hlsenc.c.obj
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared\ws2def.h(103): warning C4005: 'AF_IPX': macro redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(456): note: see previous definition of 'AF_IPX'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared\ws2def.h(235): error C2011: 'sockaddr': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(481): note: see declaration of 'sockaddr'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared\ws2def.h(437): error C2059: syntax error: 'constant'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared\ws2def.h(633): error C2011: 'sockaddr_in': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(308): note: see declaration of 'sockaddr_in'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock2.h(136): error C2011: 'fd_set': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(64): note: see declaration of 'fd_set'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock2.h(180): error C2011: 'timeval': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(107): note: see declaration of 'timeval'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock2.h(236): error C2011: 'hostent': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(163): note: see declaration of 'hostent'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock2.h(249): error C2011: 'netent': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(176): note: see declaration of 'netent'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock2.h(256): error C2011: 'servent': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(183): note: see declaration of 'servent'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock2.h(268): error C2011: 'protoent': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(195): note: see declaration of 'protoent'
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock2.h(364): error C2011: 'WSAData': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winsock.h(318): note: see declaration of 'WSAData'
```
I shouldn't modify winsock.h or ws2def.h. I think one of gstreamer library includes
winsock.h after winsock2.h or maybe visa verse.
I think everyone who use Windows will get same errors. I haven't found any issue about it so I opened to inform you.
Any help would be appreciated.
Thank you,https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/175Current master win32 cross compile will not build2019-07-10T19:43:47ZAaron BoxerCurrent master win32 cross compile will not build```
./cerbero-uninstalled bootstrap && ./cerbero-uninstalled -c config/cross-win32.cbc bootstrap && ./cerbero-uninstalled -c config/cross-win32.cbc package gstreamer-1.0
```
Error:
```
/home/aaron/src/cerbero/build/mingw/multilib/bin/...```
./cerbero-uninstalled bootstrap && ./cerbero-uninstalled -c config/cross-win32.cbc bootstrap && ./cerbero-uninstalled -c config/cross-win32.cbc package gstreamer-1.0
```
Error:
```
/home/aaron/src/cerbero/build/mingw/multilib/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld: gst/typefind/e269daf@@gsttypefindfunctions@sha/gsttypefindfunctions.c.obj: in function `mpeg_should_suggest':
/home/aaron/src/cerbero/build/sources/windows_x86/gst-plugins-base-1.0-1.17.0.1/_builddir/../gst/typefind/gsttypefindfunctions.c:2180: undefined reference to `gst_type_find_is_eos'
collect2: error: ld returned 1 exit status
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/408Why is GstBaseTransformClass::start called before GstBaseTransformClass::set_...2019-07-10T13:47:01ZUmedzhon AbdumuminovWhy is GstBaseTransformClass::start called before GstBaseTransformClass::set_capsHi guys,
We are developing our own plugins and met problem:
Our plugins is inherited from `GstBaseTransform`. We would like to do initialization of internal objects before starting pipeline, but we have to have configured caps before.
...Hi guys,
We are developing our own plugins and met problem:
Our plugins is inherited from `GstBaseTransform`. We would like to do initialization of internal objects before starting pipeline, but we have to have configured caps before.
So, we put it in the `GstBaseTransformClass::start`, but this function is called before `GstBaseTransformClass::set_caps`.
Is this correct behavior?
If so, how could we do our initialization after caps configuration but before start of pipeline if not in the `GstBaseTransformClass::start`?https://gitlab.freedesktop.org/gstreamer/gst-libav/-/issues/58couldn't find associated picture parameter2019-07-09T16:49:43ZXiaolin Zhangcouldn't find associated picture parameterWe got the following logs with `webrtcbin` on `gstreamer-1.16`:
```
0:01:50.651533732 32467 0x11fba80 WARN codecparsers_h264 gsth264parser.c:2141:gst_h264_parser_parse_slice_hdr: couldn't find associated picture parameter se...We got the following logs with `webrtcbin` on `gstreamer-1.16`:
```
0:01:50.651533732 32467 0x11fba80 WARN codecparsers_h264 gsth264parser.c:2141:gst_h264_parser_parse_slice_hdr: couldn't find associated picture parameter set with id: 48
0:01:50.651779632 32467 0x11fba80 ERROR libav :0:: non-existing PPS 48 referenced
0:01:50.651793941 32467 0x11fba80 ERROR libav :0:: decode_slice_header error
0:01:50.651810437 32467 0x11fba80 ERROR libav :0:: no frame!
0:01:50.651826636 32467 0x11fba80 WARN libav gstavviddec.c:1864:gst_ffmpegviddec_handle_frame:<avdec_h264-0> Failed to send data for decoding
0:01:50.688091966 32467 0x11fba80 WARN codecparsers_h264 gsth264parser.c:2141:gst_h264_parser_parse_slice_hdr: couldn't find associated picture parameter set with id: 48
0:01:50.688286431 32467 0x11fba80 ERROR libav :0:: non-existing PPS 48 referenced
0:01:50.688299283 32467 0x11fba80 ERROR libav :0:: decode_slice_header error
0:01:50.688307709 32467 0x11fba80 ERROR libav :0:: no frame!
0:01:50.688320794 32467 0x11fba80 WARN libav gstavviddec.c:1864:gst_ffmpegviddec_handle_frame:<avdec_h264-0> Failed to send data for decoding
```
It seems some packets are lost?
Similar issue like:
- https://stackoverflow.com/questions/15005436/errors-when-decode-h-264-frames-using-ffmpeg
Any idea for this?https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/635glimagesink: does not update video properly with foreign surface2021-07-09T17:21:53ZWonchul Leeglimagesink: does not update video properly with foreign surfaceI found that the video was not properly updated with a foreign surface on glimagesink. It could be reproduced to run the GTK sample application in the gst-plugins-bad/tests/examples/wayland.
It works well with waylandsink. It had anothe...I found that the video was not properly updated with a foreign surface on glimagesink. It could be reproduced to run the GTK sample application in the gst-plugins-bad/tests/examples/wayland.
It works well with waylandsink. It had another issue which lost connection when repeat playback but it's been fixed in https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/commit/2e686b0dad9700b10d91da5e91f34849fa7d32aehttps://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/issues/70Test-Record Example Segmentation Fault2023-10-17T17:47:13ZTalha Zekeriya DurmuşTest-Record Example Segmentation FaultPlatform: Mac OS X Mojave
Receiver Compilation
```
gcc test-record.c -I/usr/local/Cellar/gstreamer/1.16.0_1/include/gstreamer-1.0/ -I/usr/local/Cellar/gst-rtsp-server/1.16.0_1/include/gstreamer-1.0/ `pkg-config --cflags --libs glib-2.0...Platform: Mac OS X Mojave
Receiver Compilation
```
gcc test-record.c -I/usr/local/Cellar/gstreamer/1.16.0_1/include/gstreamer-1.0/ -I/usr/local/Cellar/gst-rtsp-server/1.16.0_1/include/gstreamer-1.0/ `pkg-config --cflags --libs glib-2.0` -I/usr/local/Cellar/gst-plugins-base/1.16.0_1/include/gstreamer-1.0/ -lgstreamer-1.0 -lgstrtsp-1.0 -lglib-2.0 -lgstrtspserver-1.0 -lgobject-2.0
./a.out "decodebin name=depay0 ! autovideosink"
```
Receiver Output
```
stream ready at rtsp://127.0.0.1:8554/test
On the sender, send a stream with rtspclientsink:
gst-launch-1.0 videotestsrc ! x264enc ! rtspclientsink location=rtsp://127.0.0.1:8554/test
[1] 15815 segmentation fault ./a.out "decodebin name=depay0 ! autovideosink"
```
Sender
``` gst-launch-1.0 videotestsrc ! x264enc ! rtspclientsink location=rtsp://127.0.0.1:8554/test ```
Sender Output
```
Warning: Failed to set locale category LC_NUMERIC to en_TR.
Warning: Failed to set locale category LC_TIME to en_TR.
Warning: Failed to set locale category LC_COLLATE to en_TR.
Warning: Failed to set locale category LC_MONETARY to en_TR.
Warning: Failed to set locale category LC_MESSAGES to en_TR.
Setting pipeline to PAUSED ...
Pipeline is PREROLLED ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://127.0.0.1:8554/test
Progress: (open) Retrieving server options
Redistribute latency...
Progress: (open) Opened Stream
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Progress: (request) Sending RECORD request
Progress: (record) Sending server stream info
Progress: (request) SETUP stream 0
Progress: (request) Sending RECORD request
Progress: (record) Starting recording
WARNING: from element /GstPipeline:pipeline0/GstRTSPClientSink:rtspclientsink0: Could not read from resource.
Additional debug info:
gstrtspclientsink.c(2256): gst_rtsp_client_sink_loop_rx (): /GstPipeline:pipeline0/GstRTSPClientSink:rtspclientsink0:
The server closed the connection.
ERROR: from element /GstPipeline:pipeline0/GstRTSPClientSink:rtspclientsink0: Could not open resource for reading and writing.
Additional debug info:
gstrtspclientsink.c(2331): gst_rtsp_client_sink_loop_rx (): /GstPipeline:pipeline0/GstRTSPClientSink:rtspclientsink0:
Could not connect to server. (Generic error)
Execution ended after 0:00:00.746859000
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
```
```
~ brew info gstreamer
gstreamer: stable 1.16.0 (bottled), HEAD
Development framework for multimedia applications
https://gstreamer.freedesktop.org/
/usr/local/Cellar/gstreamer/1.16.0_1 (420 files, 22.9MB) *
Poured from bottle on 2019-07-03 at 21:29:59
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/gstreamer.rb
==> Dependencies
Build: bison ✘, gobject-introspection ✘, pkg-config ✔
Required: gettext ✔, glib ✔
==> Options
--HEAD
Install HEAD version
==> Caveats
Consider also installing gst-plugins-base and gst-plugins-good.
The gst-plugins-* packages contain gstreamer-video-1.0, gstreamer-audio-1.0,
and other components needed by most gstreamer applications.
==> Analytics
install: 5,390 (30 days), 14,676 (90 days), 49,221 (365 days)
install_on_request: 2,256 (30 days), 6,645 (90 days), 24,191 (365 days)
build_error: 0 (30 days)
```
```
~ brew info gst-rtsp-server
gst-rtsp-server: stable 1.16.0 (bottled)
RTSP server library based on GStreamer
https://gstreamer.freedesktop.org/modules/gst-rtsp-server.html
/usr/local/Cellar/gst-rtsp-server/1.16.0_1 (39 files, 1.8MB) *
Poured from bottle on 2019-07-07 at 00:31:04
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/gst-rtsp-server.rb
==> Dependencies
Build: gobject-introspection ✘, libtool ✔, pkg-config ✔
Required: gettext ✔, gst-plugins-base ✔, gstreamer ✔
==> Analytics
install: 171 (30 days), 529 (90 days), 1,683 (365 days)
install_on_request: 170 (30 days), 524 (90 days), 1,661 (365 days)
build_error: 0 (30 days)
``` https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1010SOLVED: Webrtcbin: Huge increasing memory leak while using appsink instead of...2019-07-08T10:46:05ZNeil YoungSOLVED: Webrtcbin: Huge increasing memory leak while using appsink instead of autovideosinkI'm referring to the Java sample app: https://github.com/centricular/gstwebrtc-demos/tree/master/sendrecv/gst-java
With respect to increasing memory consumption everything is fine and balanced if we are using this approach to display th...I'm referring to the Java sample app: https://github.com/centricular/gstwebrtc-demos/tree/master/sendrecv/gst-java
With respect to increasing memory consumption everything is fine and balanced if we are using this approach to display the received video in a pop-up window:
```
if (name.startsWith("video")) {
Element queue = ElementFactory.make("queue", "my-videoqueue");
Element videoconvert = ElementFactory.make("videoconvert", "my-videoconvert");
Element autovideosink = ElementFactory.make("osxvideosink", "my-autovideosink");
// Element autovideosink = ElementFactory.make("autovideosink", "my-autovideosink");
pipe.addMany(queue, videoconvert, autovideosink);
queue.syncStateWithParent();
videoconvert.syncStateWithParent();
autovideosink.syncStateWithParent();
pad.link(queue.getStaticPad("sink"));
queue.link(videoconvert);
videoconvert.link(autovideosink);
}
```
(autovideosink is replaced by osxvideosink for macOS)
If this sequence above is replaced by the following, the memory consumption of the Java app grows by 200 MB/s, which after a while leads to a complete crash of the app if not of the entire system:
```
if (name.startsWith("video")) {
Element queue = ElementFactory.make("queue", "my-videoqueue");
Element videoconvert = ElementFactory.make("videoconvert", "my-videoconvert");
AppSink sink = (AppSink) ElementFactory.make("appsink", "my-appsink");
sink.set("emit-signals", true);
sink.connect(new AppSink.NEW_SAMPLE() {
@Override
public FlowReturn newSample(AppSink elem) {
Sample sample = elem.pullSample();
Structure capsStruct = sample.getCaps().getStructure(0);
String format = capsStruct.getString("format");
int width = capsStruct.getInteger("width");
int height = capsStruct.getInteger("height");
ByteBuffer bytes = sample.getBuffer().map(false);
byte[] buffer = new byte[bytes.remaining()];
bytes.get(buffer);
dragonfly.onNextFrame(format, buffer, width, height);
sample.dispose();
return FlowReturn.OK;
}
});
sink.connect(new AppSink.NEW_PREROLL() {
@Override
public FlowReturn newPreroll(AppSink elem) {
Sample sample = elem.pullPreroll();
Structure capsStruct = sample.getCaps().getStructure(0);
String format = capsStruct.getString("format");
int width = capsStruct.getInteger("width");
int height = capsStruct.getInteger("height");
ByteBuffer bytes = sample.getBuffer().map(false);
byte[] buffer = new byte[bytes.remaining()];
bytes.get(buffer);
dragonfly.onNextFrame(format, buffer, width, height);
sample.dispose();
return FlowReturn.OK;
}
});
pipe.addMany(queue, videoconvert, sink);
queue.syncStateWithParent();
videoconvert.syncStateWithParent();
sink.syncStateWithParent();
pad.link(queue.getStaticPad("sink"));
queue.link(videoconvert);
videoconvert.link(sink);
}
```
Is there anything wrong with the sequence above, which could cause the leak?https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/179Can not convert the color space to BGR10A2_LE2019-09-11T04:21:15ZHe JunyanCan not convert the color space to BGR10A2_LEThe pipeline:
gst-launch-1.0 videotestsrc num-buffers=30 ! capsfilter caps=video/x-raw,format=P010_10LE,width=1920,height=1080 ! vaapipostproc format=bgr10a2-le ! filesink location=a.yuv
Can not workThe pipeline:
gst-launch-1.0 videotestsrc num-buffers=30 ! capsfilter caps=video/x-raw,format=P010_10LE,width=1920,height=1080 ! vaapipostproc format=bgr10a2-le ! filesink location=a.yuv
Can not workhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/634glwindow_win32: WM_KILLFOCUS with external Window handle2019-12-22T10:09:16ZSeungha Yangseungha@centricular.comglwindow_win32: WM_KILLFOCUS with external Window handleWith https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/320 example,
glimagesink loses focus when an user clicks title bar (or close/minimize/maximize icon).
Related comment https://gitlab.freedesktop.org/gstreamer...With https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/320 example,
glimagesink loses focus when an user clicks title bar (or close/minimize/maximize icon).
Related comment https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/201#note_187191https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1009Webrtcbin: Artefacts in received video from various sources, various codecs a...2019-12-26T13:27:58ZNeil YoungWebrtcbin: Artefacts in received video from various sources, various codecs after a while of no movement.I'm using the GStreamer plugin webrtcbin from a Java app. GStreamer version is 1.16.0. With various remote webrtc clients (web apps, native apps, Raspberry PI UV4L) I'm having the problem, that the received video on the webrtcbin side is...I'm using the GStreamer plugin webrtcbin from a Java app. GStreamer version is 1.16.0. With various remote webrtc clients (web apps, native apps, Raspberry PI UV4L) I'm having the problem, that the received video on the webrtcbin side is starting to show artefacts, which become more and more until the entire image is full of "coloured soap". This goes away after a while, if I e.g. "swipe" over the remote camera.
If I'm using a browser client from the same machine against all other targets, there are no such increasing artefacts.
I have checked the FIR rate but found, that practically neither the GST nor the browser is sending FIRs. It is also completely irrelevant, if the remote side delivers H.264 or VP8. After a while of no-movement at remote GStreamer shows these artefacts.
I know, a similar issue has already been raised a while ago, but I found no solution there:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/799
What can I do in order to approach the problem? At least for the Raspberry PI and the browser client at remote I would have all the debugging abilities, if somebody would like to know something. What I can exclude are major problems with the connectivity.
So again - reproducible artefacts if GStreamer webrtcbin is the receiver, nothing like this at all if a browser receives and displays the images.https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1008WebRTCBin fails to parse DTLS/SCTP m= line2019-07-08T08:16:03ZNeil YoungWebRTCBin fails to parse DTLS/SCTP m= lineThis is the SDP offer:
```
v=0
o=- 5037321298267753507 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video data
a=msid-semantic: WMS stream_label
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 102 0 8 105 13 110 113 126
c=IN IP4 0.0.0.0
a=rt...This is the SDP offer:
```
v=0
o=- 5037321298267753507 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video data
a=msid-semantic: WMS stream_label
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 102 0 8 105 13 110 113 126
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:BmeW
a=ice-pwd:QR65fGA9k2kCVZKum9KCFnGT
a=ice-options:trickle
a=fingerprint:sha-256 D6:FB:7C:45:5E:A0:3A:FC:6E:FF:38:AF:7E:63:3B:CD:0B:DD:5F:F7:DB:18:6C:ED:CD:83:BD:F7:F6:F8:0A:67
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=recvonly
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=rtcp-fb:111 transport-cc
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:9 G722/8000
a=rtpmap:102 ILBC/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:110 telephone-event/48000
a=rtpmap:113 telephone-event/16000
a=rtpmap:126 telephone-event/8000
m=video 9 UDP/TLS/RTP/SAVPF 100
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:BmeW
a=ice-pwd:QR65fGA9k2kCVZKum9KCFnGT
a=ice-options:trickle
a=fingerprint:sha-256 D6:FB:7C:45:5E:A0:3A:FC:6E:FF:38:AF:7E:63:3B:CD:0B:DD:5F:F7:DB:18:6C:ED:CD:83:BD:F7:F6:F8:0A:67
a=setup:actpass
a=mid:video
a=extmap:2 urn:ietf:params:rtp-hdrext:toffset
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:4 urn:3gpp:video-orientation
a=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type
a=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/video-timing
a=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07
a=extmap:12 http://www.webrtc.org/experiments/rtp-hdrext/color-space
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:100 H264/90000
a=rtcp-fb:100 goog-remb
a=rtcp-fb:100 transport-cc
a=rtcp-fb:100 ccm fir
a=rtcp-fb:100 nack
a=rtcp-fb:100 nack pli
a=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e028
a=ssrc-group:FID 3833946854 2006842481
a=ssrc:3833946854 cname:1NbaOOcg86OzyyRG
a=ssrc:3833946854 msid:stream_label video_label
a=ssrc:3833946854 mslabel:stream_label
a=ssrc:3833946854 label:video_label
a=ssrc:2006842481 cname:1NbaOOcg86OzyyRG
a=ssrc:2006842481 msid:stream_label video_label
a=ssrc:2006842481 mslabel:stream_label
a=ssrc:2006842481 label:video_label
m=application 9 DTLS/SCTP 5000
c=IN IP4 0.0.0.0
a=ice-ufrag:BmeW
a=ice-pwd:QR65fGA9k2kCVZKum9KCFnGT
a=ice-options:trickle
a=fingerprint:sha-256 D6:FB:7C:45:5E:A0:3A:FC:6E:FF:38:AF:7E:63:3B:CD:0B:DD:5F:F7:DB:18:6C:ED:CD:83:BD:F7:F6:F8:0A:67
a=setup:actpass
a=mid:data
a=sctpmap:5000 webrtc-datachannel 1024
```
GStreamer spits out this warning
```
0:00:08.212584000 82254 0x7fde580e71e0 ERROR default gstsdpmessage.c:3704:GstCaps *gst_sdp_media_get_caps_from_media(const GstSDPMedia *, gint): rtpmap type not given for dynamic payload 5000
(unknown:82254): GStreamer-CRITICAL **: 19:02:44.871: gst_caps_get_size: assertion 'GST_IS_CAPS (caps)' failed
(unknown:82254): GStreamer-CRITICAL **: 19:02:44.871: gst_caps_append: assertion 'GST_IS_CAPS (caps2)' failed
(unknown:82254): GStreamer-CRITICAL **: 19:02:44.871: gst_caps_get_structure: assertion 'index < GST_CAPS_LEN (caps)' failed
0:00:08.212823000 82254 0x7fde580e71e0 ERROR default gstsdpmessage.c:3751:GstSDPResult gst_sdp_media_set_media_from_caps(const GstCaps *, GstSDPMedia *): ignoring stream without media type
(unknown:82254): GStreamer-CRITICAL **: 19:02:44.871: gst_caps_get_structure: assertion 'index < GST_CAPS_LEN (caps)' failed
```
and is stuck.
More information here: https://github.com/centricular/gstwebrtc-demos/issues/113https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/173No way to override default home_dir basename inside the cerbero directory2021-09-27T08:41:32ZStéphane Cerveauscerveau@igalia.comNo way to override default home_dir basename inside the cerbero directoryWhen using ./cerbero-uninstalled, the build folder is created in the repo tree but can be confusing when we do research (ie cerbero/build). I would advise **_build_cerbero** which will be less confusing and easier to address.When using ./cerbero-uninstalled, the build folder is created in the repo tree but can be confusing when we do research (ie cerbero/build). I would advise **_build_cerbero** which will be less confusing and easier to address.https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/40Camera and microphone2019-07-05T15:44:40ZUpperAlexCamera and microphoneHallo,
I cannot find an Android example for accessing the camera or microphone in Android.
I found "ahcsrc" in some examples online. But when trying to integrate into example 3 it I get "Unable to build pipeline: no element "ahcsrc""
...Hallo,
I cannot find an Android example for accessing the camera or microphone in Android.
I found "ahcsrc" in some examples online. But when trying to integrate into example 3 it I get "Unable to build pipeline: no element "ahcsrc""
Could you pleas supply an example?
Is there a list of pluginnames (for gradle) with included elements?
Kind regards,
UpperAlexhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1007webrtcbin: webrtc_sendrecv pipeline won't start on rpi3b+ when using omx264enc2019-07-06T04:55:01ZTyler Brookswebrtcbin: webrtc_sendrecv pipeline won't start on rpi3b+ when using omx264encI have built gstreamer/webrtcbn 1.14 on my rpi3b+. The 'sendrecv' demo from gstwebrtc-demo works just fine. When I modify it to capture video with v4l2src it also works fine. However, when I replace the encoder with the omx h264 encod...I have built gstreamer/webrtcbn 1.14 on my rpi3b+. The 'sendrecv' demo from gstwebrtc-demo works just fine. When I modify it to capture video with v4l2src it also works fine. However, when I replace the encoder with the omx h264 encoder the pipeline won't start. I never get the 'on-negotiation-needed' callback.
To be specific, this pipeline works (the original code in webrtc_sendrecv.c):
```
pipe1 =
gst_parse_launch ("webrtcbin bundle-policy=max-bundle name=sendrecv " STUN_SERVER
"videotestsrc is-live=true pattern=ball ! videoconvert ! queue ! vp8enc deadline=1 ! rtpvp8pay ! "
"queue ! " RTP_CAPS_VP8 "96 ! sendrecv. "
"audiotestsrc is-live=true wave=red-noise ! audioconvert ! audioresample ! queue ! opusenc ! rtpopuspay ! "
"queue ! " RTP_CAPS_OPUS "97 ! sendrecv. ",
&error);
```
This pipeline also works (capturing with v4l2src):
```
pipe1 =
gst_parse_launch ("webrtcbin bundle-policy=max-bundle name=sendrecv " STUN_SERVER
"v4l2src ! video/x-raw,width=640,height=480,framerate=20/1 ! videoflip video-direction=180 ! "
"queue ! vp8enc deadline=1 ! rtpvp8pay ! queue ! " RTP_CAPS_VP8 "96 ! sendrecv. "
, &error);
```
However, this pipeline does not work (encoding with omxh264enc):
```
pipe1 =
gst_parse_launch ("webrtcbin bundle-policy=max-bundle name=sendrecv " STUN_SERVER
"v4l2src ! video/x-raw,width=640,height=480,framerate=20/1 ! videoflip video-direction=180 ! "
"queue ! omxh264enc ! "queue ! rtph264pay ! " RTP_CAPS_H264 "127 ! sendrecv. "
, &error);
```
STUN_SERVER, RTP_CAPS_VP8, & RTP_CAPS_H264 look like this:
```
#define STUN_SERVER " stun-server=stun://stun.l.google.com:19302 "
#define RTP_CAPS_OPUS "application/x-rtp,media=audio,encoding-name=OPUS,payload="
#define RTP_CAPS_VP8 "application/x-rtp,media=video,encoding-name=VP8,payload="
#define RTP_CAPS_H264 "application/x-rtp,media=video,encoding-name=H264,payload="
```
It seems like the SDP never gets calculated. I never get the 'on-negotiation-needed' callback. The 'start_pipeline()' function does finish successfully and the pipeline object state is set to 'PLAYING'.
Any ideas as to what could be wrong?
Oh, this pipeline does write an h264 elemental stream to a file that I can playback with vlc... so I think my omx h264 encoder is working:
```
gst-launch-1.0 v4l2src ! video/x-raw,width=640,height=480,framerate=20/1 ! videoflip video-direction=180 ! queue ! omxh264enc ! filesink location=test.h264
```https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/63gst_pad_link() hangs when called from "pad-added" handler of togglerecord2019-07-07T09:09:24ZNikola Hadžićgst_pad_link() hangs when called from "pad-added" handler of togglerecordThe issue occurs if I request a sink pad of toggle record like this
```
new_sink_pad = gst_element_get_request_pad(togglerecord, "sink_%u");
g_signal_connect(pause, "pad-added", G_CALLBACK(pad_added_cb), pad_to_link);
```
Now I want to ...The issue occurs if I request a sink pad of toggle record like this
```
new_sink_pad = gst_element_get_request_pad(togglerecord, "sink_%u");
g_signal_connect(pause, "pad-added", G_CALLBACK(pad_added_cb), pad_to_link);
```
Now I want to link newly created pad and `pad_to_link` in the "pad-added" handler function.
```
void pad_added_cb(GstElement *pause, GstPad *new_pad, GstPad *next_pad)
{
...
gst_pad_link(new_pad, next_pad);
...
}
```
But `gst_pad_link()` never returns.
Also backtrace is provided.
[bt.txt](/uploads/eea08244dba8502d7d512a0cd34863bd/bt.txt)https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1006Support for the DeckLink Quad HDMI Recorder2019-07-04T17:26:16ZStirling WestrupSupport for the DeckLink Quad HDMI RecorderThis card is currently not supported:
`[root@primary-1 ~]# gst-launch-1.0 decklinkvideosrc device-number=3 ! videoconvert ! videoscale ! video/x-raw,width=1920, height=1080 ! ximagesink display=:0`
`Setting pipeline to PAUSED ......This card is currently not supported:
`[root@primary-1 ~]# gst-launch-1.0 decklinkvideosrc device-number=3 ! videoconvert ! videoscale ! video/x-raw,width=1920, height=1080 ! ximagesink display=:0`
`Setting pipeline to PAUSED ...`
`Pipeline is live and does not need PREROLL ...`
`Setting pipeline to PLAYING ...`
`New clock: GstSystemClock`
`Redistribute latency...`
`WARNING: from element /GstPipeline:pipeline0/GstDecklinkVideoSrc:decklinkvideosrc0: No signal`
`Additional debug info:`
`gstdecklinkvideosrc.cpp(886): gst_decklink_video_src_create (): /GstPipeline:pipeline0/GstDecklinkVideoSrc:decklinkvideosrc0:`
`No input source was detected - video frames invalid`
`**`
`ERROR:gstdecklink.cpp:434:const GstDecklinkModeEnum gst_decklink_get_mode_enum_from_bmd(BMDDisplayMode): code should not be reached`
`Aborted`
One of our team members reported: "Went through gstreamer decklinkvideosrc code briefly. For my understanding, It looks like the Video display mode generated from this kind of device is not supported by the DeckLinkModeAPI used by decklinkvideosrc element."
So then we tried explicitly setting the mode:
`gst-launch-1.0 --gst-debug=decklinkvideosrc:6 decklinkvideosrc device-number=3 mode=1080p25 ! videoconvert ! videoscale ! video/x-raw,width=1920, height=1080 ! ximagesink display=:0`
We ended up with a black screen, which sounds like the DeckLink duplex bug that is already being worked on.
If there are any tests you would like us to do, or information to gather, please let me know.https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/633overlaycomposition: crash with access violation when using a pool of two buff...2019-07-02T21:07:22ZAaron Boxeroverlaycomposition: crash with access violation when using a pool of two buffers in "draw" callback(on windows 32 bit, btw)
create a pool of two buffers sized to the video window, and alternate between the two buffers
on the "draw" callback:
1. write to buffer 0 and attach buffer 0 via gst_video_overlay_rectangle_new_raw()
1. write t...(on windows 32 bit, btw)
create a pool of two buffers sized to the video window, and alternate between the two buffers
on the "draw" callback:
1. write to buffer 0 and attach buffer 0 via gst_video_overlay_rectangle_new_raw()
1. write to buffer 1 and attach buffer 1 via gst_video_overlay_rectangle_new_raw()
1. write to buffer 0 and attach buffer 0 via gst_video_overlay_rectangle_new_raw()
I am using a pool so I can sometimes make use of the "caching" feature, where an overlay buffer is cached when the pointer
doesn't change, but I can also change the buffer by cycling through the two different buffers, so i can refresh the display.
If I don't cycle between buffers, and always use buffer 0, then there is no crash.https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/issues/45gst-validate build fails with "undefined reference to `g_enum_to_string'"2019-07-29T11:47:42ZStéphane Cerveauscerveau@igalia.comgst-validate build fails with "undefined reference to `g_enum_to_string'"On master branch, gst-build fails with undefined reference to `g_enum_to_string'On master branch, gst-build fails with undefined reference to `g_enum_to_string'https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/172master: some dlls not loading with mingw 32-bit cross compile for windows2020-01-20T15:34:01ZAaron Boxermaster: some dlls not loading with mingw 32-bit cross compile for windows(I don't see these warnings with the 1.16 cross-compile)
Error popup: `Bad Image: libgmp-10.dll is either not designed to run on WIndows or it contains an error ......`
and ...
```
0:00:00.039979300 7212 05CF1720 WARN ...(I don't see these warnings with the 1.16 cross-compile)
Error popup: `Bad Image: libgmp-10.dll is either not designed to run on WIndows or it contains an error ......`
and ...
```
0:00:00.039979300 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstdecklink.dll': The specified module could not be found.
GStreamer-WARNING **: 12:13:30.626: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstdecklink.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstdecklink.dll': The specified module could not be found.
0:02:06.615574300 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstnice.dll': %1 is not a valid Win32 application.
GStreamer-WARNING **: 12:15:37.215: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstnice.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstnice.dll': %1 is not a valid Win32 application.
0:02:06.619956800 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstopenh264.dll': The specified module could not be found.
GStreamer-WARNING **: 12:15:37.220: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstopenh264.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstopenh264.dll': The specified module could not be found.
0:02:07.670836700 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstrtmp.dll': %1 is not a valid Win32 application.
(EatonRTSPTestHarness.exe:7212): GStreamer-WARNING **: 12:15:38.272: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstrtmp.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstrtmp.dll': %1 is not a valid Win32 application.
0:02:07.692571200 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstsoundtouch.dll': The specified module could not be found.
GStreamer-WARNING **: 12:15:38.293: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstsoundtouch.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstsoundtouch.dll': The specified module could not be found.
0:02:07.707742600 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstsrt.dll': The specified module could not be found.
GStreamer-WARNING **: 12:15:38.307: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstsrt.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstsrt.dll': The specified module could not be found.
0:02:07.713073300 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgsttaglib.dll': The specified module could not be found.
GStreamer-WARNING **: 12:15:38.313: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgsttaglib.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgsttaglib.dll': The specified module could not be found.
0:02:08.744093400 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstwebrtc.dll': %1 is not a valid Win32 application.
GStreamer-WARNING **: 12:15:39.344: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstwebrtc.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstwebrtc.dll': %1 is not a valid Win32 application.
0:02:08.747653900 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstwebrtcdsp.dll': The specified module could not be found.
GStreamer-WARNING **: 12:15:39.346: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstwebrtcdsp.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstwebrtcdsp.dll': The specified module could not be found.
0:02:08.751831800 7212 05CF1720 WARN GST_PLUGIN_LOADING gstplugin.c:806:_priv_gst_plugin_load_file_for_registry: module_open failed: 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstzbar.dll': The specified module could not be found.
GStreamer-WARNING **: 12:15:39.352: Failed to load plugin 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstzbar.dll': 'C:\gstreamer\1.0\loki_x86\lib\gstreamer-1.0\libgstzbar.dll': The specified module could not be found.
```