GStreamer issueshttps://gitlab.freedesktop.org/groups/gstreamer/-/issues2022-04-22T13:46:19Zhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/178Fails to build without Git installed2022-04-22T13:46:19ZJan BeichFails to build without Git installedRegressed by 3cc2b3275671. From [error log](/uploads/0ad71f6099ab93c71e0de5ccd73ab7c5/gstreamer1-plugins-rust-0.8.0.log):
```
$ curl -O https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/archive/0.8.0/gst-plugins-rs-0.8.0.tar.gz
$...Regressed by 3cc2b3275671. From [error log](/uploads/0ad71f6099ab93c71e0de5ccd73ab7c5/gstreamer1-plugins-rust-0.8.0.log):
```
$ curl -O https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/archive/0.8.0/gst-plugins-rs-0.8.0.tar.gz
$ tar xzkf gst-plugins-rs-0.8.0.tar.gz
$ cd gst-plugins-rs-0.8.0
$ meson setup _build
[...]
meson.build:180:0: ERROR: Program or command 'git' not found or not executable
```https://gitlab.freedesktop.org/gstreamer/gst-libav/-/issues/106Not compatible with ffmpeg 5.02022-01-17T23:15:25ZAlexander KanavinNot compatible with ffmpeg 5.0The following happens:
```
| /home/alex/development/poky/build-64-alt/tmp/work/core2-64-poky-linux/gstreamer1.0-libav/1.18.5-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/11.2.0/...The following happens:
```
| /home/alex/development/poky/build-64-alt/tmp/work/core2-64-poky-linux/gstreamer1.0-libav/1.18.5-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/11.2.0/ld: ext/libav/libgstlibav.so.p/gstavaudenc.c.o: in function `gst_ffmpegaudenc_set_format':
| /usr/src/debug/gstreamer1.0-libav/1.18.5-r0/build/../gst-libav-1.18.5/ext/libav/gstavaudenc.c:246: undefined reference to `avcodec_get_context_defaults3'
| /home/alex/development/poky/build-64-alt/tmp/work/core2-64-poky-linux/gstreamer1.0-libav/1.18.5-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/11.2.0/ld: /usr/src/debug/gstreamer1.0-libav/1.18.5-r0/build/../gst-libav-1.18.5/ext/libav/gstavaudenc.c:292: undefined reference to `avcodec_get_context_defaults3'
| /home/alex/development/poky/build-64-alt/tmp/work/core2-64-poky-linux/gstreamer1.0-libav/1.18.5-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/11.2.0/ld: /usr/src/debug/gstreamer1.0-libav/1.18.5-r0/build/../gst-libav-1.18.5/ext/libav/gstavaudenc.c:336: undefined reference to `avcodec_get_context_defaults3'
| /home/alex/development/poky/build-64-alt/tmp/work/core2-64-poky-linux/gstreamer1.0-libav/1.18.5-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/11.2.0/ld: /usr/src/debug/gstreamer1.0-libav/1.18.5-r0/build/../gst-libav-1.18.5/ext/libav/gstavaudenc.c:317: undefined reference to `avcodec_get_context_defaults3'
| /home/alex/development/poky/build-64-alt/tmp/work/core2-64-poky-linux/gstreamer1.0-libav/1.18.5-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/11.2.0/ld: ext/libav/libgstlibav.so.p/gstavaudenc.c.o: in function `gst_ffmpegaudenc_start':
| /usr/src/debug/gstreamer1.0-libav/1.18.5-r0/build/../gst-libav-1.18.5/ext/libav/gstavaudenc.c:197: undefined reference to `avcodec_get_context_defaults3'
| /home/alex/development/poky/build-64-alt/tmp/work/core2-64-poky-linux/gstreamer1.0-libav/1.18.5-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/11.2.0/ld: ext/libav/libgstlibav.so.p/gstavvidenc.c.o:/usr/src/debug/gstreamer1.0-libav/1.18.5-r0/build/../gst-libav-1.18.5/ext/libav/gstavvidenc.c:252: more undefined references to `avcodec_get_context_defaults3' follow
| collect2: error: ld returned 1 exit status
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/961GStreamer/Mopidy suddenly stops every few hours – End of stream on public radio?2022-01-19T06:12:42ZAndré KleinGStreamer/Mopidy suddenly stops every few hours – End of stream on public radio?I’m listening to a public 24/7 radio station via a continuous MP3 stream using Mopidy (which is depending on gstreamer). Mopidy however randomly stops playback every few hours and doesn’t resume, as you can see below. I’d like to underst...I’m listening to a public 24/7 radio station via a continuous MP3 stream using Mopidy (which is depending on gstreamer). Mopidy however randomly stops playback every few hours and doesn’t resume, as you can see below. I’d like to understand what’s going on here. IMO it’s an issue with gstreamer rather than Mopidy. Or is radio station’s server to blame (does it provide a stream with hiccups, which Mopidy/gstreamer just can’t handle?).
If I select the station right after it stops, Mopidy plays again (after the buffer is filled again).
Stream URL is https://dispatcher.rndfnk.com/hr/hr1/live/mp3/high
![image](/uploads/983313fedad4357deefbe060a9bb5ab5/image.png)https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/962sa_family is not in case when using libnice in gstreamer-1.0-android-universa...2022-01-20T09:56:43Zlver hsa_family is not in case when using libnice in gstreamer-1.0-android-universal-1.18.4Hi
I am using gstreamer-1.0-android-universal-1.18.4.tar.xz to develop android p2p program. After my function switch ice data successfully, it got this error message below.
**E/GLib+libnice: file ../agent/address.c: line 206 (nice_addr...Hi
I am using gstreamer-1.0-android-universal-1.18.4.tar.xz to develop android p2p program. After my function switch ice data successfully, it got this error message below.
**E/GLib+libnice: file ../agent/address.c: line 206 (nice_address_set_from_sockaddr): should not be reached
file ../agent/address.c: line 346 (nice_address_is_private): should not be reached**
Accroding to log message, it might be occured between nice_agent_add_stream and nice_agent_attach_recv. I guess it is because compile option or android permission issue but I don't have too many clues to find the solution. Could you help me? Thanks.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/963gst-editing-services does not install ges-image-source.h but references it in...2022-02-24T10:46:07ZDavid Kinggst-editing-services does not install ges-image-source.h but references it in ges.hThe change in commit ba37e0aa2f1de27d3ca6d8038e1ec3e9f6802ece builds fine, but has the result of not installing the `ges-image-source.h` header. However, the main `ges.h` references `ges-image-source.h`, so any project that includes `ges...The change in commit ba37e0aa2f1de27d3ca6d8038e1ec3e9f6802ece builds fine, but has the result of not installing the `ges-image-source.h` header. However, the main `ges.h` references `ges-image-source.h`, so any project that includes `ges.h` will fail to build, which is a regression between 1.9.2 and 1.9.3. This caused https://bugzilla.redhat.com/show_bug.cgi?id=2036385 which affects Rygel (among others) in Fedora. The snippet from the build log is:
```
/usr/include/gstreamer-1.0/ges/ges.h:66:10: fatal error: ges/ges-image-source.h: No such file or directory
66 | #include <ges/ges-image-source.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~
```
I am not sure of the best solution, but possibly some header guards in `ges.h` so that `ges-image-source.h` is only included during the GIR build, and then installing `ges-image-source.h` again, would be appropriate.1.19.90https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/964vaapidecodebin with h264parse element seems to corrupt metadata information2022-01-20T16:22:07ZGuru Govindanvaapidecodebin with h264parse element seems to corrupt metadata informationHi,
I am ingesting an rtsp stream and when using vaapidecodebin or vaapih264decode the generated ts segments seems have corrupted metadata information.
Eg for a pipeline like below
```
gst-launch-1.0 hlssink2 name=ingest1 playlist-length...Hi,
I am ingesting an rtsp stream and when using vaapidecodebin or vaapih264decode the generated ts segments seems have corrupted metadata information.
Eg for a pipeline like below
```
gst-launch-1.0 hlssink2 name=ingest1 playlist-length=5 max-files=0 target-duration=10 send-keyframe-requests=true playlist-location=manifest.m3u8 location=%d.ts rtspsrc location="rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mp4" protocols=4 name=rtspsrc0 rtspsrc0. ! rtph264depay ! tee name=t t.! queue ! ingest1.video t.! queue ! h264parse ! vaapidecodebin ! tee name=one_decode one_decode. ! fakesink async=false rtspsrc0. ! decodebin ! fdkaacenc ! tee name=audio_t audio_t. ! queue ! ingest1.audio
```
results in the resolution not being determined by probe.
```
[mpegts @ 0x5617b6fffb80] start time for stream 0 is not set in estimate_timings_from_pts
[mpegts @ 0x5617b6fffb80] stream 0 : no TS found at start of file, duration not set
[mpegts @ 0x5617b6fffb80] Could not find codec parameters for stream 0 (Video: h264 (HDMV / 0x564D4448), none): unspecified size
```
However when I remove the h264parse element before vaapidecodebin it works fine
```
gst-launch-1.0 hlssink2 name=ingest1 playlist-length=5 max-files=0 target-duration=10 send-keyframe-requests=true playlist-location=manifest.m3u8 location=%d.ts rtspsrc location="rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mp4" protocols=4 name=rtspsrc0 rtspsrc0. ! rtph264depay ! tee name=t t.! queue ! ingest1.video t.! queue ! vaapidecodebin ! tee name=one_decode one_decode. ! fakesink async=false rtspsrc0. ! decodebin ! fdkaacenc ! tee name=audio_t audio_t. ! queue ! ingest1.audio
```
This seems to be inconsistent with nvcodecs or sofware decode.
However my knowledge of working of these plugins is limited. Please let me know if there is a mistake in my pipeline.https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/358Switch wavpack recipe from autotools to cmake2022-01-23T18:48:18ZNirbheek Chauhannirbheek.chauhan@gmail.comSwitch wavpack recipe from autotools to cmakeThis was disabled in https://gitlab.freedesktop.org/gstreamer/cerbero/-/commit/4bebbb908bf1850ce2e162891a833f2603ad0358 to allow windows CI to work correctly (aka not hang during autoreconf) and we were supposed to revisit it, but we nev...This was disabled in https://gitlab.freedesktop.org/gstreamer/cerbero/-/commit/4bebbb908bf1850ce2e162891a833f2603ad0358 to allow windows CI to work correctly (aka not hang during autoreconf) and we were supposed to revisit it, but we never did.
Since then, libdv has been ported to Meson and the plugin is built on Windows again. The dvd plugins are probably not being used at all on Windows, which leaves a52dec and wavpack.
wavpack has cmake build files, so we should see whether we can switch to that instead.
a52dec will need a port to meson, so we need someone to spend a non-trivial amount of time on it. That will have to happen later.
Marking as a blocker for 1.20, but that's just as a reminder for myself. Please feel free to remove it if it actually blocks the release. We can always re-add it later.1.19.90Nirbheek Chauhannirbheek.chauhan@gmail.comNirbheek Chauhannirbheek.chauhan@gmail.comhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/957audiomixer breaks the audio when trying to downmix2022-02-24T10:46:09ZVivia Nikolaidouaudiomixer breaks the audio when trying to downmix`gst-launch-1.0 audiotestsrc ! audio/x-raw,format=F32LE,channels=6 ! audiomixer ! audio/x-raw,channels=2,format=S16LE ! autoaudiosink` produces just noise`gst-launch-1.0 audiotestsrc ! audio/x-raw,format=F32LE,channels=6 ! audiomixer ! audio/x-raw,channels=2,format=S16LE ! autoaudiosink` produces just noiseVivia NikolaidouVivia Nikolaidouhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/950splitmuxsink failed to change state when location is invalid2023-06-01T16:03:38Zshengfazhang@yeah.netsplitmuxsink failed to change state when location is invalidThe following command can't exit normally when the location (/asfdasd/a_%d.mp4 in the example) is invalid. And gstreamer resource can't free properly.
```
gst-launch-1.0 -e v4l2src device=/dev/video0 io-mode=4 ! video/x-raw, format=YUY2...The following command can't exit normally when the location (/asfdasd/a_%d.mp4 in the example) is invalid. And gstreamer resource can't free properly.
```
gst-launch-1.0 -e v4l2src device=/dev/video0 io-mode=4 ! video/x-raw, format=YUY2, width=640,height=480,framerate=30/1 ! videoconvert ! x264enc ! h264parse ! splitmuxsink location=/asfdasd/a_%d.mp4
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Redistribute latency...
ERROR: from element /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstFileSink:sink: Could not open file "/asfdasd/a_0.mp4" for writing.
Additional debug info:
gstfilesink.c(409): gst_file_sink_open_file (): /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstFileSink:sink:
system error: No such file or directory
EOS on shutdown enabled -- waiting for EOS after Error
Waiting for EOS...
ERROR: from element /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstFileSink:sink: GStreamer error: state change failed and some element failed to post a proper error message with the reason for the failure.
Additional debug info:
gstbasesink.c(5367): gst_base_sink_change_state (): /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstFileSink:sink:
Failed to start
ERROR: from element /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstMP4Mux:muxer: Downstream is not seekable - will not be able to create a playable file
Additional debug info:
gstqtmux.c(2975): gst_qt_mux_start_file (): /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstMP4Mux:muxer
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
gstbasesrc.c(3072): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason error (-5)
ERROR: from element /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue0: Internal data stream error.
Additional debug info:
gstqueue.c(988): gst_queue_handle_sink_event (): /GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue0:
streaming stopped, reason error (-5)
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Interrupt while waiting for EOS - stopping pipeline...
Execution ended after 0:00:17.377169740
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
(gst-launch-1.0:2160699): GStreamer-CRITICAL **: 13:31:06.398:
Trying to dispose element capsfilter0, but it is in PLAYING instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.
(gst-launch-1.0:2160699): GStreamer-CRITICAL **: 13:31:06.398:
Trying to dispose element splitmuxsink0, but it is in READY instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.
(gst-launch-1.0:2160699): GStreamer-CRITICAL **: 13:31:06.398:
Trying to dispose element h264parse0, but it is in PLAYING instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.
(gst-launch-1.0:2160699): GStreamer-CRITICAL **: 13:31:06.398:
Trying to dispose element x264enc0, but it is in PLAYING instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.
(gst-launch-1.0:2160699): GStreamer-CRITICAL **: 13:31:06.405:
Trying to dispose element videoconvert0, but it is in PLAYING instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.
(gst-launch-1.0:2160699): GStreamer-CRITICAL **: 13:31:06.405:
Trying to dispose element pipeline0, but it is in PAUSED instead of the NULL state.
You need to explicitly set elements to the NULL state before
dropping the final reference, to allow them to clean up.
This problem may also be caused by a refcounting bug in the
application or some element.
^C
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/965gst-full-elements: cannot get element of videoparsersbad2022-04-19T19:16:02ZAleXoundOSgst-full-elements: cannot get element of videoparsersbad### Describe your issue
I use `-Ddefault_library=static` option with `-Dgst-full-elements=videoparsersbad:h264parse` according to official [List of Elements and Plugins](https://thiblahute.github.io/GStreamer-doc/plugins.html?gi-language...### Describe your issue
I use `-Ddefault_library=static` option with `-Dgst-full-elements=videoparsersbad:h264parse` according to official [List of Elements and Plugins](https://thiblahute.github.io/GStreamer-doc/plugins.html?gi-language=c#list-of-elements-and-plugins) (along with `-Dgst-plugins-bad:videoparsersbad=enabled`, `-Dbad=enabled`). So, I need `h264parse` element from `videoparsersbad` plugin into `libgstreamer-full-1.0.a` library.
#### Expected Behavior
`h264parse` element gets available for application according to meson build options described in README.
#### Observed Behavior
No such element gets compiled and application cannot find the `h264parse` element. As a proof:
```console
$ nm libgstreamer-full-1.0.a | grep h264
U gst_element_register_h264parse
```
If searching among all static libraries produced by the build:
```console
$ find lib -type f -name "*.a" | xargs nm | grep h264
0000000000001f20 T gst_codec_utils_h264_caps_set_level_and_profile
0000000000001a60 T gst_codec_utils_h264_get_level
0000000000001be0 T gst_codec_utils_h264_get_level_idc
0000000000001890 T gst_codec_utils_h264_get_profile
0000000000002150 T gst_codec_utils_h264_get_profile_flags_level
U gst_element_register_h264parse
```
So, we observe an undefined symbol is created which is not resolved anyhow. And no other `h264` related functions present in the build output of gstreamer.
#### Setup
- **Operating System:** [NixOS](https://nixos.org/) 21.11
- **Device:** Computer, x86_64
- **GStreamer Version:** [1.19.3](https://gitlab.freedesktop.org/gstreamer/gstreamer/-/archive/1.19.3/gstreamer-1.19.3.tar.gz)
- **Meson version: 0.59.1** (this being part of the problem eventually)
### Steps to reproduce the bug
1. `$ sh <(curl -L https://nixos.org/nix/install) --daemon` # [install nix](https://nixos.org/download.html)
2. `$ tar xf `[issue965.tar.gz](/uploads/081e912024942daf4b1638a3be352472/issue965.tar.gz) # unpack archive with issue related files describing the build
3. `$ cd issue965`
4. `$ nix-build fail.nix` # build gstreamer (implicitly gets required dependencies)
5. `$ find result/ -type f -name "*.a" | xargs nm -A | grep -E "T .*h264parse"` # check
`nix-build` automatically gets all dependencies (including compiler, libraries, etc) and performs the build. After a successful build a symlink `./result` will be created pointing to the build output directory. You can retrieve a full log of a successful gstreamer build with `nix log result/`. If you want to run commands manually, use `nix-shell` instead of `nix-build`, which will bring you into a _sandbox_ with build dependencies supplied where you can run [`genericBuild`](https://nixos.wiki/wiki/Nixpkgs/Create_and_debug_packages#Using_nix-shell_for_package_development), `meson`, `make` commands.
The last step is a check for expected `gst_element_register_h264parse` symbol presence in any of static libraries produced by the build.
### How reproducible is the bug?
The reproducibility of the bug is _Always_.
### Additional Information
Meson flags:
```
--buildtype=release
--libdir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/lib
--libexecdir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/libexec
--bindir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/bin
--sbindir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/sbin
--includedir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/include
--mandir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/share/man
--infodir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/share/info
--localedir=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3/share/locale
-Dauto_features=disabled
-Dwrap_mode=nodownload
--prefix=/nix/store/xix4vgbkpx3qrqzk78dga16pb19kin0l-gstreamer-1.19.3
-Dbad=enabled
-Dgst-plugins-bad:videoparsersbad=enabled
-Dgst-full-elements=videoparsersbad:h264parse
-Ddefault_library=static
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/966Airborn Kingdom : videoflip0 : invalid video buffer size, code not implemented2022-01-26T13:19:21Ze eAirborn Kingdom : videoflip0 : invalid video buffer size, code not implementedWhen playing Airborn Kingdom via Wine 7.0
the log mentions this block:
```
01e4:err:quartz:DSoundRender_SendSampleData 0
01e0:err:quartz:send_buffer Could not get a delivery buffer (80040211), returning GST_FLOW_FLUSHING
winegstreamer ...When playing Airborn Kingdom via Wine 7.0
the log mentions this block:
```
01e4:err:quartz:DSoundRender_SendSampleData 0
01e0:err:quartz:send_buffer Could not get a delivery buffer (80040211), returning GST_FLOW_FLUSHING
winegstreamer warning: videoflip0: Internal GStreamer error: code not implemented. Please file a bug at https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/new.
winegstreamer warning: videoflip0: ../gst-libs/gst/video/gstvideofilter.c(296): gst_video_filter_transform (): /GstBin:bin0/GstVideoFlip:videoflip0:
invalid video buffer received
01e0:err:quartz:send_buffer Could not get a delivery buffer (80040211), returning GST_FLOW_FLUSHING
winegstreamer warning: videoflip0: Internal GStreamer error: code not implemented. Please file a bug at https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/new.
winegstreamer warning: videoflip0: ../gst-libs/gst/video/gstvideofilter.c(296): gst_video_filter_transform (): /GstBin:bin0/GstVideoFlip:videoflip0:
invalid video buffer received
```
which i hereby do.
GStreamer 1.18.5-1ubuntu1 with plugins base, good and bad,is used on a Kubuntu 21.10 Release.[Macaw-lastPlay.zip](/uploads/d61cca9b48119d7d30c7cb477c963f33/Macaw-lastPlay.zip)
Similiar things show up in Windbound just with videoconvert2 instead of videoflip0https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/179Unable to build under gstreamer mono repo on Windows2023-05-31T13:41:00ZSeungha Yangseungha@centricular.comUnable to build under gstreamer mono repo on Windowsfwiw, `pkg-config.exe` doesn't exist anywhere in `PATH` env
```
ninja -C build
ninja: Entering directory `build'
[0/2] Generating subprojects/gst-plugins-rs/gst-plugins-rs with a custom command (wrapped by meson to set PATH)
Compilin...fwiw, `pkg-config.exe` doesn't exist anywhere in `PATH` env
```
ninja -C build
ninja: Entering directory `build'
[0/2] Generating subprojects/gst-plugins-rs/gst-plugins-rs with a custom command (wrapped by meson to set PATH)
Compiling glib-sys v0.16.0 (https://github.com/gtk-rs/gtk-rs-core#166f0055)
Compiling gobject-sys v0.16.0 (https://github.com/gtk-rs/gtk-rs-core#166f0055)
Compiling gstreamer-sys v0.19.0 (https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#5e2249d3)
Compiling gstreamer-base-sys v0.19.0 (https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#5e2249d3)
Compiling gstreamer-video-sys v0.19.0 (https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#5e2249d3)
Compiling gstreamer-audio-sys v0.19.0 (https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#5e2249d3)
Compiling gio-sys v0.16.0 (https://github.com/gtk-rs/gtk-rs-core#166f0055)
Compiling cairo-sys-rs v0.16.0 (https://github.com/gtk-rs/gtk-rs-core#166f0055)
Compiling pango-sys v0.16.0 (https://github.com/gtk-rs/gtk-rs-core#166f0055)
Compiling pangocairo-sys v0.16.0 (https://github.com/gtk-rs/gtk-rs-core#166f0055)
Compiling gstreamer-rtp-sys v0.19.0 (https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#5e2249d3)
Compiling gstreamer-net-sys v0.19.0 (https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#5e2249d3)
Compiling gst-plugin-rspng v0.9.0 (C:\Work\gstreamer\subprojects\gst-plugins-rs\video\rspng)
Compiling gst-plugin-threadshare v0.9.0 (C:\Work\gstreamer\subprojects\gst-plugins-rs\generic\threadshare)
Compiling gst-plugin-textwrap v0.9.0 (C:\Work\gstreamer\subprojects\gst-plugins-rs\text\wrap)
Compiling gst-plugin-videofx v0.9.0 (C:\Work\gstreamer\subprojects\gst-plugins-rs\video\videofx)
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "glib-2.0" "glib-2.0 >= 2.48"`
error: failed to run custom build command for `glib-sys v0.16.0 (https://github.com/gtk-rs/gtk-rs-core#166f0055)`
Caused by:
process didn't exit successfully: `C:/Work/gstreamer/build/subprojects/gst-plugins-rs\target\debug\build\glib-sys-b1bda61ae7aed416\build-script-build` (exit code: 1)
--- stdout
cargo:rerun-if-env-changed=GLIB_2.0_NO_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
cargo:warning=Could not run `"pkg-config" "--libs" "--cflags" "glib-2.0" "glib-2.0 >= 2.48"`
The pkg-config command could not be found.
Most likely, you need to install a pkg-config package for your OS.
If you've already installed it, ensure the pkg-config command is one of the
directories in the PATH environment variable.
If you did not expect this build to link to a pre-installed system library,
then check documentation of the glib-sys crate for an option to
build the library from source, or disable features or dependencies
that require pkg-config.
warning: build failed, waiting for other jobs to finish...
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gobject-2.0" "gobject-2.0 >= 2.48"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gstreamer-1.0" "gstreamer-1.0 >= 1.18"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gstreamer-base-1.0" "gstreamer-base-1.0 >= 1.18"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gstreamer-video-1.0" "gstreamer-video-1.0 >= 1.18"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gstreamer-audio-1.0" "gstreamer-audio-1.0 >= 1.16"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gio-2.0" "gio-2.0 >= 2.48"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "cairo" "cairo >= 1.14"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "pango" "pango >= 1.38"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "pangocairo" "pangocairo >= 1.38"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gstreamer-rtp-1.0" "gstreamer-rtp-1.0 >= 1.8"`
The following warnings were emitted during compilation:
warning: Could not run `"pkg-config" "--libs" "--cflags" "gstreamer-net-1.0" "gstreamer-net-1.0 >= 1.8"`
Error: CliError { error: Some(build failed), exit_code: 101 }
while executing ['C:\\Program Files\\Python310\\python.exe', 'C:/Work/gstreamer/subprojects/gst-plugins-rs/cargo_wrapper.py', 'build', 'C:/Work/gstreamer/build/subprojects/gst-plugins-rs', 'C:/Work/gstreamer/subprojects/gst-plugins-rs', 'C:/Work/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-fmp4,gst-plugin-gif,gst-plugin-hlssink3,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-spotify,gst-plugin-textahead,gst-plugin-textwrap,gst-plugin-threadshare,gst-plugin-togglerecord,gst-plugin-uriplaylistbin,gst-plugin-videofx,gst-plugin-webp', '', 'c:/', 'lib', 'dll']
FAILED: subprojects/gst-plugins-rs/libgstrsaudiofx.dll subprojects/gst-plugins-rs/libgstcdg.dll subprojects/gst-plugins-rs/libgstclaxon.dll subprojects/gst-plugins-rs/libgstfallbackswitch.dll subprojects/gst-plugins-rs/libgstffv1.dll subprojects/gst-plugins-rs/libgstrsfile.dll subprojects/gst-plugins-rs/libgstrsflv.dll subprojects/gst-plugins-rs/libgstgif.dll subprojects/gst-plugins-rs/libgstlewton.dll subprojects/gst-plugins-rs/libgstrav1e.dll subprojects/gst-plugins-rs/libgstreqwest.dll subprojects/gst-plugins-rs/libgsthlssink3.dll subprojects/gst-plugins-rs/libgstrspng.dll subprojects/gst-plugins-rs/libgstrusoto.dll subprojects/gst-plugins-rs/libgstrstextwrap.dll subprojects/gst-plugins-rs/libgstfmp4.dll subprojects/gst-plugins-rs/libgstthreadshare.dll subprojects/gst-plugins-rs/libgsttogglerecord.dll subprojects/gst-plugins-rs/libgsthsv.dll subprojects/gst-plugins-rs/libgstrsjson.dll subprojects/gst-plugins-rs/libgstrsregex.dll subprojects/gst-plugins-rs/libgstrswebp.dll subprojects/gst-plugins-rs/libgstvideofx.dll subprojects/gst-plugins-rs/libgsturiplaylistbin.dll subprojects/gst-plugins-rs/libgstspotify.dll subprojects/gst-plugins-rs/libgsttextahead.dll subprojects/gst-plugins-rs/libgstrsclosedcaption.dll subprojects/gst-plugins-rs/libgstsodium.dll
"C:\Program Files\Python310\Scripts\meson" "--internal" "exe" "--unpickle" "C:\Work\gstreamer\build\meson-private\meson_exe_python.exe_fb7073d1c047cca6d779c7b772c198f4ae24e03f.dat"
ninja: build stopped: subcommand failed.
```https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/359Unable to run on system with Python 3.102022-01-25T09:40:58ZNikita SemakhinUnable to run on system with Python 3.10Unable to run **cerbero-uninstalled** on latest Arch Linux with python 3.10. Every time it throws error ending with:
```
Traceback (most recent call last):
File "<string>", line 20, in <module>
File "/storage/work/sdk/cerbero/cer...Unable to run **cerbero-uninstalled** on latest Arch Linux with python 3.10. Every time it throws error ending with:
```
Traceback (most recent call last):
File "<string>", line 20, in <module>
File "/storage/work/sdk/cerbero/cerbero/main.py", line 183, in main
Main(sys.argv[1:])
File "/storage/work/sdk/cerbero/cerbero/main.py", line 53, in __init__
self.run_command()
File "/storage/work/sdk/cerbero/cerbero/main.py", line 152, in run_command
res = commands.run(command, self.config, self.args)
File "/storage/work/sdk/cerbero/cerbero/commands/__init__.py", line 78, in run
return _commands[command].run(config, args)
File "/storage/work/sdk/cerbero/cerbero/commands/package.py", line 83, in run
self._build_deps(config, p, args.no_devel, args.offline, args.dry_run, args.jobs)
File "/storage/work/sdk/cerbero/cerbero/commands/package.py", line 129, in _build_deps
build_command.runargs(config, package.recipes_dependencies(has_devel),
File "/storage/work/sdk/cerbero/cerbero/commands/build.py", line 91, in runargs
oven.start_cooking()
File "/storage/work/sdk/cerbero/cerbero/build/oven.py", line 131, in start_cooking
run_until_complete(self._cook_recipes(ordered_recipes))
File "/storage/work/sdk/cerbero/cerbero/utils/__init__.py", line 627, in run_until_complete
result = loop.run_until_complete(tasks)
File "/usr/lib/python3.10/asyncio/base_events.py", line 641, in run_until_complete
return future.result()
File "/storage/work/sdk/cerbero/cerbero/build/oven.py", line 320, in _cook_recipes
default_queue = asyncio.PriorityQueue(loop=loop)
File "/usr/lib/python3.10/asyncio/queues.py", line 33, in __init__
super().__init__(loop=loop)
File "/usr/lib/python3.10/asyncio/mixins.py", line 17, in __init__
raise TypeError(
TypeError: As of 3.10, the *loop* parameter was removed from PriorityQueue() since it is no longer necessary
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/968v4l2codecs: issues after some days of continuous playback2023-10-10T20:09:11ZJakob Loev4l2codecs: issues after some days of continuous playbackHello Devs!
I have been testing sunxi cedrus integration in gstreamer playbin3 in the last weeks and discovered some issues.
All in all pretty brilliant that this finally works! Thank you for working on it.
With some simple code i let t...Hello Devs!
I have been testing sunxi cedrus integration in gstreamer playbin3 in the last weeks and discovered some issues.
All in all pretty brilliant that this finally works! Thank you for working on it.
With some simple code i let the video run in a loop and seek the file to the beginning upon EOS.
This was first tested on Kernel 5.14 and the older gstreamer repos.
@ndufresne was kind enough to offer his help a while ago.
It just took Marek and me a bit long to update all and test again.
Hope someone can help to make this more stable. I am happy to support however I can.
#### Expected Behavior
Video should loop endlessly
#### Observed Behavior
Seeking to the first frame after EOS fails after 1000000 frames i get an error (https://pastebin.com/SxWs7B9v).
I am circumventing this by catching the error message from gstreamer bus and reinit the pipeline.
But i am probably not doing that right - eventually i am running out of cma memory on my hardware or I am getting too many open files (https://pastebin.com/FiK4yGXm).
The system remains stable though and restarting the binary fixes it.
#### Setup
- Linux Yocto Kernel 5.16
- Allwinner A64 with 1366x768 LCD
- mono repo f0e6959bba888bee26b855d78905f58352c8f927
### Steps to reproduce the bug
compile the attached code (https://pastebin.com/e9jx5m69) and have it run on a system with gstreamer
### How reproducible is the bug?
Happens every time the code runs. Also after the same amount of time.https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/360CI: tvOS + bitcode2022-01-25T10:37:50ZGiovanni AmatiCI: tvOS + bitcodeWe are using gitlab to build a tvOS application. The bitcode is enabled and we want to use a particular way to export from the archive. The was is a development method called "Build from bitcode".
Gitlab ended up with this weird error.
...We are using gitlab to build a tvOS application. The bitcode is enabled and we want to use a particular way to export from the archive. The was is a development method called "Build from bitcode".
Gitlab ended up with this weird error.
```
2022-01-25 00:31:07.443 xcodebuild[23003:181396230] -[NSNull path]: unrecognized selector sent to instance 0x7fff806baeb0
** INTERNAL ERROR: Uncaught exception **
Uncaught Exception: -[NSNull path]: unrecognized selector sent to instance 0x7fff806baeb0
Stack:
0 __exceptionPreprocess (in CoreFoundation)
1 objc_exception_throw (in libobjc.A.dylib)
2 -[NSObject(NSObject) __retain_OA] (in CoreFoundation)
3 ___forwarding___ (in CoreFoundation)
4 _CF_forwarding_prep_0 (in CoreFoundation)
5 -[IDEDistributionProcessingPipeline process:] (in IDEFoundation)
6 -[IDEDistributionPackagingStep loadFromExportOptions:error:] (in IDEFoundation)
7 -[IDEDistributionDriver runWithDestinationPath:error:] (in IDEFoundation)
8 -[Xcode3CommandLineBuildTool _distributeArchiveAndExit] (in Xcode3Core)
9 -[Xcode3CommandLineBuildTool run] (in Xcode3Core)
10 main (in xcodebuild)
11 start (in libdyld.dylib)
```
If I try everything locally it works, if I export for apple store or enterprise, and I disable the "compileBitcode" functionalit, everything is fine.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/969Flushing appsink2022-11-10T09:21:10ZDan McFaulFlushing appsinkI'm having trouble with an appsink. I am using mp4mux with appropriate queues for both audio and video and the pipeline works fine when using a filesink. When I start using an appsink, I am able to write to a (remote) file as long as the...I'm having trouble with an appsink. I am using mp4mux with appropriate queues for both audio and video and the pipeline works fine when using a filesink. When I start using an appsink, I am able to write to a (remote) file as long as the output is small and doesn't exceed various timeouts I set. However, the appsink doesn't ever flush until the EOS message is sent. I'm wondering if there is a way to incrementally flush the appsink so my file gets incremental writes. I have tried many variations on queue settings etc, with no luck.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/970GStreamer 1.19.90 (1.20rc1) release tracker2022-11-10T09:21:10ZTim-Philipp Müllertim@centricular.comGStreamer 1.19.90 (1.20rc1) release tracker# Milestone 1.19.90
- [Milestone 1.19.90 Overview](https://gitlab.freedesktop.org/groups/gstreamer/-/milestones/40)
# Todo
- [x] [Merge Requests with `Blocker` label](https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?sc...# Milestone 1.19.90
- [Milestone 1.19.90 Overview](https://gitlab.freedesktop.org/groups/gstreamer/-/milestones/40)
# Todo
- [x] [Merge Requests with `Blocker` label](https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Blocker)
- [x] [Merge Requests with `Regression` label](https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Regression)
- [x] [Merge Requests with `Post release` label](https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Post%20release) (follow through or clear label)
- [x] [Issues with `Blocker` label](https://gitlab.freedesktop.org/groups/gstreamer/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Blocker)
- [x] [Issues with `Regression` label](https://gitlab.freedesktop.org/groups/gstreamer/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Regression)
- [x] [Issues with `Post release` label](https://gitlab.freedesktop.org/groups/gstreamer/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=Post%20release) (follow through or clear label)
- [x] [Merge Requests with `1.19.90` milestone](https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?milestone_title=1.19.90)
- [x] [Issues with `1.19.90` milestone](https://gitlab.freedesktop.org/groups/gstreamer/-/issues?milestone_title=1.19.90)
- [x] [Merge Requests with `1.20.0` milestone](https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?milestone_title=1.20.0)
- [x] [Issues with `1.20.0` milestone](https://gitlab.freedesktop.org/groups/gstreamer/-/issues?milestone_title=1.20.0)
- [x] [Ensure all Merge Requests on the `main` branch have a milestone set or are labelled as `No milestone`](https://gitlab.freedesktop.org/groups/gstreamer/-/merge_requests?scope=all&utf8=%E2%9C%93&state=all&target_branch=main&milestone_title=None¬[label_name][]=No%20milestone) (run script to automatically milestone closed MRs/issues)
# Prep
- [x] www: add skeleton release notes: https://gitlab.freedesktop.org/gstreamer/www/-/merge_requests/45
- [x] ~~update translations (to make sure we don't forget during release)~~
# GStreamer
- [x] MR / commit for release
- [x] tag release
- [x] upload tarballs
- [x] check source tarballs come with GPG signatures (`for i in */*1.19.90.tar.xz; do gpg --armor --detach-sign $i; done`)
- [x] ~~back to dev~~ (nope, main stays frozen until 1.20 release)
# Cerbero
- [x] build 1.19.90 tag - https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/788
- [x] binaries
- [x] Windows x86 MinGW (@nirbheek)
- [x] Windows x86_64 MinGW (@nirbheek)
- [x] Windows x86 MSVC (@nirbheek)
- [x] Windows x86_64 MSVC (@nirbheek)
- [x] Windows UWP release-crt (@nirbheek)
- [x] Windows UWP debug-crt (@nirbheek)
- [x] Android (@thaytan)
- [x] macOS (@ystreet)
- [x] iOS (@ystreet)
- [x] source bundle (@thaytan)
- [x] check for sha265sums for binaries
- [x] check for GPG signatures for binaries
- [x] tag cerbero (@tpm)
- [x] build main branch again: https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/793
- [ ] update download section on website - advertise as 1.20rc1 (maybe)
- [x] announce binaries (twitter, gstreamer-devel)
# Announce
- [x] Mailing lists
- [x] Website: news item: https://gitlab.freedesktop.org/gstreamer/www/-/merge_requests/46
- [x] ~~Website: release notes~~
- [x] Twitter
- [x] ~~Upload tarballs to GNOME FTP~~
- [x] IRC channel topic1.19.90Tim-Philipp Müllertim@centricular.comTim-Philipp Müllertim@centricular.com2022-01-28https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/971kmssink: image scaled wrongly (two plack bars top and bottom of the screen)2022-02-03T14:22:24ZJakob Loekmssink: image scaled wrongly (two plack bars top and bottom of the screen)This is the second issue i have encountered.
#### Expected Behavior
Video (1366x768px) should play fullscreen on 1366x768px LCD
#### Observed Behavior
The video playback is scaled to about 1366x720px. It is not cropped.
Source materia...This is the second issue i have encountered.
#### Expected Behavior
Video (1366x768px) should play fullscreen on 1366x768px LCD
#### Observed Behavior
The video playback is scaled to about 1366x720px. It is not cropped.
Source material is checked to be 1366x768px and plays well with other media players, like mplayer.
#### Setup
Linux Yocto Kernel 5.16
Allwinner A64 with 1366x768 LCD
mono repo f0e6959b
### Steps to reproduce the bug
Play a video on gstreamer (gst-play-1.0 --use-playbin3 --gapless --videosink="kmssink plane-properties=s" /file )
### How reproducible is the bug?
Happens every time the video plays. Also with different videos.
Tested files from ffmpeg x264 high profile and Adobe Media Encoder.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/972Overwrite option for filesink2022-01-25T23:08:25ZNikola Hadžićnikola.hadzic.000@protonmail.comOverwrite option for filesinkI need `filesink` property which controls does the pipeline fail if the file to write to already exists.
Something like `overwrite` property (set to `TRUE` by default) comes to mind first.
Even though judging from the title #955 may loo...I need `filesink` property which controls does the pipeline fail if the file to write to already exists.
Something like `overwrite` property (set to `TRUE` by default) comes to mind first.
Even though judging from the title #955 may look as proposing that, what is actually requested there is mode for overwriting the file from the beginning unchanged (currently only either truncating or appending to the file is supported), not mode in which the pipeline will fail if the file exists. However, commits from the related merge request (!1532) include new `file-mode` property which specifies file opening mode.
When !1532 is finished and merged I will add file opening mode in which opening of the file will fail (and hence also the pipeline) if the file exists.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/973Example showing integration with GTK4 is needed2022-01-31T21:58:04ZNikola Hadžićnikola.hadzic.000@protonmail.comExample showing integration with GTK4 is neededExample is needed showing how to integrate GStreamer with GTK4, as [GTK4 has completely replaced drawing model from GTK3](https://docs.gtk.org/gtk4/migrating-3to4.html#adapt-to-drawing-model-changes), and as [widgets do not have their ow...Example is needed showing how to integrate GStreamer with GTK4, as [GTK4 has completely replaced drawing model from GTK3](https://docs.gtk.org/gtk4/migrating-3to4.html#adapt-to-drawing-model-changes), and as [widgets do not have their own backing surface anymore](https://docs.gtk.org/gtk4/migrating-3to4.html#adapt-to-gdkwindow-api-changes) (and approach using them wouldn't have worked on Wayland anyway), so something similar to [this](https://gstreamer.freedesktop.org/documentation/tutorials/basic/toolkit-integration.html?gi-language=c) will not work anymore.
(You can read more about drawing model of GTK4 [here](https://docs.gtk.org/gtk4/drawing-model.html).)