GStreamer issueshttps://gitlab.freedesktop.org/groups/gstreamer/-/issues2023-10-30T20:48:48Zhttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1236va: Scrambled image due to not passing DRM modifiers downstream2023-10-30T20:48:48ZRafał Dzięgielva: Scrambled image due to not passing DRM modifiers downstreamHi, recently I got myself a hold on an Intel based CPU (with iGPU, using iHD driver) after using mainly AMD for years. Unfortunately trying to play video with HW acceleration provided by `vah264dec` (not old VAAPI plugin!) all I see is t...Hi, recently I got myself a hold on an Intel based CPU (with iGPU, using iHD driver) after using mainly AMD for years. Unfortunately trying to play video with HW acceleration provided by `vah264dec` (not old VAAPI plugin!) all I see is this:
![Screenshot_from_2022-05-22_13-02-50](/uploads/e471a38815c3e14dcf0a8b0d8ad4fc19/Screenshot_from_2022-05-22_13-02-50.png)
So I decided to believe in myself and looked around for the cause. Using `GST_DEBUG=*vamem*:7` I found:
```sh
0:00:02.072273440 41903 0x1aa9300 LOG vamemory gstvaallocator.c:620:gst_va_dmabuf_allocator_setup_buffer_full:<vadmabufallocator0> buffer 0x7f7f0416d5a0: new dmabuf 23 / surface 0x4000000 [1920x1088] size 3110400 drm mod 0x100000000000002
```
Quick google search shows that DRM modifier 0x100000000000002 is a `I915_Y_TILED` format.
So I went to check DMABuf import code, only to see that it blindly assumes LINEAR modifier. So for testing purposes I did a quick dirty change of LINEAR modifier to the one that is actually used:
```diff
diff --git a/subprojects/gst-plugins-base/gst-libs/gst/gl/egl/gsteglimage.c b/subprojects/gst-plugins-base/gst-libs/gst/gl/egl/gsteglimage.c
index 906f56e381..cf1a78e3c4 100644
--- a/subprojects/gst-plugins-base/gst-libs/gst/gl/egl/gsteglimage.c
+++ b/subprojects/gst-plugins-base/gst-libs/gst/gl/egl/gsteglimage.c
@@ -906,9 +906,9 @@ gst_egl_image_from_dmabuf_direct_target (GstGLContext * context,
attribs[atti++] = in_info->stride[0];
if (with_modifiers) {
attribs[atti++] = EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT;
- attribs[atti++] = DRM_FORMAT_MOD_LINEAR & 0xffffffff;
+ attribs[atti++] = I915_FORMAT_MOD_Y_TILED & 0xffffffff;
attribs[atti++] = EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT;
- attribs[atti++] = (DRM_FORMAT_MOD_LINEAR >> 32) & 0xffffffff;
+ attribs[atti++] = (I915_FORMAT_MOD_Y_TILED >> 32) & 0xffffffff;
}
}
@@ -922,9 +922,9 @@ gst_egl_image_from_dmabuf_direct_target (GstGLContext * context,
attribs[atti++] = in_info->stride[1];
if (with_modifiers) {
attribs[atti++] = EGL_DMA_BUF_PLANE1_MODIFIER_LO_EXT;
- attribs[atti++] = DRM_FORMAT_MOD_LINEAR & 0xffffffff;
+ attribs[atti++] = I915_FORMAT_MOD_Y_TILED & 0xffffffff;
attribs[atti++] = EGL_DMA_BUF_PLANE1_MODIFIER_HI_EXT;
- attribs[atti++] = (DRM_FORMAT_MOD_LINEAR >> 32) & 0xffffffff;
+ attribs[atti++] = (I915_FORMAT_MOD_Y_TILED >> 32) & 0xffffffff;
}
}
@@ -938,9 +938,9 @@ gst_egl_image_from_dmabuf_direct_target (GstGLContext * context,
attribs[atti++] = in_info->stride[2];
if (with_modifiers) {
attribs[atti++] = EGL_DMA_BUF_PLANE2_MODIFIER_LO_EXT;
- attribs[atti++] = DRM_FORMAT_MOD_LINEAR & 0xffffffff;
+ attribs[atti++] = I915_FORMAT_MOD_Y_TILED & 0xffffffff;
attribs[atti++] = EGL_DMA_BUF_PLANE2_MODIFIER_HI_EXT;
- attribs[atti++] = (DRM_FORMAT_MOD_LINEAR >> 32) & 0xffffffff;
+ attribs[atti++] = (I915_FORMAT_MOD_Y_TILED >> 32) & 0xffffffff;
}
}
```
Recompiled, and then trying to play video again. Here is the result:
![Screenshot_from_2022-05-22_13-03-53](/uploads/c2f60d61ddbcdcd5bc05e823742878ad/Screenshot_from_2022-05-22_13-03-53.png)
To be honest, until modifiers passing downstream is added. It would be much better if the `gst_egl_image_from_dmabuf_direct_target` did NOT describe modifiers at all. Then auto detection would be used with higher chances of being right then blindly assuming LINEAR (tried and it also produces correct picture). If you agree, I can submit MR against 1.20 branch where (I assume) modifiers support will not be added, so using auto/default would probably by better (fixes my issue).https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/385found issue with brew install gstreamer2022-05-25T05:20:18ZJason Shenfound issue with brew install gstreamerwhen create fdkaacenc i get this panic
```
panicked at 'Could not create fdkaacenc element: BoolError { message: "Failed to create element from factory name", filename: "/Users/jason/.cargo/registry/src/github.com-1ecc6299db9ec823/gstrea...when create fdkaacenc i get this panic
```
panicked at 'Could not create fdkaacenc element: BoolError { message: "Failed to create element from factory name", filename: "/Users/jason/.cargo/registry/src/github.com-1ecc6299db9ec823/gstreamer-0.18.8/src/auto/element_factory.rs", function: "gstreamer::auto::element_factory", line: 152 }', src/examples/rtmp/rtmp-uri.rs:17:6
```
i did look through the error logs i think this is the issue, its the linking is not right here
```
0:00:00.455538000 16095 0x14d61a400 DEBUG GST_PLUGIN_LOADING gstplugin.c:1693:gst_plugin_ext_dep_scan_dir_and_match_names:<plugin114> g_dir_open(/Users/jason/.frei0r-1/lib) failed: Error opening directory “/Users/jason/.frei0r-1/lib”: No such file or directory
0:00:00.455547000 16095 0x14d61a400 DEBUG GST_PLUGIN_LOADING gstplugin.c:1693:gst_plugin_ext_dep_scan_dir_and_match_names:<plugin114> g_dir_open(/opt/homebrew/Cellar/gst-plugins-bad/1.20.2/lib/frei0r-1) failed: Error opening directory “/opt/homebrew/Cellar/gst-plugins-bad/1.20.2/lib/frei0r-1”: No such file or directory
```
[new-Log_at_2022-05-21_8-34-13_PM.txt](/uploads/43772f5643c331c2400e9b952d5dd249/new-Log_at_2022-05-21_8-34-13_PM.txt)
i have attached the logs
any help would be great
cheers
Jasonhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/203spotify: support more authentification methods2024-03-11T08:10:39ZGuillaume Desmottesspotify: support more authentification methodsThe plugin currently needs a device password which is [apparently](https://community.spotify.com/t5/Accounts/Create-Device-password/td-p/4455461) limited to accounts linked with Facebook.
Spotify provides [different other auth systems](...The plugin currently needs a device password which is [apparently](https://community.spotify.com/t5/Accounts/Create-Device-password/td-p/4455461) limited to accounts linked with Facebook.
Spotify provides [different other auth systems](https://developer.spotify.com/documentation/general/guides/authorization/).https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/384error when set_property on flvmux2022-05-20T06:41:33ZJason Shenerror when set_property on flvmuxthis is what i did
```rust
flvmux.set_property_from_str("streamable", "ture");
```
then i get a panic error
```javascript
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: BoolError { message: "Failed to de...this is what i did
```rust
flvmux.set_property_from_str("streamable", "ture");
```
then i get a panic error
```javascript
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: BoolError { message: "Failed to deserialize value", filename: "/Users/jason/.cargo/registry/src/github.com-1ecc6299db9ec823/gstreamer-0.18.8/src/value.rs", function: "gstreamer::value", line: 1175 }', /Users/jason/.cargo/registry/src/github.com-1ecc6299db9ec823/gstreamer-0.18.8/src/gobject.rs:39:53
```
looks like something happens badly when deserialize
wonder if anyone else experience this
cheers
Jasonhttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1234webrtc: "on-open" on datachannel emitted before application has been able to ...2022-05-19T12:04:06ZJohan Sternerupwebrtc: "on-open" on datachannel emitted before application has been able to connect to signalIf a datachannel is created from an application thread then there is a risk that the "on-open" signal is emitted before the application has had a chance to connect to the signal. In practice this happens only in test setups on localhost ...If a datachannel is created from an application thread then there is a risk that the "on-open" signal is emitted before the application has had a chance to connect to the signal. In practice this happens only in test setups on localhost where the connection establishment is fast. The important thing to know here is that there is a concurrency model difference here between gstreamer and the JavaScript world for which the WebRTC spec is written. In JavaScript all processing happens in the same thread so there is no possibility of these kinds of races. In a gstreamer application however, the application can invoke functions on webrtcbin from any thread.
I admit I have no real solution to the problem. Somehow the create-datachannel operation and the signal connection operation must be a single atomic operation or both run from the pc thread.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1233webrtcbin: Allow unresolved mDNS ICE candidate emission2022-06-09T14:50:59ZPhilippe Normandwebrtcbin: Allow unresolved mDNS ICE candidate emissionIt would be nice if webrtcbin had a boolean property allowing to enable/disable ICE candidates addresses resolving, before the `on-ice-candidate` signal is emitted.
https://datatracker.ietf.org/doc/html/draft-mdns-ice-candidates-00It would be nice if webrtcbin had a boolean property allowing to enable/disable ICE candidates addresses resolving, before the `on-ice-candidate` signal is emitted.
https://datatracker.ietf.org/doc/html/draft-mdns-ice-candidates-00https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/383autovideosink on mac not showing2022-05-19T09:10:25ZJason Shenautovideosink on mac not showinghaving an issue, audovideosink is not popup the code compiles fine and audoaudiosink works, as i can hear the audio,
but no video popup.
the os is macos 12.3.1
gstreamer is install via brew, so its the latest available
i have attache...having an issue, audovideosink is not popup the code compiles fine and audoaudiosink works, as i can hear the audio,
but no video popup.
the os is macos 12.3.1
gstreamer is install via brew, so its the latest available
i have attached a log as well
any help would be awesome
thanks advance[Log_at_2022-05-19_4-30-30_PM.txt](/uploads/793dcab2217594fdfbe81db53cdd1b73/Log_at_2022-05-19_4-30-30_PM.txt)https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1230Mopiy-Iris with gstreamer doesn't play old MP3 files2022-05-19T14:07:05ZJoël MüllerMopiy-Iris with gstreamer doesn't play old MP3 files### Describe your issue
<!-- a clear and concise summary of the bug. -->
<!-- For any GStreamer usage question, please contact the community using the #gstreamer channel on IRC https://www.oftc.net/ or the mailing list on https://gstream...### Describe your issue
<!-- a clear and concise summary of the bug. -->
<!-- For any GStreamer usage question, please contact the community using the #gstreamer channel on IRC https://www.oftc.net/ or the mailing list on https://gstreamer.freedesktop.org/lists/ -->
#### Expected Behavior
Play the MP3
#### Observed Behavior
No sound
#### Setup
- Arch Linux Mainline 5.17.7-arch1-2
- Computer
- GStreamer Version: 0.10
### Steps to reproduce the bug
<!-- please fill in exact steps which reproduce the bug on your system, for example: -->
1. Install Mopidy and Mopidy-Iris from AUR (aur.archlinux.org)
2. Import your MP3 Files
3. Play a old MP3 from www.themixingbowl.org (Essential Mix)
### How reproducible is the bug?
Every time with the same files other are working
### Screenshots if relevant
### Solutions you have tried
Play with VLC
### Related non-duplicate issues
### Additional Informationhttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1229Compile issue with pangocairo with native msvc vs2022 build2022-05-18T09:54:55ZRares BraniciCompile issue with pangocairo with native msvc vs2022 buildI'm using Windows 11, Visual Studio 2022.
Cloned GStreamer main branch.
Ran "meson out\bad" and "meson compile -C out\bad"
Compilation fails with
```
[502/3806] Compiling C object subprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gs...I'm using Windows 11, Visual Studio 2022.
Cloned GStreamer main branch.
Ran "meson out\bad" and "meson compile -C out\bad"
Compilation fails with
```
[502/3806] Compiling C object subprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gsttextrender.c.obj
FAILED: subprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gsttextrender.c.obj
"cl" "-Isubprojects\gst-plugins-base\ext\pango\gstpango.dll.p" "-Isubprojects\gst-plugins-base\ext\pango" "-I..\..\subprojects\gst-plugins-base\ext\pango" "-Isubprojects\gst-plugins-base" "-I..\..\subprojects\gst-plugins-base" "-Isubprojects\gst-plugins-base\gst-libs" "-I..\..\subprojects\gst-plugins-base\gst-libs" "-Isubprojects\gstreamer\libs" "-I..\..\subprojects\gstreamer\libs" "-Isubprojects\gstreamer" "-I..\..\subprojects\gstreamer" "-Isubprojects\orc" "-I..\..\subprojects\orc" "-Isubprojects\gst-plugins-base\gst-libs\gst\video" "-Isubprojects\gstreamer\gst" "-Ic:/projects/repos/cerbero.git/1.20/build/dist/msvc_x86_64/include/pango-1.0" "-IC:/gstreamer/1.0/msvc_x86_64/include/harfbuzz" "-IC:/gstreamer/1.0/msvc_x86_64/include" "-IC:/gstreamer/1.0/msvc_x86_64/include/fribidi" "-IC:/gstreamer/1.0/msvc_x86_64/include/glib-2.0" "-IC:/gstreamer/1.0/msvc_x86_64/lib/glib-2.0/include" "-IC:/gstreamer/1.0/msvc_x86_64/include/cairo" "-Ic:/projects/repos/cerbero.git/1.20/build/dist/msvc_x86_64/include/freetype2" "-IC:/gstreamer/1.0/msvc_x86_64/include/libpng16" "-IC:/gstreamer/1.0/msvc_x86_64/include/pixman-1" "/MD" "/nologo" "/showIncludes" "/utf-8" "/W2" "/O2" "/Zi" "/wd4018" "/wd4146" "/wd4244" "/wd4305" "/utf-8" "/we4002" "/we4003" "/we4013" "/we4020" "/we4027" "/we4029" "/we4033" "/we4045" "/we4047" "/we4053" "/we4062" "/we4098" "/we4101" "/we4189" "-DG_DISABLE_DEPRECATED" "/utf-8" "-DHAVE_CONFIG_H" "/Fdsubprojects\gst-plugins-base\ext\pango\gstpango.dll.p\gsttextrender.c.pdb" /Fosubprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gsttextrender.c.obj "/c" ../../subprojects/gst-plugins-base/ext/pango/gsttextrender.c
C:\work\dev\public\gstreamer\subprojects\gst-plugins-base\ext\pango\gsttextrender.h(5): fatal error C1083: Cannot open include file: 'pango/pangocairo.h': No such file or directory
```
[meson-log.zip](/uploads/9a7e9050b3f6639d137b20f58197ed3d/meson-log.zip)https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/969Compile issue with pangocairo2022-05-18T09:24:32ZRares BraniciCompile issue with pangocairoI'm using Windows 11, Visual Studio 2022.
Cloned GStreamer main branch.
Ran "meson out\bad" and "meson compile -C out\bad"
Compilation fails with
[502/3806] Compiling C object subprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gstte...I'm using Windows 11, Visual Studio 2022.
Cloned GStreamer main branch.
Ran "meson out\bad" and "meson compile -C out\bad"
Compilation fails with
[502/3806] Compiling C object subprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gsttextrender.c.obj
FAILED: subprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gsttextrender.c.obj
"cl" "-Isubprojects\gst-plugins-base\ext\pango\gstpango.dll.p" "-Isubprojects\gst-plugins-base\ext\pango" "-I..\..\subprojects\gst-plugins-base\ext\pango" "-Isubprojects\gst-plugins-base" "-I..\..\subprojects\gst-plugins-base" "-Isubprojects\gst-plugins-base\gst-libs" "-I..\..\subprojects\gst-plugins-base\gst-libs" "-Isubprojects\gstreamer\libs" "-I..\..\subprojects\gstreamer\libs" "-Isubprojects\gstreamer" "-I..\..\subprojects\gstreamer" "-Isubprojects\orc" "-I..\..\subprojects\orc" "-Isubprojects\gst-plugins-base\gst-libs\gst\video" "-Isubprojects\gstreamer\gst" "-Ic:/projects/repos/cerbero.git/1.20/build/dist/msvc_x86_64/include/pango-1.0" "-IC:/gstreamer/1.0/msvc_x86_64/include/harfbuzz" "-IC:/gstreamer/1.0/msvc_x86_64/include" "-IC:/gstreamer/1.0/msvc_x86_64/include/fribidi" "-IC:/gstreamer/1.0/msvc_x86_64/include/glib-2.0" "-IC:/gstreamer/1.0/msvc_x86_64/lib/glib-2.0/include" "-IC:/gstreamer/1.0/msvc_x86_64/include/cairo" "-Ic:/projects/repos/cerbero.git/1.20/build/dist/msvc_x86_64/include/freetype2" "-IC:/gstreamer/1.0/msvc_x86_64/include/libpng16" "-IC:/gstreamer/1.0/msvc_x86_64/include/pixman-1" "/MD" "/nologo" "/showIncludes" "/utf-8" "/W2" "/O2" "/Zi" "/wd4018" "/wd4146" "/wd4244" "/wd4305" "/utf-8" "/we4002" "/we4003" "/we4013" "/we4020" "/we4027" "/we4029" "/we4033" "/we4045" "/we4047" "/we4053" "/we4062" "/we4098" "/we4101" "/we4189" "-DG_DISABLE_DEPRECATED" "/utf-8" "-DHAVE_CONFIG_H" "/Fdsubprojects\gst-plugins-base\ext\pango\gstpango.dll.p\gsttextrender.c.pdb" /Fosubprojects/gst-plugins-base/ext/pango/gstpango.dll.p/gsttextrender.c.obj "/c" ../../subprojects/gst-plugins-base/ext/pango/gsttextrender.c
C:\work\dev\public\gstreamer\subprojects\gst-plugins-base\ext\pango\gsttextrender.h(5): fatal error C1083: Cannot open include file: 'pango/pangocairo.h': No such file or directory
[meson-log.zip](/uploads/d944b8453d3004f016330ba747cb3715/meson-log.zip)https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1228gstreamer and gnuradio2022-05-18T10:21:45Zrouba zeitoungstreamer and gnuradioI am currently working on a project that consists of sending live stream video from one SDR to another with GNURadio. I am also using Gstreamer to create a pipeline between 2 computers.
Unfortunately, I am repetitively facing the same p...I am currently working on a project that consists of sending live stream video from one SDR to another with GNURadio. I am also using Gstreamer to create a pipeline between 2 computers.
Unfortunately, I am repetitively facing the same problem where after 30 sec a message pops up
" WARNING debug information: gstbasesink.c(2902): gst_base_sink_is_too_late (): /GstPlayBin:playbin/GstPlaySink:playsink/GstBin:vbin/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow "
and the receiver stops receiving the video. I tried decreasing the bitrate which allowed longer sending time but it still stops after a while.
What advice can you give me to solve this problem?
the commands i used on terminals are:
for Tx: gst-launch-1.0 -v v4l2src device="/dev/video0" ! videoconvert ! x264enc tune=zerolatency bitrate=300 ! mpegtsmux ! filesink location=video1.ts
for Rx: gst-play-1.0 video3.tshttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1227jpegdec: Segfault in libgstjpeg gst_jpeg_dec_handle_frame2022-05-25T05:50:35ZJames Hilliardjpegdec: Segfault in libgstjpeg gst_jpeg_dec_handle_frame### Describe your issue
<!-- a clear and concise summary of the bug. -->
<!-- For any GStreamer usage question, please contact the community using the #gstreamer channel on IRC https://www.oftc.net/ or the mailing list on https://gstream...### Describe your issue
<!-- a clear and concise summary of the bug. -->
<!-- For any GStreamer usage question, please contact the community using the #gstreamer channel on IRC https://www.oftc.net/ or the mailing list on https://gstreamer.freedesktop.org/lists/ -->
Capturing a mjpeg stream through pipewire from a uvc camera has visual glitching and crashes with a segfault in libgstjpeg.
I am using libjpeg-turbo.
#### Setup
- **Operating System:** buildroot
- **Device:** Computer
- **GStreamer Version:** 1.20.1
- **Command line:** N/A
### Steps to reproduce the bug
<!-- please fill in exact steps which reproduce the bug on your system, for example: -->
1. open mjpeg camera stream in wpewebkit
### How reproducible is the bug?
<!-- The reproducibility of the bug is Always/Intermittent/Only once after doing a very specific set of steps-->
Within minutes
### Related non-duplicate issues
#1118 #1121 #1122
### Additional Information
<!-- Any other information such as logs. Make use of <details> for long output -->
```c
(gdb) bt
#0 gst_jpeg_dec_handle_frame (bdec=0x7f5e2c1e9a00, frame=0x7f5e80089a00) at ../ext/jpeg/gstjpegdec.c:1352
#1 0x00007f5ef8259977 in gst_video_decoder_decode_frame (decoder=decoder@entry=0x7f5e2c1e9a00, frame=frame@entry=0x7f5e80089a00) at ../gst-libs/gst/video/gstvideodecoder.c:4003
#2 0x00007f5ef8259d6c in gst_video_decoder_chain_forward (decoder=decoder@entry=0x7f5e2c1e9a00, buf=buf@entry=0x7f5e30122d80, at_eos=at_eos@entry=0) at ../gst-libs/gst/video/gstvideodecoder.c:2489
#3 0x00007f5ef825bd67 in gst_video_decoder_chain (pad=<optimized out>, parent=0x7f5e2c1e9a00, buf=0x7f5e30122d80) at ../gst-libs/gst/video/gstvideodecoder.c:2831
#4 0x00007f5efaf27a18 in gst_pad_chain_data_unchecked (pad=pad@entry=0x5646094e0c10, type=type@entry=4112, data=data@entry=0x7f5e30122d80) at ../gst/gstpad.c:4447
#5 0x00007f5efaf2935e in gst_pad_push_data (pad=pad@entry=0x5646094e0520, type=type@entry=4112, data=data@entry=0x7f5e30122d80) at ../gst/gstpad.c:4711
#6 0x00007f5efaf2e377 in gst_pad_push (pad=pad@entry=0x5646094e0520, buffer=buffer@entry=0x7f5e30122d80) at ../gst/gstpad.c:4830
#7 0x00007f5e8af381b9 in gst_single_queue_push_one (allow_drop=<synthetic pointer>, object=0x7f5e30122d80, sq=0x7f5e301326e0, mq=0x564609480730) at ../plugins/elements/gstmultiqueue.c:1941
#8 gst_multi_queue_loop (pad=<optimized out>) at ../plugins/elements/gstmultiqueue.c:2270
#9 0x00007f5efaf4ddf4 in gst_task_func (task=0x7f5e30122710) at ../gst/gsttask.c:384
#10 0x00007f5efb0b16db in g_thread_pool_thread_proxy (data=<optimized out>) at ../glib/gthreadpool.c:354
#11 0x00007f5efb0b1044 in g_thread_proxy (data=0x7f5eac09b120) at ../glib/gthread.c:827
#12 0x00007f5efab2d0e6 in start_thread (arg=<optimized out>) at pthread_create.c:442
#13 0x00007f5efab93fec in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
(gdb) bt full
#0 gst_jpeg_dec_handle_frame (bdec=0x7f5e2c1e9a00, frame=0x7f5e80089a00) at ../ext/jpeg/gstjpegdec.c:1352
ret = GST_FLOW_OK
dec = 0x7f5e2c1e9a00
vframe = {info = {finfo = 0x7f5ef82bb8a8 <formats+488>, interlace_mode = GST_VIDEO_INTERLACE_MODE_PROGRESSIVE, flags = GST_VIDEO_FLAG_NONE, width = 1280, height = 720, size = 1382400, views = 1,
chroma_site = GST_VIDEO_CHROMA_SITE_NONE, colorimetry = {range = GST_VIDEO_COLOR_RANGE_0_255, matrix = GST_VIDEO_COLOR_MATRIX_BT601, transfer = GST_VIDEO_TRANSFER_UNKNOWN,
primaries = GST_VIDEO_COLOR_PRIMARIES_UNKNOWN}, par_n = 1, par_d = 1, fps_n = 30, fps_d = 1, offset = {0, 921600, 1152000, 0}, stride = {1280, 640, 640, 0}, ABI = {abi = {
multiview_mode = GST_VIDEO_MULTIVIEW_MODE_MONO, multiview_flags = GST_VIDEO_MULTIVIEW_FLAGS_NONE, field_order = GST_VIDEO_FIELD_ORDER_UNKNOWN}, _gst_reserved = {0x0, 0x0, 0x0, 0x0}}},
flags = GST_VIDEO_FRAME_FLAG_NONE, buffer = 0x7f5e9009fa20, meta = 0x0, id = -1, data = {0x7f5dd9600078, 0x7f5dd96e1078, 0x7f5dd9719478, 0x7f5e897dcdc7}, map = {{memory = 0x7f5dd9600000,
flags = (GST_MAP_READ | GST_MAP_WRITE),
data = 0x7f5dd9600078 "RPNMMMOQVZ^_^\\\\]][WSPQUZ`_]ZXXYZZYXXXYYYYWWZ\\\\\\^^\\\\]]\\[[XXZ\\^`aa`aa_\\[[ZZZYWUSRRSSSRSVY\\^]\\[[[[[\\[YXVUX[^^__^]\\\\\\]^``a``a_][[ZZYZ[[[[^aaa`__]\\]_aa_]^`aa__`bcbabb`^]\\]_`cdda__bcfeccdcb``cgkmllkiijjjiii"..., size = 1382400, maxsize = 1382400, user_data = {0x481482b536055200, 0x7f5ef829b08b, 0x7f5efafb59e0 <_gst_debug_min>, 0x56460940d6e0}, _gst_reserved = {
0x7f5efaf1eb38 <gst_debug_log_valist+77>, 0x7f5dddd095e0, 0x7f5efaf76fbb, 0x7f5e857205e0}}, {memory = 0x7f5e857205e0, flags = (unknown: 740203288),
data = 0x7f5efb0ceb03 <g_private_get+6> "\213\070Z\351\025\307\371\377H\203\354\030H\211t$\b\350\327\373\377\377H\213t$\b\213\070\350;\322\371\377\205\300t\016\211\307H\215\065\242\203\006", size = 0,
maxsize = 5193919985072034304, user_data = {0x7f5dddd095a0, 0x7f5dddd09780, 0x7f5eac091800, 0x3010}, _gst_reserved = {0x7f5dddd098a0, 0x7f5dddd09780, 0x30101, 0x7f5efaf1ec66 <gst_debug_log+139>}}, {
memory = 0x7f5efaf76fbb, flags = (unknown: 3721434592), data = 0x3000000030 <error: Cannot access memory at address 0x3000000030>, size = 140045913811768, maxsize = 140041130120832, user_data = {
0x7f5ef8299d3b, 0x18, 0x5646094e0c10, 0x4b1e}, _gst_reserved = {0x7f5e857205e0, 0x7f5efafb59e0 <_gst_debug_min>, 0x481482b536055200, 0x3}}, {memory = 0x7f5e2c1e9800, flags = (unknown: 2148047360),
data = 0x7f5e2c1e9a00 "\240\337\v,^\177", size = 140045914429920, maxsize = 0, user_data = {0x31, 0x7f5efaf1ec66 <gst_debug_log+139>, 0x7f5ef8299d3b, 0x7f5dddd09680}, _gst_reserved = {0x3000000030,
0x7f5dddd09768, 0x7f5ef8299d3b, 0x0}}}, _gst_reserved = {0x7f5e80089a00, 0x7f5e2c1e9a00, 0x7f5efafb59e0 <_gst_debug_min>, 0x7f5efb0ceb03 <g_private_get+6>}}
num_fields = <optimized out>
output_height = <optimized out>
height = <optimized out>
width = <optimized out>
code = <optimized out>
need_unmap = 1
state = 0x0
release_frame = 1
has_eoi = <optimized out>
data = 0x7f5dcced4078 "\377\330\377", <incomplete sequence \333>
nbytes = 180540
__func__ = "gst_jpeg_dec_handle_frame"
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
#1 0x00007f5ef8259977 in gst_video_decoder_decode_frame (decoder=decoder@entry=0x7f5e2c1e9a00, frame=frame@entry=0x7f5e80089a00) at ../gst-libs/gst/video/gstvideodecoder.c:4003
priv = 0x7f5e2c1e9800
decoder_class = 0x7f5e2c0bdfa0
ret = GST_FLOW_OK
__func__ = "gst_video_decoder_decode_frame"
#2 0x00007f5ef8259d6c in gst_video_decoder_chain_forward (decoder=decoder@entry=0x7f5e2c1e9a00, buf=buf@entry=0x7f5e30122d80, at_eos=at_eos@entry=0) at ../gst-libs/gst/video/gstvideodecoder.c:2489
frame = 0x7f5e80089a00
was_keyframe = 1
priv = 0x7f5e2c1e9800
klass = <optimized out>
ret = GST_FLOW_OK
__func__ = "gst_video_decoder_chain_forward"
#3 0x00007f5ef825bd67 in gst_video_decoder_chain (pad=<optimized out>, parent=0x7f5e2c1e9a00, buf=0x7f5e30122d80) at ../gst-libs/gst/video/gstvideodecoder.c:2831
decoder = 0x7f5e2c1e9a00
ret = GST_FLOW_OK
__func__ = "gst_video_decoder_chain"
#4 0x00007f5efaf27a18 in gst_pad_chain_data_unchecked (pad=pad@entry=0x5646094e0c10, type=type@entry=4112, data=data@entry=0x7f5e30122d80) at ../gst/gstpad.c:4447
chainfunc = 0x7f5ef825ba83 <gst_video_decoder_chain>
ret = <optimized out>
parent = 0x7f5e2c1e9a00
handled = 0
__func__ = "gst_pad_chain_data_unchecked"
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
#5 0x00007f5efaf2935e in gst_pad_push_data (pad=pad@entry=0x5646094e0520, type=type@entry=4112, data=data@entry=0x7f5e30122d80) at ../gst/gstpad.c:4711
peer = 0x5646094e0c10
ret = <optimized out>
handled = 0
__func__ = "gst_pad_push_data"
_g_boolean_var_ = <optimized out>
#6 0x00007f5efaf2e377 in gst_pad_push (pad=pad@entry=0x5646094e0520, buffer=buffer@entry=0x7f5e30122d80) at ../gst/gstpad.c:4830
res = <optimized out>
#7 0x00007f5e8af381b9 in gst_single_queue_push_one (allow_drop=<synthetic pointer>, object=0x7f5e30122d80, sq=0x7f5e301326e0, mq=0x564609480730) at ../plugins/elements/gstmultiqueue.c:1941
buffer = 0x7f5e30122d80
timestamp = 2998952533066
duration = <optimized out>
_g_boolean_var_ = <optimized out>
result = GST_FLOW_OK
srcpad = 0x5646094e0520
result = <optimized out>
srcpad = <optimized out>
__func__ = "gst_single_queue_push_one"
_g_boolean_var_ = <optimized out>
buffer = <optimized out>
timestamp = <optimized out>
duration = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
event = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
query = <optimized out>
res = <optimized out>
_g_boolean_var_ = <optimized out>
_g_boolean_var_ = <optimized out>
#8 gst_multi_queue_loop (pad=<optimized out>) at ../plugins/elements/gstmultiqueue.c:2270
sq = 0x7f5e301326e0
item = <optimized out>
sitem = 0x7f5eb00bcad0
mq = 0x564609480730
object = 0x7f5e30122d80
newid = 597
result = <optimized out>
next_time = <optimized out>
is_buffer = 1
is_query = 0
do_update_buffering = 0
dropping = <optimized out>
srcpad = 0x5646094e0520
__func__ = "gst_multi_queue_loop"
#9 0x00007f5efaf4ddf4 in gst_task_func (task=0x7f5e30122710) at ../gst/gsttask.c:384
lock = 0x5646094e0590
tself = 0x7f5eac09b120
priv = 0x7f5e301226c0
__func__ = "gst_task_func"
_g_boolean_var_ = <optimized out>
#10 0x00007f5efb0b16db in g_thread_pool_thread_proxy (data=<optimized out>) at ../glib/gthreadpool.c:354
task = 0x7f5e9805d8c0
pool = 0x5646090ca7a0
#11 0x00007f5efb0b1044 in g_thread_proxy (data=0x7f5eac09b120) at ../glib/gthread.c:827
thread = 0x7f5eac09b120
__func__ = "g_thread_proxy"
_g_boolean_var_ = <optimized out>
#12 0x00007f5efab2d0e6 in start_thread (arg=<optimized out>) at pthread_create.c:442
ret = <optimized out>
pd = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140041219197144, -8403116295774794287, 140041130124864, -160, 0, 8387712, 8491987764563938769, 8493743978443574737}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#13 0x00007f5efab93fec in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
No locals.
```https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/374glib no longer picks up gio modules automatically on macOS2022-08-03T00:28:36ZNirbheek Chauhannirbheek.chauhan@gmail.comglib no longer picks up gio modules automatically on macOSEver since we moved to a relocatable prefix, glib is no longer picking up GIO modules automatically. The following is needed:
```
$ export GIO_EXTRA_MODULES=/Library/Frameworks/GStreamer.framework/Libraries/gio/modules/
```
This probab...Ever since we moved to a relocatable prefix, glib is no longer picking up GIO modules automatically. The following is needed:
```
$ export GIO_EXTRA_MODULES=/Library/Frameworks/GStreamer.framework/Libraries/gio/modules/
```
This probably requires a patch to gio to understand relocatable prefixes on macOS, similar to Windows.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1223va: Fix/add buffer stride/offset validation2022-11-25T12:36:33ZNicolas Dufresneva: Fix/add buffer stride/offset validationOn my system, Vega64, VA element tries P010 decoding and exporting that to DMABuf, and that goes terribly wrong and fail.
```
0:08:13.958544331 410736 0x7fff840990c0 ERROR videometa gstvideometa.c:242:default_map: plane 1, ...On my system, Vega64, VA element tries P010 decoding and exporting that to DMABuf, and that goes terribly wrong and fail.
```
0:08:13.958544331 410736 0x7fff840990c0 ERROR videometa gstvideometa.c:242:default_map: plane 1, no memory at offset 16588800
0:08:13.958598383 410736 0x7fff840990c0 ERROR default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 1
```
While debugging that, I've stumbled what looks like driver bug, but also pretty much dislike the sloppiness of the dmabuf exporting code (gst_va_dmabuf_allocator_setup_buffer_full()). This function is partially implemented and is missing any kind of validation. Here's the prime descriptor that I'm getting:
```
$4 = {
fourcc = 808530000,
width = 3840,
height = 2160,
num_objects = 2,
objects = {{
fd = 28,
size = 8294400,
drm_format_modifier = 0
}, {
fd = 29,
size = 8294400,
drm_format_modifier = 0
}, {
fd = 0,
size = 0,
drm_format_modifier = 0
}, {
fd = 0,
size = 0,
drm_format_modifier = 0
}},
num_layers = 2,
layers = {{
drm_format = 540422482,
num_planes = 1,
object_index = {0, 0, 0, 0},
offset = {0, 0, 0, 0},
pitch = {7680, 0, 0, 0}
}, {
drm_format = 842224199,
num_planes = 1,
object_index = {1, 0, 0, 0},
offset = {16588800, 0, 0, 0},
pitch = {7680, 0, 0, 0}
}, {
drm_format = 0,
num_planes = 0,
object_index = {0, 0, 0, 0},
offset = {0, 0, 0, 0},
pitch = {0, 0, 0, 0}
}, {
drm_format = 0,
num_planes = 0,
object_index = {0, 0, 0, 0},
offset = {0, 0, 0, 0},
pitch = {0, 0, 0, 0}
}}
}
```
So basically two DMABuf and 2 layers. That makes sense, more of less, I'm a little surprise that the offset aren't relative to the object starts here if you see what I mean. But perhaps this is documented somewhere ? In short, first bug, the size of the first DMABuf should have been at least 16588800 (which matches the offset), but has been set to 8294400. The pitch looks fine, the second dmabuf size is fine, since its sub-sampled. We should be able to fail early and cleanly on this type of driver error imho.
cc @He_Junyan @vjaquezhttps://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/382PadProbeId does not implement Copy+Clone2022-06-07T17:34:27ZStephan SeitzPadProbeId does not implement Copy+CloneI'm trying to log the probe id inside a PadProbe. However I can't move it out of `info` except with a hack like this (`info.id` is `Option<PadProbeId>`). Even `into_glib` would move out of the shared reference.
```rust
move |_pa...I'm trying to log the probe id inside a PadProbe. However I can't move it out of `info` except with a hack like this (`info.id` is `Option<PadProbeId>`). Even `into_glib` would move out of the shared reference.
```rust
move |_pad, info| {
let hack: *const u64 = unsafe {transmute(info.id.as_ref())};
let clone = unsafe { *hack };
}
```
The implementation of Pad
```rust
#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub struct PadProbeId(NonZeroU64);
impl IntoGlib for PadProbeId {
type GlibType = libc::c_ulong;
fn into_glib(self) -> libc::c_ulong {
self.0.get() as libc::c_ulong
}
}
```
I think PadProbeId should derive `Clone+Copy`
![image](/uploads/537d525e829dc5457970f014ae5bd9ac/image.png)https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1222orc test failures on armhf2022-05-20T18:52:21ZJeremy Bichaorc test failures on armhf### Describe your issue
Multiple orc tests for gst-plugins-good are failing on armhf.
#### Setup
- Ubuntu 22.10 Development or Ubuntu 22.04 LTS
- **GStreamer Version:** 1.20.1
### Steps to reproduce the bug
1. `meson test`
### Additi...### Describe your issue
Multiple orc tests for gst-plugins-good are failing on armhf.
#### Setup
- Ubuntu 22.10 Development or Ubuntu 22.04 LTS
- **GStreamer Version:** 1.20.1
### Steps to reproduce the bug
1. `meson test`
### Additional Information
It looks like the orc tests [passed](https://launchpad.net/ubuntu/+source/gst-plugins-good1.0/1.19.90-1ubuntu1/+build/23117912) with 1.19.90 on February 1, but then [failed](https://launchpad.net/ubuntu/+source/gst-plugins-good1.0/1.20.0-2ubuntu1/+build/23128970) with 1.20.0 on February 4.
The tests are [passing](https://buildd.debian.org/status/logs.php?pkg=gst-plugins-good1.0&arch=armhf) on Debian's armhf. I'm unaware of major relevant differences between Debian and Ubuntu here.
The [test log](https://launchpad.net/ubuntu/+source/gst-plugins-good1.0/1.20.2-1ubuntu1/+build/23752215) doesn't provide much details.
```
105/109 orc_deinterlace FAIL 0.73s killed by signal 11 SIGSEGV
19:04:45 MALLOC_PERTURB_=73 /<<PKGBUILDDIR>>/obj-arm-linux-gnueabihf/tests/check/orc_deinterlace
----------------------------------- output -----------------------------------
deinterlace_line_vfir:
------------------------------------------------------------------------------
106/109 orc_videomixer FAIL 0.75s killed by signal 11 SIGSEGV
19:04:45 MALLOC_PERTURB_=71 /<<PKGBUILDDIR>>/obj-arm-linux-gnueabihf/tests/check/orc_videomixer
----------------------------------- output -----------------------------------
video_mixer_orc_splat_u32:
------------------------------------------------------------------------------
107/109 orc_videobox FAIL 0.69s killed by signal 11 SIGSEGV
19:04:46 MALLOC_PERTURB_=128 /<<PKGBUILDDIR>>/obj-arm-linux-gnueabihf/tests/check/orc_videobox
----------------------------------- output -----------------------------------
video_box_orc_splat_u32:
------------------------------------------------------------------------------
```https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/381got panic failed to create element2022-05-17T13:02:27ZJason Shengot panic failed to create elementHi All
got this panic i have also try with videotestsrc
```rust
gst::init().unwrap();
// Create the elements
let source = gst::ElementFactory::make("uridecodebin", Some("source"))
.expect("Could not create sink element uride...Hi All
got this panic i have also try with videotestsrc
```rust
gst::init().unwrap();
// Create the elements
let source = gst::ElementFactory::make("uridecodebin", Some("source"))
.expect("Could not create sink element uridecodebin");
let convert = gst::ElementFactory::make("audioconvert", Some("convert"))
.expect("Could not create convert element");
```
thread 'main' panicked at 'Could not create sink element uridecodebin: BoolError { message: "Failed to create element from factory name", filename: "/Users/jason/.cargo/registry/src/github.com-1ecc6299db9ec823/gstreamer-0.18.8/src/auto/element_factory.rs", function: "gstreamer::auto::element_factory", line: 152 }'
i am on macos 12.3.1 m1
installed gstreamer with brew install
the version of gstreamer is 1.20.1 (installed it as per doc, but without the --with tags, which doesn't allow to install with t eh tags)
any help would be awesome
thanks advance
Jasonhttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1221elements_rtpstorage test failing with 1.20: cannot register existing type 'Gs...2023-05-21T13:16:06ZJeremy Bichaelements_rtpstorage test failing with 1.20: cannot register existing type 'GstRtpStorage'### Describe your issue
The elements_storage build test for gst-plugins-good is failing starting with the 1.20 series
#### Setup
- Ubuntu 22.10 Development (but also is failing on Ubuntu 22.04 LTS and Debian Unstable
- **GStreamer Vers...### Describe your issue
The elements_storage build test for gst-plugins-good is failing starting with the 1.20 series
#### Setup
- Ubuntu 22.10 Development (but also is failing on Ubuntu 22.04 LTS and Debian Unstable
- **GStreamer Version:** 1.20.1
### Steps to reproduce the bug
1. `meson test`
### How reproducible is the bug?
Always
### Additional Information
I opened https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1220 for another build test failure
<details><summary> test log</summary>
I don't think the `External plugin loader failed` warning is important since it also shows with other non-failing tests.
```
60/109 elements_rtpstorage FAIL 0.15s exit status 2
17:43:19 GST_REGISTRY=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtpstorage.registry
GST_PLUGIN_SYSTEM_PATH_1_0=''
GST_PLUGIN_LOADING_WHITELIST=gstreamer:gst-plugins-base:timecode:gst-plugins-good@/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu GST_PLUGIN_SCANNER_1_0=/usr/libexec/gstreamer-1.0/gst-plugin-scanner
GST_PLUGIN_PATH_1_0=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0
MALLOC_PERTURB_=11 GST_STATE_IGNORE_ELEMENTS='aasink autoaudiosrc autoaudiosink autovideosrc
autovideosink cacasink cairotextoverlay gtkglsink gtksink jackaudiosrc
jackaudiosink osssrc osssink osxaudiosink osxaudiosrc osxvideosrc osxvideosink
pulsesink pulsesrc pulsemixer v4l2src' GSETTINGS_BACKEND=memory CK_DEFAULT_TIMEOUT=20
/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtpstorage
----------------------------------- output -----------------------------------
stdout:
Unexpected critical/warning: cannot register existing type 'GstRtpStorage'
Stack trace:
gst_debug_get_stack_trace (/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2002.0:0x7fb1a1a3b7cf)
?? (/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2002.0:0x7fb1a1816bff)
g_logv (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.7200.1:0x7fb1a18873f6)
g_log (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.7200.1:0x7fb1a18876df)
?? (/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.7200.1:0x7fb1a19979e4)
g_type_register_static (/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.7200.1:0x7fb1a199e863)
g_type_register_static_simple (/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.7200.1:0x7fb1a199eb09)
gst_rtp_storage_get_type_once (gstrtpstorage.c:86)
gst_rtp_storage_get_type (gstrtpstorage.c:86)
main (rtpstorage.c:525)
?? (/usr/lib/x86_64-linux-gnu/libc.so.6:0x7fb1a158ed8c)
__libc_start_main (/usr/lib/x86_64-linux-gnu/libc.so.6:0x7fb1a158ee3c)
_start (/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtpstorage:0x560e94db1061)
stderr:
(elements_rtpstorage:638605): GStreamer-WARNING **: 17:43:19.060: External plugin loader failed. This
most likely means that the plugin loader helper binary was not found or could not be run. You might
need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual. This should
normally not be required though.
../libs/gst/check/libcheck/check_msg.c:79: No messaging setup
```
</details>https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1220elements_rtpvp8 build test failing2023-05-21T13:14:16ZJeremy Bichaelements_rtpvp8 build test failing### Describe your issue
The elements_rtpvp8 build test for gst-plugins-good is failing. It looks like this build test was introduced for the 1.20 series.
#### Setup
- Ubuntu 22.10 Development (but also is failing on Ubuntu 22.04 LTS an...### Describe your issue
The elements_rtpvp8 build test for gst-plugins-good is failing. It looks like this build test was introduced for the 1.20 series.
#### Setup
- Ubuntu 22.10 Development (but also is failing on Ubuntu 22.04 LTS and Debian Unstable
- **GStreamer Version:** 1.20.1
### Steps to reproduce the bug
1. `meson test`
### How reproducible is the bug?
Always
### Additional Information
<details><summary> test log</summary>
I don't think the `External plugin loader failed` warning is important since it also shows with other non-failing tests.
```
48/110 elements_rtpvp8 FAIL 0.15s exit status 2
17:26:26 MALLOC_PERTURB_=19 GST_STATE_IGNORE_ELEMENTS='aasink autoaudiosrc autoaudiosink autovideosrc
autovideosink cacasink cairotextoverlay gtkglsink gtksink jackaudiosrc
jackaudiosink osssrc osssink osxaudiosink osxaudiosrc osxvideosrc osxvideosink
pulsesink pulsesrc pulsemixer v4l2src' GST_PLUGIN_SCANNER_1_0=/usr/libexec/gstreamer-1.0/gst-plugin-scanner
GST_REGISTRY=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtpvp8.registry
GST_PLUGIN_LOADING_WHITELIST=gstreamer:gst-plugins-base:timecode:gst-plugins-good@/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu
CK_DEFAULT_TIMEOUT=20 GST_PLUGIN_SYSTEM_PATH_1_0='' GSETTINGS_BACKEND=memory
GST_PLUGIN_PATH_1_0=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0 /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtpvp8
----------------------------------- output -----------------------------------
stdout:
Unexpected critical/warning: g_pointer_type_register_static: assertion 'g_type_from_name (name) == 0' failed
Stack trace:
gst_debug_get_stack_trace (/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2002.0:0x7f217ee4e7cf)
?? (/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2002.0:0x7f217ec29bff)
g_logv (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.7200.1:0x7f217ec9a3f6)
g_log (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.7200.1:0x7f217ec9a6df)
g_pointer_type_register_static (/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.7200.1:0x7f217edb7a2e)
gst_meta_api_type_register (/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2002.0:0x7f217ee5b524)
gst_meta_register_custom (/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2002.0:0x7f217ee5b84a)
main (rtpvp8.c:784)
?? (/usr/lib/x86_64-linux-gnu/libc.so.6:0x7f217ea14d8c)
__libc_start_main (/usr/lib/x86_64-linux-gnu/libc.so.6:0x7f217ea14e3c)
_start (/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtpvp8:0x563ba1e6a741)
stderr:
(elements_rtpvp8:616191): GStreamer-WARNING **: 17:26:26.077: External plugin loader failed. This
most likely means that the plugin loader helper binary was not found or could not be run. You might
need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual. This should
normally not be required though.
../libs/gst/check/libcheck/check_msg.c:79: No messaging setup
------------------------------------------------------------------------------
49/110 elements_rtph265 OK 0.32s
17:26:25 GST_PLUGIN_PATH_1_0=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0 GST_REGISTRY=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtph265.registry
GST_STATE_IGNORE_ELEMENTS='aasink autoaudiosrc autoaudiosink autovideosrc
autovideosink cacasink cairotextoverlay gtkglsink gtksink jackaudiosrc
jackaudiosink osssrc osssink osxaudiosink osxaudiosrc osxvideosrc osxvideosink
pulsesink pulsesrc pulsemixer v4l2src' MALLOC_PERTURB_=76
GST_PLUGIN_LOADING_WHITELIST=gstreamer:gst-plugins-base:timecode:gst-plugins-good@/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu
CK_DEFAULT_TIMEOUT=20 GST_PLUGIN_SYSTEM_PATH_1_0='' GSETTINGS_BACKEND=memory
GST_PLUGIN_SCANNER_1_0=/usr/libexec/gstreamer-1.0/gst-plugin-scanner
/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/tests/check/elements_rtph265
----------------------------------- output -----------------------------------
stdout:
Running suite(s): rtph265
100%: Checks: 13, Failures: 0, Errors: 0
Check suite rtph265 ran in 0.168s (tests failed: 0)
stderr:
(elements_rtph265:616127): GStreamer-WARNING **: 17:26:25.927: External plugin loader failed. This
most likely means that the plugin loader helper binary was not found or could not be run. You might
need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual. This should
normally not be required though.
```
</details>https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1718Anonymous faces with faceblur, facedetect2023-07-20T10:38:21ZMichael PrujanAnonymous faces with faceblur, facedetectHi,
I need to anonymize faces on video.
I used faceblur plugin, however, the face is still there.
`gst-launch-1.0 autovideosrc ! videoconvert ! faceblur profile=/usr/share/OpenCV/haarcascades/haarcascade_frontalface_default.xml ! autovi...Hi,
I need to anonymize faces on video.
I used faceblur plugin, however, the face is still there.
`gst-launch-1.0 autovideosrc ! videoconvert ! faceblur profile=/usr/share/OpenCV/haarcascades/haarcascade_frontalface_default.xml ! autovideosink`
Facedetect plugin detects only one face in time.
Thanks for the help,
Michael.