GStreamer issueshttps://gitlab.freedesktop.org/groups/gstreamer/-/issues2021-11-03T13:29:01Zhttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/856mp4mux: pipeline never starts playing when specifying the moov-recovery-file ...2021-11-03T13:29:01ZErlend Eriksenmp4mux: pipeline never starts playing when specifying the moov-recovery-file option### 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/ -->
The `moov-recovery-file` option seems to be broken in (at least) 1.18.5. The pipeline never starts playing when using it.
#### Expected Behavior
<!-- What did you expect to happen -->
I expected the pipeline to play, and produce a video.
#### Observed Behavior
The pipeline never plays, and the video is empty:
```
$ gst-launch-1.0 -e videotestsrc ! video/x-raw,width=1920,height=1080 ! x264enc ! h264parse ! mp4mux moov-recovery-file=out.recover ! filesink location=out.mp4
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Redistribute latency...
^C^Z
[1]+ Stopped gst-launch-1.0 -e videotestsrc ! video/x-raw,width=1920,height=1080 ! x264enc ! h264parse ! mp4mux moov-recovery-file=out.recover ! filesink location=out.mp4
$
$ du out.mp4 out.recover
0 out.mp4
0 out.recover
```
The pipeline works without the moov-recovery-file option.
#### Setup
- **Operating System:** Linux
- **Device:** Computer <!-- Delete as appropriate !-->
- **GStreamer Version:** 1.18.5, also observed on 1.18.3 and 4.
- **Command line:** `$ gst-launch-1.0 -e videotestsrc ! video/x-raw,width=1920,height=1080 ! x264enc ! h264parse ! mp4mux moov-recovery-file=out.recover ! filesink location=out.mp4`
### Steps to reproduce the bug
<!-- please fill in exact steps which reproduce the bug on your system, for example: -->
1. open terminal
2. type `gst-launch-1.0 -e videotestsrc ! video/x-raw,width=1920,height=1080 ! x264enc ! h264parse ! mp4mux moov-recovery-file=out.recover ! filesink location=out.mp4`
### How reproducible is the bug?
<!-- The reproducibility of the bug is Always/Intermittent/Only once after doing a very specific set of steps-->
It always happens on my system, in addition to my imx6, so seems like a general gstreamer 1.18 issue to me.
### Screenshots if relevant
### Solutions you have tried
### Related non-duplicate issues
### Additional Information
<!-- Any other information such as logs. Make use of <details> for long output -->https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/857Low Fps / Bad Quality When streaming from Raspberry PI2021-10-29T10:43:18ZMel3VeNLow Fps / Bad Quality When streaming from Raspberry PIHi,
I am trying to stream from my Raspberry Pi 4 (4GB RAM) to Amazon Kinesis Video with a built inRaspberry Full-HD camera.
While I am able to set up a stream, the image quality is really poor and it looks like my framerate is around 1...Hi,
I am trying to stream from my Raspberry Pi 4 (4GB RAM) to Amazon Kinesis Video with a built inRaspberry Full-HD camera.
While I am able to set up a stream, the image quality is really poor and it looks like my framerate is around 1.
`gst-launch-1.0 -v v4l2src device=/dev/video0 ! videoconvert ! video/x-raw,format=I420,width=1280,height=720,framerate=30/1 ! x264enc bframes=0 key-int-max=45 bitrate=500000 tune=zerolatency ! video/x-h264,stream-format=avc,alignment=au ! kvssink stream-name=Name storage-size=128 access-key="********" secret-key="*****" aws-region=***`
I am fairly new to gstreamer, and don't understand everything in depth, yet.
Is there something wrong with my command? I haven't found any solutions or information regarding this issue.
Any help is appreciated.
I attached a screenshot of the stream, so you can see the quality for yourself.
![Bildschirmfoto_2021-10-29_um_12.38.20](/uploads/09a4ccc2a3259dd5ef05ee1fdea85989/Bildschirmfoto_2021-10-29_um_12.38.20.png)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/937Dependency gdk-pixbuf won't build on M1 mac on Monterey with Rosetta2021-10-31T18:07:27ZTomas HolasDependency gdk-pixbuf won't build on M1 mac on Monterey with Rosetta**How to reproduce:**
Open rosetta terminal on M1 mac and run `/usr/local/homebrew/bin/brew install gst-plugins-good` as the bottle for Monterey is not available yet, it will try to build from source and fail with `../meson.build:1:0: ER...**How to reproduce:**
Open rosetta terminal on M1 mac and run `/usr/local/homebrew/bin/brew install gst-plugins-good` as the bottle for Monterey is not available yet, it will try to build from source and fail with `../meson.build:1:0: ERROR: Unknown options: “gir, x11”` on trying to build the dependency `gdk-pixbuf`. The easiest solution would be create the bottle of this package for Monterey.
**full log:**
```
Warning: Building gdk-pixbuf from source as the bottle needs:
HOMEBREW_CELLAR: /usr/local/Cellar (yours is /usr/local/homebrew/Cellar)
HOMEBREW_PREFIX: /usr/local (yours is /usr/local/homebrew)
==> Downloading https://download.gnome.org/sources/gdk-pixbuf/2.42/gdk-pixbuf
Already downloaded: /Users/tom/Library/Caches/Homebrew/downloads/724ae1276c831c94cf837f54b9317526877d761f644175d58eccc3d5fc297c71--gdk-pixbuf-2.42.6.tar.xz
==> meson --prefix=/usr/local/homebrew/Cellar/gdk-pixbuf/2.42.6 --libdir=/usr
Last 15 lines from /Users/tom/Library/Logs/Homebrew/gdk-pixbuf/01.meson:
-Drelocatable=false
-Dnative_windows_loaders=false
-Dinstalled_tests=false
-Dman=false
..
The Meson build system
Version: 0.60.0
Source dir: /private/tmp/gdk-pixbuf-20211028-50351-38tvna/gdk-pixbuf-2.42.6
Build dir: /private/tmp/gdk-pixbuf-20211028-50351-38tvna/gdk-pixbuf-2.42.6/build
Build type: native build
../meson.build:1:0: ERROR: Unknown options: “gir, x11”https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/946opengl: egl: Can't handle configless egl contexts2021-10-29T14:16:51ZMatthias Clasenopengl: egl: Can't handle configless egl contextsGTK4's egl setup was recently rewritten to use configless EGL contexts when available.
I've just updated my system to F35, getting a newer gstreamer stack (1.19.2), and now video playback in widget-factory is broken. I get errors from g...GTK4's egl setup was recently rewritten to use configless EGL contexts when available.
I've just updated my system to F35, getting a newer gstreamer stack (1.19.2), and now video playback in widget-factory is broken. I get errors from gstreamers gl setup code:
```
1467:gst_gl_context_egl_fill_info:<glwrappedcontext0> could not retrieve egl config from its ID 0x0. Wrong EGLDisplay or context?
```
Disabling the configless EGL contexts on the gtk side makes video playback work again.
So I think gstreamers gl setup code needs to learn about EGL_KHR_no_config_contexthttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/858opengl: egl: Can't handle configless egl contexts2021-11-02T19:26:07ZMatthias Clasenopengl: egl: Can't handle configless egl contextsGTK4's egl setup was recently rewritten to use configless EGL contexts when available.
I've just updated my system to F35, getting a newer gstreamer stack (1.19.2), and now video playback in widget-factory is broken. I get errors from g...GTK4's egl setup was recently rewritten to use configless EGL contexts when available.
I've just updated my system to F35, getting a newer gstreamer stack (1.19.2), and now video playback in widget-factory is broken. I get errors from gstreamers gl setup code:
```
1467:gst_gl_context_egl_fill_info:<glwrappedcontext0> could not retrieve egl config from its ID 0x0. Wrong EGLDisplay or context?
```
Disabling the configless EGL contexts on the gtk side makes video playback work again.
So I think gstreamers gl setup code needs to learn about EGL_KHR_no_config_contexthttps://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/139ges-launch-1.0 does not take clip dimensions2021-10-30T14:56:56ZFrancesc Pinyol Margalefges-launch-1.0 does not take clip dimensionsI'm trying to play a video file with gst-launch-1.0:
ges-launch-1.0 +clip video.mp4 inpoint=0.0 duration=4.0
Input clip was generated by ffmpeg, with dimensions 640x360:
ffmpeg -f lavfi -i "testsrc=duration=10:size=640x360, format=pix...I'm trying to play a video file with gst-launch-1.0:
ges-launch-1.0 +clip video.mp4 inpoint=0.0 duration=4.0
Input clip was generated by ffmpeg, with dimensions 640x360:
ffmpeg -f lavfi -i "testsrc=duration=10:size=640x360, format=pix_fmts=yuv420p" -f lavfi -i anoisesrc=duration=10:colour=pink:amplitude=0.5 -ac 2 video.mp4
But window generated by ges-launch is always 1280x720 size, regardless of the clip dimensions.
Is there a way to force the dimensions of the window?
I'm using GStreamer 1.18.5.https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/171Build broken as subproject of gstreamer monorepo2021-12-22T11:54:51ZMichael FarrellBuild broken as subproject of gstreamer monorepoBuilding `gst-plugins-rs` as a subproject of the gstreamer monorepo is broken:
```
Error: CliError { error: Some(could not find `Cargo.toml` in `/home/michael/gstreamer/build` or any parent directory), exit_code: 101 }
FAILED: subprojec...Building `gst-plugins-rs` as a subproject of the gstreamer monorepo is broken:
```
Error: CliError { error: Some(could not find `Cargo.toml` in `/home/michael/gstreamer/build` or any parent directory), exit_code: 101 }
FAILED: subprojects/gst-plugins-rs/libgstrsaudiofx.so subprojects/gst-plugins-rs/libgstcdg.so subprojects/gst-plugins-rs/libgstclaxon.so subprojects/gst-plugins-rs/libgstrsclosedcaption.so subprojects/gst-plugins-rs/libgstfallbackswitch.so subprojects/gst-plugins-rs/libgstffv1.so subprojects/gst-plugins-rs/libgstrsfile.so subprojects/gst-plugins-rs/libgstrsflv.so subprojects/gst-plugins-rs/libgstgif.so subprojects/gst-plugins-rs/libgsthsv.so subprojects/gst-plugins-rs/libgstrsjson.so subprojects/gst-plugins-rs/libgstlewton.so subprojects/gst-plugins-rs/libgstrav1e.so subprojects/gst-plugins-rs/libgstrsregex.so subprojects/gst-plugins-rs/libgstreqwest.so subprojects/gst-plugins-rs/libgstrspng.so subprojects/gst-plugins-rs/libgstrusoto.so subprojects/gst-plugins-rs/libgstsodium.so subprojects/gst-plugins-rs/libgstrstextwrap.so subprojects/gst-plugins-rs/libgstthreadshare.so subprojects/gst-plugins-rs/libgsttogglerecord.so subprojects/gst-plugins-rs/libgstrswebp.so
/usr/bin/python3 /home/michael/gstreamer/subprojects/gst-plugins-rs/cargo_wrapper.py build /home/michael/gstreamer/build/subprojects/gst-plugins-rs /home/michael/gstreamer/subprojects/gst-plugins-rs /home/michael/gstreamer/build debug gst-plugin-audiofx,gst-plugin-cdg,gst-plugin-claxon,gst-plugin-closedcaption,gst-plugin-fallbackswitch,gst-plugin-ffv1,gst-plugin-file,gst-plugin-flavors,gst-plugin-gif,gst-plugin-hsv,gst-plugin-json,gst-plugin-lewton,gst-plugin-rav1e,gst-plugin-regex,gst-plugin-reqwest,gst-plugin-rspng,gst-plugin-rusoto,gst-plugin-sodium,gst-plugin-textwrap,gst-plugin-threadshare,gst-plugin-togglerecord,gst-plugin-webp '' /home/michael/.local/gst lib/x86_64-linux-gnu so
```
!566 removed the `--manifest-path` parameter from calls to `cargo cbuild`, so now `cargo` doesn't look in the correct place for `Cargo.toml`.
Re-adding the flag to `cargo_wrapper.py` fixes the build:
```python
for p in include:
cargo_cmd.extend(['-p', p])
cargo_cmd.extend(['--manifest-path', os.path.join(meson_current_source_dir, 'Cargo.toml')])
run(cargo_cmd, env)
```Guillaume DesmottesGuillaume Desmotteshttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/859"gst-launch-1.0 --version" Failed2021-10-31T10:55:54ZYAN vivie"gst-launch-1.0 --version" Failed**I recompile gstreamer-1.18.5**
**I added environment variables in bashrc:**
export PATH=$PATH:/usr/local/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export GST_PLUGIN_PATH=/usr/local/lib/aarch64-linux-gnu/gstreamer-1...**I recompile gstreamer-1.18.5**
**I added environment variables in bashrc:**
export PATH=$PATH:/usr/local/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export GST_PLUGIN_PATH=/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0:/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/validate
export GI_TYPELIB_PATH=/usr/local/lib/aarch64-linux-gnu/girepository-1.0
**When I execute "gst-launch-1.0 -- version", the output is as follows:**
`(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.596: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so: undefined symbol: gst_audio_buffer_truncate
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.599: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideobox.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideobox.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.602: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.603: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstwavpack.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstwavpack.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.604: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.606: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.607: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiorate.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiorate.so: undefined symbol: gst_buffer_add_audio_meta
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.645: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideoscale.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideoscale.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.645: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiofx.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiofx.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.646: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstlame.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstlame.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.648: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstsmpte.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstsmpte.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.648: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstspeex.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstspeex.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.649: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.649: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstx264.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstx264.so: undefined symbol: gst_video_color_primaries_to_iso
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.673: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstgtk.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstgtk.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.674: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.674: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstautodetect.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstautodetect.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.675: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstdecklink.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstdecklink.so: undefined symbol: gst_video_vbi_parser_new
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.676: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstdv.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstdv.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.678: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.679: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.679: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstmultifile.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstmultifile.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.684: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstopengl.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstopengl.so: undefined symbol: gst_video_aggregator_get_type
...
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.795: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstflac.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstflac.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.796: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstmxf.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstmxf.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.797: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideoconvert.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideoconvert.so: undefined symbol: gst_video_transfer_function_is_equivalent
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.798: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstopus.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstopus.so: undefined symbol: gst_type_mark_as_plugin_api
(gst-plugin-scanner:9902): GStreamer-WARNING **: 16:34:21.799: Failed to load plugin '/usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstencoding.so': /usr/local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstencoding.so: undefined symbol: gst_type_mark_as_plugin_api
gst-launch-1.0 version 1.18.5
GStreamer 1.14.5
Unknown package origin
`
**How to solve it?**
Thanks!https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/172tttocea608: Pop-on captions are always late2022-08-30T06:17:21ZMichael Farrelltttocea608: Pop-on captions are always lateIn 608 PopOn captions, one can only send a small amount of data with each frame. Pre-recorded content works within these limits by sending caption data in three stages:
1. **Before** the cue start time, send:
1. `resume caption load...In 608 PopOn captions, one can only send a small amount of data with each frame. Pre-recorded content works within these limits by sending caption data in three stages:
1. **Before** the cue start time, send:
1. `resume caption loading`
2. `erase non-display memory`
3. set text style
4. send text line
5. repeat steps 3 and 4 for each line
2. **At** the cue start time, send: `end of caption`
3. **After** the cue end time:
* if no caption should be displayed, send: `erase display memory`
* if there is another caption in non-display memory that should replace the current caption, send: `end of caption`
At present, using `tttocea608` generate pop-on captions results in cues that are always late. It is only when it gets to the cue time (PTS), that it starts getting data ready:
```
LOG tttocea608/imp.rs:820:<tttocea608-0> Handling Buffer { ptr: 0x7f5008029360, pts: 0:00:57.000000000, dts: 0:00:00.000000000, duration: 0:00:01.000000000, size: 120, offset: 18446744073709551615, offset_end: 18446744073709551615, flags: (empty), metas: [] }
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.000000000 -> 0:00:57.033333333: cc 9420 (1420) '' '' (eia608_control_resume_caption_loading)
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.033333333 -> 0:00:57.066666667: cc 94AE (142E) '' '' (eia608_control_erase_non_displayed_memory)
LOG tttocea608/imp.rs:628:<tttocea608-0> Processing Line { column: None, row: None, chunks: [Chunk { style: Green, underline: false, text: "57: Green!" }], carriage_return: None }
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.066666667 -> 0:00:57.100000000: cc 94C2 (1442) '' '' (preamble: row: 13 col: 0 style: 1 chan: 0 underline: 0)
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.100000000 -> 0:00:57.133333333: cc B537 (3537) '5' '7' (basicna)
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.133333333 -> 0:00:57.166666667: cc BA20 (3A20) ':' ' ' (basicna)
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.166666667 -> 0:00:57.200000000: cc C7F2 (4772) 'G' 'r' (basicna)
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.200000000 -> 0:00:57.233333333: cc E5E5 (6565) 'e' 'e' (basicna)
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.233333333 -> 0:00:57.266666667: cc 6EA1 (6E21) 'n' '!' (basicna)
LOG tttocea608/imp.rs:172:<tttocea608-0> 0:00:57.266666667 -> 0:00:57.300000000: cc 942F (142F) '' '' (eia608_control_end_of_caption)
```
Then `tttocea608` fills remaining caption duration with padding:
```
TRACE tttocea608/imp.rs:181:<tttocea608-0> 0:00:57.300000000 -> 0:00:57.333333333: padding
```
If there is a gap between captions, `tttocea608` doesn't send anything at all, and just sits around waiting.
`tttocea608` in PopOn mode should be smarter about how it places cues, such that it the next cue is loaded into memory **before** the cue's PTS, and only send a `end of caption` **at** the PTS.
It could also leave caption loading to the last possible moment, depending on the amount of `cc_data` bytes required to render a caption.
The current behaviour of `tttocea608` only really works well for roll-up captions (for live content).https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/860compositor: should prefer downstream caps when negotiating2021-11-04T07:24:25ZGuillaume Desmottescompositor: should prefer downstream caps when negotiatingSee how `compositor` sink caps is negotiated to `ABGR64_LE` while downstream is `BGRA`:
```
$ gst-launch-1.0 videotestsrc ! compositor ! video/x-raw,format=BGRA ! fakesink -v
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/Gs...See how `compositor` sink caps is negotiated to `ABGR64_LE` while downstream is `BGRA`:
```
$ gst-launch-1.0 videotestsrc ! compositor ! video/x-raw,format=BGRA ! fakesink -v
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0.GstPad:src: caps = video/x-raw, width=(int)320, height=(int)240, framerate=(fraction)30/1, format=(string)ABGR64_LE, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
/GstPipeline:pipeline0/GstCompositor:compositor0.GstCompositorPad:sink_0: caps = video/x-raw, width=(int)320, height=(int)240, framerate=(fraction)30/1, format=(string)ABGR64_LE, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
/GstPipeline:pipeline0/GstCompositor:compositor0.GstAggregatorPad:src: caps = video/x-raw, format=(string)BGRA, width=(int)320, height=(int)240, framerate=(fraction)30/1, colorimetry=(string)sRGB
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, format=(string)BGRA, width=(int)320, height=(int)240, framerate=(fraction)30/1, colorimetry=(string)sRGB
/GstPipeline:pipeline0/GstFakeSink:fakesink0.GstPad:sink: caps = video/x-raw, format=(string)BGRA, width=(int)320, height=(int)240, framerate=(fraction)30/1, colorimetry=(string)sRGB
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw, format=(string)BGRA, width=(int)320, height=(int)240, framerate=(fraction)30/1, colorimetry=(string)sRGB
Redistribute latency...
/GstPipeline:pipeline0/GstCompositor:compositor0.GstAggregatorPad:src: caps = video/x-raw, format=(string)BGRA, width=(int)320, height=(int)240, framerate=(fraction)30/1, colorimetry=(string)sRGB
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw, format=(string)BGRA, width=(int)320, height=(int)240, framerate=(fraction)30/1, colorimetry=(string)sRGB
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/861rtphdrext: lacking support for multiple extensions sharing the same ID2022-11-10T09:21:09ZCamilo Celis Guzmancamilo@pexip.comrtphdrext: lacking support for multiple extensions sharing the same ID
It is completely allowed to have multiple extensions sharing the same ID as specified by https://datatracker.ietf.org/doc/html/rfc5285#section-4.2
This is already reflected in `gboolean gst_rtp_buffer_get_extension_onebyte_header_from_...
It is completely allowed to have multiple extensions sharing the same ID as specified by https://datatracker.ietf.org/doc/html/rfc5285#section-4.2
This is already reflected in `gboolean gst_rtp_buffer_get_extension_onebyte_header_from_bytes (GBytes * bytes, guint16 bit_pattern, guint8 id, guint nth, gpointer * data, guint * size)` where the "nth" speaks to exactly this. The nth occurrence of an extension with the given ID.
We have a draft for a new extension header dealing with Region Of Interest, where we can have multiple RoIs, all using the same ext-id.
It would be great if the base class for doing header extensions would support this concept, multiple extensions for the same ID.
CC @hgr @tpm @slomo
(From a conversation over in slack)https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/947Video info calculating incorrect size for RGB format2021-11-02T14:03:37Zuser userVideo info calculating incorrect size for RGB formatI am getting an "invalid buffer size" when using appsrc to push RGB buffers (occasionally changing dimensions) to a simple pipeline "appsrc -> videoconvert -> autovideosink".
Looking into it more i found out that the message comes from ...I am getting an "invalid buffer size" when using appsrc to push RGB buffers (occasionally changing dimensions) to a simple pipeline "appsrc -> videoconvert -> autovideosink".
Looking into it more i found out that the message comes from a mismatch between the buffer size and the video info expected size, while transforming in videoconvert. The expected size is calculated as following
```
info->stride[0] = GST_ROUND_UP_4 (width * 2);
info->size = info->stride[0] * height;
```
So for example, for a 350x350 RGB video, the size should be 350x350x3 = **367,500**
However it is expected to be **368200**
This can be reproduced with creating caps = (width 350, height 350, format = RGB) and converting them with `gst_video_info_from_caps`;
I would appreciate any suggestion on how to work around this, and why the rounding is needed. Thank you in advancehttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/862h264parse: inserts extra NALU AUDs2022-11-10T09:21:09ZAndreas Frischh264parse: inserts extra NALU AUDsIn a pipeline demuxing an flv stream into h264 byte-stream, an additional NAL Access unit delimiter 0x0000000109f0 is inserted before the already existing AUD 0x000000010910 for every packet.
Tested with GStreamer 1.18.5 and main (1.19....In a pipeline demuxing an flv stream into h264 byte-stream, an additional NAL Access unit delimiter 0x0000000109f0 is inserted before the already existing AUD 0x000000010910 for every packet.
Tested with GStreamer 1.18.5 and main (1.19.2.1)
`gst-launch-1.0 videotestsrc num-buffers=1 ! x264enc bitrate=1 ! flvmux ! flvdemux ! h264parse ! video/x-h264, stream-format=byte-stream ! fakesink dump=true`
results in:
`00000000 (0x7f2aa015c2d0): 00 00 00 01 09 f0 00 00 00 01 09 10 00 00 00 01 ................`
`gst-launch-1.0 videotestsrc num-buffers=1 ! x264enc bitrate=1 ! flvmux ! flvdemux ! h264parse ! video/x-h264 ! fakesink dump=true`
results in:
`00000000 (0x7f46ac0054e0): 00 00 00 02 09 10 00 00 00 1d 67 f4 00 0d 91 9b ..........g.....`
the problem persists when working with an flv file that was generated by ffmpeg, so i suspect the culprit to be in the flv demuxer, not the muxer.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/863gst-plugin-scanner signal SIGFPE crash2022-11-10T09:21:09ZMelroy van den Berggst-plugin-scanner signal SIGFPE crash### 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://gstre...### 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
No crashes.
#### Observed Behavior
Crash in gst-plugin-scanner:
```
Core was generated by `/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner -l /usr'.
Program terminated with signal SIGFPE, Arithmetic exception.
#0 0x00007f5ae867bd74 in libcamera::ControlInfoMap::validate() () from /lib/x86_64-linux-gnu/libcamera.so.0
```
**See full report:** https://termbin.com/8c15
#### Setup
- **Operating System:** Linux Mint 20.2 (Ubuntu based)
- **Device:** Computer
- **GStreamer Version:** 1.16.2
- **Command line:** bash
### Steps to reproduce the bug
I don't know for sure. Maybe I was busy with my webcam.
### How reproducible is the bug?
I don't know exactly.
### Related non-duplicate issues
### Additional Information
[crash.tar.gz](/uploads/09c4be194bed37148c55f3353b43f8c9/crash.tar.gz)https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1685Video and audio are out of sync when using nvh264dec2022-05-03T16:48:57ZAnton MartynauVideo and audio are out of sync when using nvh264decUbuntu 18.04, GStreamer 1.18.4
I have a problematic source: https://drive.google.com/file/d/1I7G8qHhsedeW9-_hjiqoP4Lh643g_cEP/view
When I work with it I get a lot of warnings:
```
mpegtspacketizer mpegtspacketizer.c:2365:mpegts_packeti...Ubuntu 18.04, GStreamer 1.18.4
I have a problematic source: https://drive.google.com/file/d/1I7G8qHhsedeW9-_hjiqoP4Lh643g_cEP/view
When I work with it I get a lot of warnings:
```
mpegtspacketizer mpegtspacketizer.c:2365:mpegts_packetizer_pts_to_ts: Not enough information to calculate proper timestamp
mpegtspacketizer mpegtspacketizer.c:2363:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
tsdemux tsdemux.c:2295:check_pending_buffers: THIS SHOULD NOT HAPPEN !
basetsmux gstbasetsmux.c:1611:gst_base_ts_mux_clip:<mux:sink_1> ignoring DTS going backward
```
But when I use avdec_h264 with nvh264enc everything is fine:
```
gst-launch-1.0 --gst-debug=3 \
filesrc location="source01.ts" ! queue ! tsdemux name=demux \
demux. ! queue max-size-time=0 ! h264parse ! avdec_h264 ! queue ! videoconvert ! nvh264enc bitrate=4196 ! queue ! h264parse ! queue ! mux. \
demux. ! queue max-size-time=0 ! aacparse ! avdec_aac_latm ! queue ! audioconvert ! faac bitrate=196608 ! queue ! aacparse ! queue ! mux. \
mpegtsmux name=mux ! hlssink playlist-length=10 playlist-location="playlist.m3u8" location="fragment%06d.ts"
```
If I try to use nvh264dec and nvh264enc, then video and audio are out of sync:
```
gst-launch-1.0 --gst-debug=3 \
filesrc location="source01.ts" ! queue ! tsdemux name=demux \
demux. ! queue max-size-time=0 ! h264parse ! nvh264dec ! queue ! videoconvert ! nvh264enc bitrate=4196 ! queue ! h264parse ! queue ! mux. \
demux. ! queue max-size-time=0 ! aacparse ! avdec_aac_latm ! queue ! audioconvert ! faac bitrate=196608 ! queue ! aacparse ! queue ! mux. \
mpegtsmux name=mux ! hlssink playlist-length=10 playlist-location="playlist.m3u8" location="fragment%06d.ts"
```
When I try to play the result with nvh264dec in ffplay, warnings are displayed:
```
DTS 324214713 < 324228227 out of order
```
Is it possible to make nvh264dec to handle the source correctly in the way as avdec_h264 does?https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/864Follow-up from "v4l2codecs: Fix segfaults when VIDIOC_REQBUFS doesn't return ...2023-06-01T16:30:54ZNicolas DufresneFollow-up from "v4l2codecs: Fix segfaults when VIDIOC_REQBUFS doesn't return enough buffers"The following discussion from !1220 should be addressed:
- [ ] @ndufresne started a [discussion](https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1220#note_1113481):
> As you can see, we have 4 arbitrary buffer ...The following discussion from !1220 should be addressed:
- [ ] @ndufresne started a [discussion](https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1220#note_1113481):
> As you can see, we have 4 arbitrary buffer allocated in that case. Perhaps we should check if the number of allocation is no less then the requested number - 4 ?
>
> On stateful decoder, we use a copy threshold for that case. Though it can be problematic when importing DMAbuf and out of a sudden you get a system memory buffer.
>
> If you don't have time, we can turn this thread into an issue, everything I have read here looks correct.https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/948audiomixer producing GST_BUFFER_FLAG_GAP2023-07-27T10:35:19ZMarianna Smidth Buschleaudiomixer producing GST_BUFFER_FLAG_GAPI have this pipeline doing audiomixing which works fine:
```
GST_DEBUG="*:3,GST_TRACER:7" GST_TRACERS="buffer(filter=audioconvert)" gst-launch-1.0 autoaudiosrc is-live=true provide-clock=false ! "audio/x-raw,format=S32LE,layout=interleav...I have this pipeline doing audiomixing which works fine:
```
GST_DEBUG="*:3,GST_TRACER:7" GST_TRACERS="buffer(filter=audioconvert)" gst-launch-1.0 autoaudiosrc is-live=true provide-clock=false ! "audio/x-raw,format=S32LE,layout=interleaved,rate=44100,channels=2,channel-mask=(bitmask)0x3" ! deinterleave name=d d.src_0 ! tee name=ch0_audio d.src_1 ! tee name=ch1_audio interleave name=ilv ! "audio/x-raw,format=S32LE,layout=interleaved,rate=44100,channels=2,channel-mask=(bitmask)0x3" ! queue ! audioconvert ! autoaudiosink audiomixer start-time-selection=zero name=leftamix sink_0::volume=0 sink_1::volume=0 ! "audio/x-raw,channels=1,channel-mask=(bitmask)0x1" ! queue ! ilv.sink_0 audiomixer start-time-selection=zero name=rightamix sink_0::volume=1 sink_1::volume=1 ! "audio/x-raw,channels=1,channel-mask=(bitmask)0x2" ! queue ! ilv.sink_1 ch0_audio. ! queue ! leftamix. ch0_audio. ! queue ! rightamix. ch1_audio. ! queue ! leftamix. ch1_audio. ! queue ! rightamix.
```
However as soon as I add `interpipesink/src` (from RidgeRun, based on `appsrc/sink`) in between it stops working: no sound and all buffers seem to be marked with GST_BUFFER_FLAG_GAP
GST_BUFFER_FLAG_GAP (2048) – the buffer has been created to fill a gap in the stream and contains media neutral data (elements can switch to optimized code path that ignores the buffer content).
So, it seems like the mixer is discarding the frames.
```
GST_DEBUG="*:3,GST_TRACER:7" GST_TRACERS="buffer(filter=audioconvert)" gst-launch-1.0 autoaudiosrc is-live=true provide-clock=false ! "audio/x-raw,format=S32LE,layout=interleaved,rate=44100,channels=2,channel-mask=(bitmask)0x3" ! interpipesink name=audio_src sync=false async=false interpipesrc listen-to=audio_src is-live=true stream-sync=passthrough-ts format=time ! deinterleave name=d d.src_0 ! tee name=ch0_audio d.src_1 ! tee name=ch1_audio interleave name=ilv ! "audio/x-raw,format=S32LE,layout=interleaved,rate=44100,channels=2,channel-mask=(bitmask)0x3" ! queue ! audioconvert ! autoaudiosink audiomixer start-time-selection=zero name=leftamix sink_0::volume=0 sink_1::volume=0 ! "audio/x-raw,channels=1,channel-mask=(bitmask)0x1" ! queue ! ilv.sink_0 audiomixer start-time-selection=zero name=rightamix sink_0::volume=1 sink_1::volume=1 ! "audio/x-raw,channels=1,channel-mask=(bitmask)0x2" ! queue ! ilv.sink_1 ch0_audio. ! queue ! leftamix. ch0_audio. ! queue ! rightamix. ch1_audio. ! queue ! leftamix. ch1_audio. ! queue ! rightamix.
```
Adding more debug *aggregator*:6 gives me this message: 0:00:00.834373796 12456 0x563d8cfec300 DEBUG audioaggregator gstaudioaggregator.c:1755:gst_audio_aggregator_fill_buffer:<rightamix:sink_0> Buffer before segment or current position: 35721 < 35721 which comes from here: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/blob/master/gst-libs/gst/audio/gstaudioaggregator.c#L1934
```
if (pad->priv->position >= pad->priv->size) {
/* Empty buffer, drop */
pad->priv->dropped += pad->priv->size;
pad->priv->position = 0;
pad->priv->size = 0;
GST_DEBUG_OBJECT (pad,
"Buffer before segment or current position: %" G_GUINT64_FORMAT
" < %" G_GINT64_FORMAT, end_output_offset, aagg->priv->offset);
return FALSE;
}
```
First I would say that the debug message doesn't really match what is happening, I would expect it to tell me something about `pad->priv->position >= pad->priv->size`.
Second, what is the problem? And what is causing it?
Also, if I change `interpipesrc` (based on `appsrc`) to `is-live=false` the `GST_BUFFER_FLAG_GAP` disappears, but I still get no sound.
If I also change `interpipesink` to `sync=true` (based on `appsink`) it starts working (I get sound).
What is the difference between live and non-live behavior that causes this?
My end application will use `alsasrc` so I believe I need thing to behave well with live sources...https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/867qmlsink-multisink example FTBFS with Qt 5.9 on Ubuntu 18.04: class QSharedPoi...2022-02-24T10:46:08Zstefan cabarkapaqmlsink-multisink example FTBFS with Qt 5.9 on Ubuntu 18.04: class QSharedPointer<VideoItemPrivate> has no member named ‘get’Hello everyone,
I'm trying to install gst-plugins-good 1.19.2 version on Ubuntu 18.04 OS.
Below is output of command:
```
ubuntu@ip-10-0-93-143:~/gstreamer/gst-plugins-good$ sudo ninja -C build install
ninja: Entering directory `build'
...Hello everyone,
I'm trying to install gst-plugins-good 1.19.2 version on Ubuntu 18.04 OS.
Below is output of command:
```
ubuntu@ip-10-0-93-143:~/gstreamer/gst-plugins-good$ sudo ninja -C build install
ninja: Entering directory `build'
[1/3] Compiling C++ object tests/examples/qt/qmlsink-multisink/qmlsink-multisink.p/videoitem_videoitem.cpp.o
FAILED: tests/examples/qt/qmlsink-multisink/qmlsink-multisink.p/videoitem_videoitem.cpp.o
c++ -Itests/examples/qt/qmlsink-multisink/qmlsink-multisink.p -Itests/examples/qt/qmlsink-multisink -I../tests/examples/qt/qmlsink-multisink -I. -I.. -I/usr/local/include/gstreamer-1.0 -I/usr/include/x86_64-linux-gnu -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/include -I/usr/include/libdrm -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtQml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtQuick -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++11 -O2 -g -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Winit-self -Wmissing-include-dirs -Wno-multichar -Wvla -Wpointer-arith -fPIC -pthread -MD -MQ tests/examples/qt/qmlsink-multisink/qmlsink-multisink.p/videoitem_videoitem.cpp.o -MF tests/examples/qt/qmlsink-multisink/qmlsink-multisink.p/videoitem_videoitem.cpp.o.d -o tests/examples/qt/qmlsink-multisink/qmlsink-multisink.p/videoitem_videoitem.cpp.o -c ../tests/examples/qt/qmlsink-multisink/videoitem/videoitem.cpp
../tests/examples/qt/qmlsink-multisink/videoitem/videoitem.cpp: In constructor ‘VideoItem::VideoItem(QQuickItem*)’:
../tests/examples/qt/qmlsink-multisink/videoitem/videoitem.cpp:154:64: error: ‘class QSharedPointer<VideoItemPrivate>’ has no member named ‘get’
gst_bus_set_sync_handler(_priv->bus, messageHandler, _priv.get(), nullptr);
^~~
ninja: build stopped: subcommand failed.
```
Could you please tell me what is causing the problem?
Thank you in advance!!!
Regards,
Stefanhttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/868No route to host2021-11-04T06:41:16ZYAN vivieNo route to host**When the screen is displayed normally, the webrtc_sendrecv.py program gives a warning.**
`** (python3:13495): WARNING **: 11:29:58.309: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying...**When the screen is displayed normally, the webrtc_sendrecv.py program gives a warning.**
`** (python3:13495): WARNING **: 11:29:58.309: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 5 seconds
** (python3:13495): WARNING **: 11:29:58.310: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 5 seconds
** (python3:13495): WARNING **: 11:30:06.565: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 10 seconds
** (python3:13495): WARNING **: 11:30:06.565: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 10 seconds
** (python3:13495): WARNING **: 11:30:19.557: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 20 seconds
** (python3:13495): WARNING **: 11:30:19.557: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 20 seconds
** (python3:13495): WARNING **: 11:30:42.565: Maximum number of retries failed, not trying again
** (python3:13495): WARNING **: 11:30:42.565: Maximum number of retries failed, not trying again
`
**Then the picture gets stuck.**
what's wrong?
Thanks!https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues/59No route to host2021-11-05T09:39:19ZYAN vivieNo route to host**When the screen is displayed normally, the webrtc_sendrecv.py program gives a warning.**
`** (python3:13495): WARNING **: 11:29:58.309: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying...**When the screen is displayed normally, the webrtc_sendrecv.py program gives a warning.**
`** (python3:13495): WARNING **: 11:29:58.309: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 5 seconds
** (python3:13495): WARNING **: 11:29:58.310: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 5 seconds
** (python3:13495): WARNING **: 11:30:06.565: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 10 seconds
** (python3:13495): WARNING **: 11:30:06.565: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 10 seconds
** (python3:13495): WARNING **: 11:30:19.557: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 20 seconds
** (python3:13495): WARNING **: 11:30:19.557: Failed to GET http://192.168.1.243:80/UPnP/IGD.xml: Could not connect: No route to host, retrying in 20 seconds
** (python3:13495): WARNING **: 11:30:42.565: Maximum number of retries failed, not trying again
** (python3:13495): WARNING **: 11:30:42.565: Maximum number of retries failed, not trying again
`
**Then the picture gets stuck.**
what's wrong?
Thanks!