GStreamer issueshttps://gitlab.freedesktop.org/groups/gstreamer/-/issues2022-03-23T17:30:56Zhttps://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues/57RTSP/H264 cann't work when remote-offerer=TRUE in the webrtc-senrecv.2022-03-23T17:30:56ZAadeITRTSP/H264 cann't work when remote-offerer=TRUE in the webrtc-senrecv.pip1
```c
gst_parse_launch ("webrtcbin bundle-policy=max-bundle name=sendrecv "
STUN_SERVER
"videotestsrc is-live=true pattern=ball ! videoconvert ! queue ! x264enc bitrate=500 speed-preset=veryfast
tune=zerolatency ...pip1
```c
gst_parse_launch ("webrtcbin bundle-policy=max-bundle name=sendrecv "
STUN_SERVER
"videotestsrc is-live=true pattern=ball ! videoconvert ! queue ! x264enc bitrate=500 speed-preset=veryfast
tune=zerolatency ! video/x-h264,profile=baseline ! rtph264pay ! "
"queue ! " RTP_CAPS_H264 "96 ! sendrecv. "
,&error);
```
pip2
```c
gst_parse_launch ("webrtcbin bundle-policy=max-bundle name=sendrecv "
STUN_SERVER
"rtspsrc location=rtsp://admin:passwd@ip latency=0 name=demuxer "
"demuxer. ! parsebin ! rtph264pay ! application/x-rtp,media=video,encoding-name=H264,payload=96 ! sendrecv."
,&error);
```
Hi,everyone
the source is h264/rtsp , webrtc-senrecv to generate the offer can work ,but genertate answer can't work , VP8 is ok
The browser does not output any frames,but data channel can be work .
[run_H264_pipe.log](/uploads/1a00c440a7fc38cbf8601f433261f831/run_H264_pipe.log)
[run_VP8_pipe.log](/uploads/2396ff5c08242f07e19ef5c43b231070/run_VP8_pipe.log)
[meson-log.txt](/uploads/17977c9aa41297623b882990fcf28cb8/meson-log.txt)
please help me,
Thanks for your workhttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1095rfbsrc: capital letters (shift+letter) not working2022-03-23T15:41:20ZMarc Leemanrfbsrc: capital letters (shift+letter) not working
gst-plugins-bad
Version: git (or 1.20.1)
Connecting to a VNC server with rfbsrc does no send over capitals (Shift+X, or CAPS LOCK). I suppose other hotkeys can be affected too.
```
gst-launch-1.0 rfbsrc uri=rfb://:admin@192.168.178.7...
gst-plugins-bad
Version: git (or 1.20.1)
Connecting to a VNC server with rfbsrc does no send over capitals (Shift+X, or CAPS LOCK). I suppose other hotkeys can be affected too.
```
gst-launch-1.0 rfbsrc uri=rfb://:admin@192.168.178.79:5903?shared=1 ! videoconvert ! queue ! xvimagesink
```
Connecting with another client (xtigervnc) works as expected
```
xvncviewer password=/home/marc/vncpassword Shared=1 192.168.178.79::5903
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1087v4l2bufferpool: race condition between pool streamoff and dqbuf2022-03-23T04:42:19ZQi Houv4l2bufferpool: race condition between pool streamoff and dqbufI meet a case that v4l2bufferpool will report "No free buffer found in the pool at index 6" after do seek operation. It causes v4l2 decoder quits. It's necessary to improve the buffer state management.
The flow is like below:
1. pool->...I meet a case that v4l2bufferpool will report "No free buffer found in the pool at index 6" after do seek operation. It causes v4l2 decoder quits. It's necessary to improve the buffer state management.
The flow is like below:
1. pool->buffers[6] sets BUFFER_STATE_QUEUED, but it has not been queued yet which makes pool->buffers[6] still NULL.
2. At this time, do seek. Then pool_streamoff marked pool->buffers[6] as ~BUFFER_STATE_QUEUED. But it won't be released as it's NULL with pull request https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1842
3. After CAPTURE streamoff, pool->buffers[6] has value `pool->buffers[index] = buf;`
4. After CAPTURE streamon, dqbuf will dequeue pool->buffers[6] as it's queued. But buffer state is still ~BUFFER_STATE_QUEUED owing to step-2.
Then below check in gst_v4l2_buffer_pool_dqbuf() causes error and exits. But this is not a real error and shouldn't exit the video playback owing to confused buffer state management.
`
if (!(old_buffer_state & BUFFER_STATE_QUEUED))
goto no_buffer;
`https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/126Selecting an audio stream with select-tracks-for-object signal has no effect2022-03-22T17:08:41ZChris WineSelecting an audio stream with select-tracks-for-object signal has no effectI am using GStreamer 1.18.1 on Windows mingw x64. The issue is that I'm attempting to use the select-tracks-for-object signal on GESTimeline to choose 1 from among 4 mono audio streams in my test file, but no matter which audio stream is...I am using GStreamer 1.18.1 on Windows mingw x64. The issue is that I'm attempting to use the select-tracks-for-object signal on GESTimeline to choose 1 from among 4 mono audio streams in my test file, but no matter which audio stream is chosen at runtime, only the first one is ever included in the output. I've put together some sample code that reproduces the issue. On line 34, changing the target_stream should select between the various audio streams (but doesn't currently). Make sure to set line 122 to the location of the video file.
[main.cpp](/uploads/72eb713ceff855ba87e4b728eaab7514/main.cpp)
[1080i-_4_Ch_1-Dialogue_2-Nat_3-Music_4-Tone_30sec.mxf](/uploads/517e5823bc94c90e7fff7a064fa9cb18/1080i-_4_Ch_1-Dialogue_2-Nat_3-Music_4-Tone_30sec.mxf)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/963qtsink: change widget while playing2022-03-22T16:50:45Zbkarasmqtsink: change widget while playingI have an audio/video player application created based on the playbin3 pipeline. My video sink is a qtsink element which is configured to render incoming video on Qml item (GstGLVideoItem).
Now, I'm trying to move rendering of the vide...I have an audio/video player application created based on the playbin3 pipeline. My video sink is a qtsink element which is configured to render incoming video on Qml item (GstGLVideoItem).
Now, I'm trying to move rendering of the video to a different window by changing parent of the GstGLVideoItem. This works perfectly on macOS and Linux but not on Windows. I've spent some time debugging GstGLVideoItem (qtitem) and qtsink and my understanding is that it doesn't work because on Windows new window is rendered in a different thread. As a result new GL context is being created which is not passed to the qtsink element because that only happens when qtsink changes state from NULL to READY.
I'm a gstreamer/Qt/OpenGl newbie so please assume I haven't tried obvious solutions.https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1711v4l2h264dec0: Too old frames, bug in decoder -- please file a bug2022-03-22T01:25:34ZF. Duncanhv4l2h264dec0: Too old frames, bug in decoder -- please file a bugThis g_warning is triggered by an anomaly (NOT a decoder bug) where the first few video frames are not processed in gstv4l2videodec.c `gst_v4l2_video_dec_loop(GstVideodecoder *decoder)`.
For certain streams, (described below)
the first ...This g_warning is triggered by an anomaly (NOT a decoder bug) where the first few video frames are not processed in gstv4l2videodec.c `gst_v4l2_video_dec_loop(GstVideodecoder *decoder)`.
For certain streams, (described below)
the first frame to get past line 712
```
frame =
gst_video_decoder_get_frame (decoder,
GST_BUFFER_TIMESTAMP (buffer) / GST_SECOND);
```
is the frame with frame->system_frame_number = 4, while frames 0,1,2,3 are waiting, with oldest_frame->system_frame_number = 0.
These only get removed by the garbage collection code when frames 101 - 104 are processed, triggering the warning four times.
I could not diagnose why the these frames dont get through. There is one instance of a return at line 693
if (ret == GST_V4L2_FLOW_RESOLUTION_CHANGE) {
GST_WARNING_OBJECT (decoder, "Received resolution change");
g_atomic_int_set (&self->capture_configuration_change, TRUE);
return;
}
The source is an h264 video stream (Apple Airplay from an iOS client) where the first frame has the structure
0x00 0x00 0x00 0x01 SPS 0x00 0x00 00x00 0x01 PPS 0x00 0x00 00x00 0x01 (h264 video)
and thereafter only 0x00 0x00 0x00 0x01 (h264 video).
Every works fine when an appsrc with no caps set injects this into a video pipeline starting with h264parse. Possibly a few (4) initial video frames are lost, but every then works fine in the pipeline, so no decoder errors.
The cleanup of these first four orphan frames ideally should only generate a GST_DEBUG-2 warning, not the "annoying"
g_warning it now does.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1102Missing element: MPEG-4 AAC decoder2022-03-21T19:07:07ZAli Massah KainiMissing element: MPEG-4 AAC decoderI tried below command but got error.
What's the problem?
`gst-launch-1.0 uridecodebin3 uri=file:///D:/MyWorks/Python/VideoSearchEngine/VideoSet/4.mp4 ! openh264dec ! videoconvert name=mconverter ! video/x-raw, format=BGR, width=480, he...I tried below command but got error.
What's the problem?
`gst-launch-1.0 uridecodebin3 uri=file:///D:/MyWorks/Python/VideoSearchEngine/VideoSet/4.mp4 ! openh264dec ! videoconvert name=mconverter ! video/x-raw, format=BGR, width=480, height=480 ! d3dvideosink name=msink`
output:
```
(gst-launch-1.0:16912): GStreamer-WARNING **: 20:08:48.856: Failed to load plugin 'F:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0\gstassrender.dll': The specified module could not be found.
This usually means Windows was unable to find a DLL dependency of the plugin. Please check that PATH is correct.
You can run 'dumpbin -dependents' (provided by the Visual Studio developer prompt) to list the DLL deps of any DLL.
There are also some third-party GUIs to list and debug DLL dependencies recursively.
(gst-launch-1.0:16912): GStreamer-WARNING **: 20:08:48.916: Failed to load plugin 'F:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0\gstwavpack.dll': The specified module could not be found.
This usually means Windows was unable to find a DLL dependency of the plugin. Please check that PATH is correct.
You can run 'dumpbin -dependents' (provided by the Visual Studio developer prompt) to list the DLL deps of any DLL.
There are also some third-party GUIs to list and debug DLL dependencies recursively.
Use Windows high-resolution clock, precision: 1 ms
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Missing element: MPEG-4 AAC decoder
Got context from element 'nvh264dec0': gst.cuda.context=context, gst.cuda.context=(GstCudaContext)"\(GstCudaContext\)\ cudacontext0", cuda-device-id=(int)0;
Got context from element 'nvh264dec0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplay\)\ gldisplay0";
Redistribute latency...
ERROR: from element /GstPipeline:pipeline0/GstURIDecodeBin3:uridecodebin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0/GstQTDemux:qtdemux0: Internal data stream error.
Additional debug info:
../gst/isomp4/qtdemux.c(6747): gst_qtdemux_loop (): /GstPipeline:pipeline0/GstURIDecodeBin3:uridecodebin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0/GstQTDemux:qtdemux0:
streaming stopped, reason not-linked (-1)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
```https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1100Can't play back WebVTT embedded in WebM/MKV2022-03-21T14:00:04ZBastien NoceraCan't play back WebVTT embedded in WebM/MKVOriginally from: https://gitlab.gnome.org/GNOME/totem/-/issues/511
[webm-vtt-sub-totem-issue-511](/uploads/80c174dc1e4d79be76066f13a5e122fe/webm-vtt-sub-totem-issue-511.webm)
I made the following changes to GStreamer to get past the "u...Originally from: https://gitlab.gnome.org/GNOME/totem/-/issues/511
[webm-vtt-sub-totem-issue-511](/uploads/80c174dc1e4d79be76066f13a5e122fe/webm-vtt-sub-totem-issue-511.webm)
I made the following changes to GStreamer to get past the "unknown decoder" error, but:
```diff
diff --git a/subprojects/gst-plugins-good/gst/matroska/matroska-demux.c b/subprojects/gst-plugins-good/gst/matroska/matroska-demux.c
index 64cc6be60b..9d08fe72fa 100644
--- a/subprojects/gst-plugins-good/gst/matroska/matroska-demux.c
+++ b/subprojects/gst-plugins-good/gst/matroska/matroska-demux.c
@@ -7342,6 +7342,10 @@ gst_matroska_demux_subtitle_caps (GstMatroskaTrackSubtitleContext *
caps = gst_caps_new_empty_simple ("application/x-usf");
context->postprocess_frame = gst_matroska_demux_check_subtitle_buffer;
subtitlecontext->check_markup = FALSE;
+ } else if (!strcmp (codec_id, GST_MATROSKA_CODEC_ID_SUBTITLE_VTT)) {
+ caps = gst_caps_new_empty_simple ("application/x-subtitle-vtt");
+ context->postprocess_frame = gst_matroska_demux_check_subtitle_buffer;
+ subtitlecontext->check_markup = FALSE;
} else if (!strcmp (codec_id, GST_MATROSKA_CODEC_ID_SUBTITLE_VOBSUB)) {
caps = gst_caps_new_empty_simple ("subpicture/x-dvd");
((GstMatroskaTrackContext *) subtitlecontext)->send_dvd_event = TRUE;
diff --git a/subprojects/gst-plugins-good/gst/matroska/matroska-ids.h b/subprojects/gst-plugins-good/gst/matroska/matroska-ids.h
index c4fc73caad..74f2885978 100644
--- a/subprojects/gst-plugins-good/gst/matroska/matroska-ids.h
+++ b/subprojects/gst-plugins-good/gst/matroska/matroska-ids.h
@@ -422,6 +422,7 @@
#define GST_MATROSKA_CODEC_ID_SUBTITLE_SSA "S_TEXT/SSA"
#define GST_MATROSKA_CODEC_ID_SUBTITLE_ASS "S_TEXT/ASS"
#define GST_MATROSKA_CODEC_ID_SUBTITLE_USF "S_TEXT/USF"
+#define GST_MATROSKA_CODEC_ID_SUBTITLE_VTT "D_WEBVTT/SUBTITLES"
#define GST_MATROSKA_CODEC_ID_SUBTITLE_VOBSUB "S_VOBSUB"
#define GST_MATROSKA_CODEC_ID_SUBTITLE_HDMVPGS "S_HDMV/PGS"
#define GST_MATROSKA_CODEC_ID_SUBTITLE_BMP "S_IMAGE/BMP"
```
But subparse still complains that:
```
subparse gstsubparseelement.c:205:gst_sub_parse_data_format_autodetect:^[[00m no subtitle format detected
subparse gstsubparse.c:1459:gst_sub_parse_format_autodetect:<parser>^[[00m error: The input is not a valid/supported subtitle file
```
Because we're missing the re-adding of a header for the purpose of detection, like was done in the qtdemux:
https://gitlab.freedesktop.org/hadess/gstreamer/blob/main/subprojects/gst-plugins-good/gst/isomp4/qtdemux.c#L15148-L15151
No idea how to do that with the Matroska demuxer...https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/189threadshare: udpsrc missing timeout option2022-03-21T08:07:42ZDan Sirbuthreadshare: udpsrc missing timeout optionudpsrc has a timeout optional param that ys-udpsrc is missing.udpsrc has a timeout optional param that ys-udpsrc is missing.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1098gst-build: wayland include files for gst-plugins-bad not found when they are ...2022-03-20T22:29:05ZF. Duncanhgst-build: wayland include files for gst-plugins-bad not found when they are in /usr/include/waylandOpenSUSE 15.3 puts wayland include files in /usr/include/wayland as opposed to/usr/include.
A build of gst-plugins-bad (for nvdec) then fails for 1.16.3
Is there any option to tell meson or ninja about an extra -I include dir?
The si...OpenSUSE 15.3 puts wayland include files in /usr/include/wayland as opposed to/usr/include.
A build of gst-plugins-bad (for nvdec) then fails for 1.16.3
Is there any option to tell meson or ninja about an extra -I include dir?
The simple workaround for users with this issue is to copy all the wayland\*.h files from their location (here /usr/include/wayland/) to gst-plugins-bad/gst-libs/gst/wayland/ , but ideally this should have been "automatic", or fixable with a meson or ninja "include" option I could not find.
It seems an attempt to fix this was made in the past, but it's not working.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1076https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1099Some usm files do not play - Scaleform Video2022-03-20T04:19:11ZorbeaSome usm files do not play - Scaleform Video### Describe your issue
When trying to play some `.usm` (Scaleform Video) files with gst-play they will fail.
These videos are from the game Xuan Yuan Sword VII from GOG (https://www.gog.com/en/game/xuanyuan_sword_vii) and not being ab...### Describe your issue
When trying to play some `.usm` (Scaleform Video) files with gst-play they will fail.
These videos are from the game Xuan Yuan Sword VII from GOG (https://www.gog.com/en/game/xuanyuan_sword_vii) and not being able to play the videos causes the game to crash after a early cutscene when playing it with wine.
Most of the `.asm` files do work, but a few do not.
`file(1)` reports all of the files as `Scaleform Video`.
`gst-typefind` reports the following for most of the videos where only a few don't work.
```
video/mpeg, systemstream=(boolean)false, mpegversion=(int)1, parsed=(boolean)false
```
And this for a few videos which all do not work.
```
FAILED: Could not determine type of stream.
```
#### Expected Behavior
The videos should play.
#### Observed Behavior
When `gst-typefind` reports the video information correctly, but fails to play:
```
Now playing Xuan-Yuan Sword VII/SWD7_GOG/Content/CriFile/MV_mq1902_Afterword_World_01_25D.usm
Redistribute latency...
Redistribute latency...
Redistribute latency...
Redistribute latency...
ERROR No valid frames decoded before end of stream for file://Xuan-Yuan%20Sword%20VII/SWD7_GOG/Content/CriFile/MV_mq1902_Afterword_World_01_25D.usm
ERROR debug information: ../gst-plugins-base-1.20.1/gst-libs/gst/video/gstvideodecoder.c(1416): gst_video_decoder_sink_event_default (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/avdec_mpeg2video:avdec_mpeg2video0:
no valid frames found
Reached end of play list.
```
And when it can't report the type of stream:
```
Now playing Xuan-Yuan Sword VII/SWD7_GOG/Content/CriFile/GameHelp_M_12.usm
ERROR Could not determine type of stream. for file://Xuan-Yuan%20Sword%20VII/SWD7_GOG/Content/CriFile/GameHelp_M_12.usm
ERROR debug information: ../gstreamer-1.20.1/plugins/elements/gsttypefindelement.c(1179): gst_type_find_element_loop (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind
Reached end of play list.
```
#### Setup
- **Operating System:** Gentoo
- **Device:** Computer
- **GStreamer Version:** 1.20.1
### Steps to reproduce the bug
Example files:
[MV_mq0303_GodBook_JiP_02_25D.usm](/uploads/4b9c5cbbfe92f306f8a23b9a74d5d0f4/MV_mq0303_GodBook_JiP_02_25D.usm)
[GameHelp_M_12.usm](/uploads/4091c381d1a0e4246f351555573ca202/GameHelp_M_12.usm)
For comparison this video works:
[GameHelp_M_01.usm](/uploads/d83e55445ce3117beb40e6fd31971d5d/GameHelp_M_01.usm)
<!-- please fill in exact steps which reproduce the bug on your system, for example: -->
1. open terminal
2. type `gst-play-1.0 foo.usm`
### How reproducible is the bug?
Alwayshttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1090av1parser: Might not invoke section 7.21. Reference frame loading process2022-03-19T13:47:19ZNicolas Dufresneav1parser: Might not invoke section 7.21. Reference frame loading processOur parser does section 7.21, but invokes it unconditionally. This section is the reverse of 7.20 and should happen only if a show_existing_frame is a keyframe. This is part of the higher level process **7.4. Decode frame wrapup process*...Our parser does section 7.21, but invokes it unconditionally. This section is the reverse of 7.20 and should happen only if a show_existing_frame is a keyframe. This is part of the higher level process **7.4. Decode frame wrapup process**.
Attaching a stream the stream that cause issues and triggers this case. It was found the the AV1 test vector currently in fluster is largely insufficient to validate the state management. This test was picked from Google tast-test.
[48_delayed_20201006.ivf](/uploads/3fc2080c7ccd116da191d5b9ef8e3942/48_delayed_20201006.ivf)
cc @He_Junyan @vjaquez @dwlsalmeidahttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1096av1decoder: new_picture and start_picture are redundant2022-03-18T12:42:22ZNicolas Dufresneav1decoder: new_picture and start_picture are redundantIn our AV1 decoder base class, I notice that new_picture() and new_sequence() are called in pair, resulting in a redundant set of virtual function. I wonder if new_picture() wasn't meant to be called similarly to vp9 new_sequence(), when...In our AV1 decoder base class, I notice that new_picture() and new_sequence() are called in pair, resulting in a redundant set of virtual function. I wonder if new_picture() wasn't meant to be called similarly to vp9 new_sequence(), when a parameter that would require renegotiation is needed and no compatible sequence header was seen ?
cc @He_Junyan @seungha.yang @dwlsalmeidahttps://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/888aggregator: does not forward navigation events2022-03-18T06:59:25ZFrederic Turmelaggregator: does not forward navigation eventsThis was found running this pipeline using the wpesrc plugins. (Master)
Navigation events are forwarded without the glvideomixer with this pipeline:
gst-launch-1.0 -v wpesrc location="https://gstreamer.freedesktop.org" ! queue ! glimage...This was found running this pipeline using the wpesrc plugins. (Master)
Navigation events are forwarded without the glvideomixer with this pipeline:
gst-launch-1.0 -v wpesrc location="https://gstreamer.freedesktop.org" ! queue ! glimagesink"
When including glvideomixer the navigation events are not forwarded
Example: gst-launch-1.0 glvideomixer name=m sink_0::zorder=1 ! glimagesink sync=false async=false wpesrc location="http://www.google.com" draw-background=1 ! video/x-raw\(memory:GLMemory\),height=720,width=1280 ! m.sink_0https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1097good: jackaudiosrc can not receive multi channel2022-03-17T23:30:34ZDennis Scheibagood: jackaudiosrc can not receive multi channelI am using gstreamer in an alpine docker container and I need to map a 16ch input from jack to 8 x stereo udp streams.
Because of realtime schedeuling issues in the container I needed to replace jack with pipewire but this should work tr...I am using gstreamer in an alpine docker container and I need to map a 16ch input from jack to 8 x stereo udp streams.
Because of realtime schedeuling issues in the container I needed to replace jack with pipewire but this should work transparent and because of the synth software SuperCollider I am bound to using Jack.
According to the [pipewire documentation](https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Migrate-JACK#jack_lsp) the equivalent of `jack_lsp` is
```shell
~ # pw-link -iol
SuperCollider:out_1
|-> gst-launch-1.0:in_jackaudiosrc0_1
SuperCollider:out_2
|-> gst-launch-1.0:in_jackaudiosrc0_2
SuperCollider:out_3
SuperCollider:out_4
SuperCollider:out_5
SuperCollider:out_6
SuperCollider:out_7
SuperCollider:out_8
SuperCollider:out_9
SuperCollider:out_10
SuperCollider:out_11
SuperCollider:out_12
SuperCollider:out_13
SuperCollider:out_14
SuperCollider:out_15
SuperCollider:out_16
SuperCollider:in_1
SuperCollider:in_2
gst-launch-1.0:in_jackaudiosrc0_1
|<- SuperCollider:out_1
gst-launch-1.0:in_jackaudiosrc0_2
|<- SuperCollider:out_2
```
SuperCollider creates 16 output channels on the jack device.
You can also see that I already connected a stereo pair succesfully via
```shell
gst-launch-1.0 jackaudiosrc port-pattern="SuperCollider" ! queue ! audioconvert ! audioresample ! opusenc ! rtpopuspay ! queue max-size-bytes=0 max-size-buffers=0 ! udpsink host=127.0.0.1 port=5002
```
The question is now how I can access the other 14 channels - I tried
```shell
~ # gst-launch-1.0 --version
gst-launch-1.0 version 1.18.5
GStreamer 1.18.5
https://alpinelinux.org
~ # gst-launch-1.0 jackaudiosrc connect=0 ! audioconvert ! "audio/x-raw,channels=2" ! wavenc ! filesink location=foo.wav
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSrcClock
Redistribute latency...
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:04.409656367
Setting pipeline to NULL ...
Freeing pipeline ...
~ # ffprobe foo.wav
ffprobe version 4.4.1 Copyright (c) 2007-2021 the FFmpeg developers
built with gcc 10.3.1 (Alpine 10.3.1_git20211027) 20211027
[wav @ 0x7f245d686640] Estimating duration from bitrate, this may be inaccurate
Input #0, wav, from 'foo.wav':
Duration: 00:00:04.57, bitrate: 3072 kb/s
Stream #0:0: Audio: pcm_f32le ([3][0][0][0] / 0x0003), 48000 Hz, 2 channels, flt, 3072 kb/s
~ # gst-launch-1.0 jackaudiosrc connect=0 ! audioconvert ! "audio/x-raw,channels=4" ! wavenc ! filesink location=foo.wav
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
ERROR: from element /GstPipeline:pipeline0/GstJackAudioSrc:jackaudiosrc0: Internal data stream error.
New clock: GstAudioSrcClock
Additional debug info:
../libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstJackAudioSrc:jackaudiosrc0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.000476941
Setting pipeline to NULL ...
Freeing pipeline ...
```
so this naive approach did not work.
The [documentation](https://gstreamer.freedesktop.org/documentation/jack/jackaudiosrc.html?gi-language=c#jackaudiosrc-page) says that
> It will create **N** Jack ports named in name_num where name is the element name and num is starting from 1. Each port corresponds to a gstreamer channel.
but how to specify this channel number is omitted.
Also the documentation https://gstreamer.freedesktop.org/documentation/jack/jackaudiosrc.html?gi-language=c#jackaudiosrc:port-names states that you can specify an argument `port-names` but this is missing in my version (was introduced in 1.20? - https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/4a5197dc27a3300111df5ee44a613a58ccdabd47) and I tried the whole day to compile gstreamer but it somehow always failed and each try takes more than half an hour. If there is a way to obtain a static binary I would love to try it out as it sounds promising.
I am sorry if this is malformed or is not the proper place to ask such questions.https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/485qmlglsink: synchronization issue2022-03-17T09:24:13ZBugzilla Migration Userqmlglsink: synchronization issue## Submitted by jimmy
**[Link to original bug (#796640)](https://bugzilla.gnome.org/show_bug.cgi?id=796640)**
## Description
If you want the fix please tell me how I might contribute, I would be happy to push a branch with the fix. ...## Submitted by jimmy
**[Link to original bug (#796640)](https://bugzilla.gnome.org/show_bug.cgi?id=796640)**
## Description
If you want the fix please tell me how I might contribute, I would be happy to push a branch with the fix.
//jimmy
Version: 1.14.1https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/962gst-plugins-good (v4l2) request for backports from master to future 1.20.22022-03-16T20:12:32ZF. Duncanhgst-plugins-good (v4l2) request for backports from master to future 1.20.2Needed for Raspbery Pi GPU video decoding:
@ndufresne
If not already planned please add these to future 1.20.2
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/d394b8b4bdc229ab3a47dd6b666157b57b3eb8a3
https://gitlab.free...Needed for Raspbery Pi GPU video decoding:
@ndufresne
If not already planned please add these to future 1.20.2
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/d394b8b4bdc229ab3a47dd6b666157b57b3eb8a3
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/e2b2ff26c99723cbbe7129412cc707d0de6d78dd
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/fe56af607b7e8ceb265f30b1806833048fbbce98
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/24eb35f113404f8f5bd8f2a69bb14058441cb656
(Tested on RPi (manjaro) to work as patches to 1.20.0, and apply to 1.20.1)
If possible, also silence the (annoying) warning at line 727 of v4l2/gstv4l2videodec.c
(it seems that this can be triggered by latency in the stream).
v4l2h264dec plugin is broken without these patches.
```
if (frame) {
GstVideoCodecFrame *oldest_frame;
gboolean warned = FALSE; <----------------- set to TRUE in 1.20.2?
/* Garbage collect old frames in case of codec bugs */
while ((oldest_frame = gst_video_decoder_get_oldest_frame (decoder)) &&
check_system_frame_number_too_old (frame->system_frame_number,
oldest_frame->system_frame_number)) {
gst_video_decoder_drop_frame (decoder, oldest_frame);
oldest_frame = NULL;
if (!warned) {
g_warning ("%s: Too old frames, bug in decoder -- please file a bug", <------the warning
GST_ELEMENT_NAME (decoder));
warned = TRUE;
}
}
```https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/370macos: document or provide a way to uninstall the package2022-03-16T14:03:37ZStéphane Cerveauscerveau@igalia.commacos: document or provide a way to uninstall the packageWith 1.20.1, there is no option to remove the GStreamer package after installing it.
I found this documentation but its not up to date:
https://codeanticode.wordpress.com/2009/04/03/gstreamer-installer-for-macosx/#:~:text=To%20uninstal...With 1.20.1, there is no option to remove the GStreamer package after installing it.
I found this documentation but its not up to date:
https://codeanticode.wordpress.com/2009/04/03/gstreamer-installer-for-macosx/#:~:text=To%20uninstall%2C%20just%20delete%20the,to%20remove%20the%20setenv%20lines.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1093macos: document or provide a way to uninstall the package2022-03-16T14:03:24ZStéphane Cerveauscerveau@igalia.commacos: document or provide a way to uninstall the packageWith 1.20.1, there is no option to remove the GStreamer package after installing it.
I found this documentation but its not up to date:
https://codeanticode.wordpress.com/2009/04/03/gstreamer-installer-for-macosx/#:~:text=To%20uninstal...With 1.20.1, there is no option to remove the GStreamer package after installing it.
I found this documentation but its not up to date:
https://codeanticode.wordpress.com/2009/04/03/gstreamer-installer-for-macosx/#:~:text=To%20uninstall%2C%20just%20delete%20the,to%20remove%20the%20setenv%20lines.https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1092macos: package installer layout is incorrect2022-03-16T14:02:29ZStéphane Cerveauscerveau@igalia.commacos: package installer layout is incorrect### Describe your issue
During the macos installation, I noticed that the installer layout is incorrect and the logo is hiding the installer summary
#### Expected Behavior
a better look for the installer
#### Observed Behavior
the l...### Describe your issue
During the macos installation, I noticed that the installer layout is incorrect and the logo is hiding the installer summary
#### Expected Behavior
a better look for the installer
#### Observed Behavior
the logo is over the sumaary
#### Setup
- **Operating System:** MacOs Monterey
- **Device:** Computer
- **GStreamer Version:** 1.20.1
- **Command line:**
### Steps to reproduce the bug
<!-- please fill in exact steps which reproduce the bug on your system, for example: -->
1. Download the 1.20.1 installer and run it
### How reproducible is the bug?
Always
### Screenshots if relevant
![Screenshot_2022-03-16_at_10.27.24](/uploads/3f0373a852fab70e95b9255c11cde1eb/Screenshot_2022-03-16_at_10.27.24.png)
### Solutions you have tried
### Related non-duplicate issues
### Additional Information
<!-- Any other information such as logs. Make use of <details> for long output -->