gst-plugins-good issueshttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues2021-09-24T13:30:47Zhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/133souphttpsrc: add 'pause-mode' property2021-09-24T13:30:47ZBugzilla Migration Usersouphttpsrc: add 'pause-mode' property## Submitted by Guillaume Desmottes `@gdesmott`
**[Link to original bug (#738298)](https://bugzilla.gnome.org/show_bug.cgi?id=738298)**
## Description
The DLNA CVP-2 spec defines different 'pause' modes regarding the way client shou...## Submitted by Guillaume Desmottes `@gdesmott`
**[Link to original bug (#738298)](https://bugzilla.gnome.org/show_bug.cgi?id=738298)**
## Description
The DLNA CVP-2 spec defines different 'pause' modes regarding the way client should handle the HTTP connection when being paused:
- stalling pause: keep the connection open and just stop reading from it. When resuming just resume reading from the connection. This is the current behavior in souphttpsrc.
- time/range pause: close the HTTP connection when pausing. When resuming re-establish a new HTTP connection and perform a time or range seek request to the server.
In order to support this new mode, we need some API controlling the behaviour of souphttpsrc when pausing.https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/132wavparse should read the Broadcast Wave Format (BWF)2021-09-24T13:30:46ZBugzilla Migration Userwavparse should read the Broadcast Wave Format (BWF)## Submitted by Peter G. Baum
**[Link to original bug (#738248)](https://bugzilla.gnome.org/show_bug.cgi?id=738248)**
## Description
Created attachment 288150
Patch to read the meta data in bext and convert it to tags
That me...## Submitted by Peter G. Baum
**[Link to original bug (#738248)](https://bugzilla.gnome.org/show_bug.cgi?id=738248)**
## Description
Created attachment 288150
Patch to read the meta data in bext and convert it to tags
That means in should not skip, but read the bext chunk.
This is necessary to use gstreamer in professional environments, where the data in the bext chunk is used.
~~**Patch 288150**~~, "Patch to read the meta data in bext and convert it to tags":
[0001-gstwavparse-read-broadcast-wave-bext-chunk.patch](/uploads/f038ee872b42453835afc5046d497609/0001-gstwavparse-read-broadcast-wave-bext-chunk.patch)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/129videobox: Use videoconvert APIs for format conversions2021-09-24T13:30:45ZBugzilla Migration Uservideobox: Use videoconvert APIs for format conversions## Submitted by RaviKiran
**[Link to original bug (#737401)](https://bugzilla.gnome.org/show_bug.cgi?id=737401)**
## Description
(Following conversation in bug https://bugzilla.gnome.org/show_bug.cgi?id=733588)
Instead of converti...## Submitted by RaviKiran
**[Link to original bug (#737401)](https://bugzilla.gnome.org/show_bug.cgi?id=737401)**
## Description
(Following conversation in bug https://bugzilla.gnome.org/show_bug.cgi?id=733588)
Instead of converting image formats in videobox, use APIs provided by the videoconvert.
### Depends on
* [Bug 745207](https://bugzilla.gnome.org/show_bug.cgi?id=745207)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/125mp4mux: interleave audio and video in fragments, and reduce interleave2021-09-24T13:30:44ZBugzilla Migration Usermp4mux: interleave audio and video in fragments, and reduce interleave## Submitted by Richard Mitic
**[Link to original bug (#734413)](https://bugzilla.gnome.org/show_bug.cgi?id=734413)**
## Description
The following pipeline will produce a multiplexed video/audio mp4 file with 1-second fragments.
...## Submitted by Richard Mitic
**[Link to original bug (#734413)](https://bugzilla.gnome.org/show_bug.cgi?id=734413)**
## Description
The following pipeline will produce a multiplexed video/audio mp4 file with 1-second fragments.
gst-launch-1.0 mp4mux name=mux fragment-duration=1000 ! filesink location=out.mp4 videotestsrc num-buffers=1500 ! "video/x-raw,framerate=25/1" ! x264enc tune=zerolatency ! mux. audiotestsrc num-buffers=2812 ! "audio/x-raw,rate=48000" ! voaacenc ! mux.
Currently, each media stream is muxed as a separate movie fragment, i.e. for two stream A and V, mp4mux produces A1 V1 A2 V2 A3 V3 etc. However, there is a discrepancy in the length of each associated audio and video fragment, due to the fact that only an integer number of audio or video frames can be packed into a fragment.
In this example, the video fragments contain 25 frames equaling exactly 1 second, but the audio fragments contain 46 frames, equaling 0.9813333 seconds. This error is corrected for by adding two audio fragments in a row when there is enough data buffered. The result is that AN and VN will not necessarily contain media that starts at the same time, with the maximum error being the length of a fragment.
To fix this, the muxer could vary the number of audio frames in each fragment so that the fragment boundary is as close as possible in time to the video fragment boundary. Ideally, the audio and video media data would also be placed in the same ‘mdat’ box, with the associated 'moof' box containing one track fragment for each stream. Just aligning the movie fragment boundaries at the frame level is acceptable though.https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/124videomedian: add "iteration" property for higher resolution video where exist...2021-09-24T13:30:44ZBugzilla Migration Uservideomedian: add "iteration" property for higher resolution video where existing filter sizes are not enough## Submitted by hub..@..il.com
**[Link to original bug (#733808)](https://bugzilla.gnome.org/show_bug.cgi?id=733808)**
## Description
Created attachment 281802
add an iteration property to the videomedian element
The videomed...## Submitted by hub..@..il.com
**[Link to original bug (#733808)](https://bugzilla.gnome.org/show_bug.cgi?id=733808)**
## Description
Created attachment 281802
add an iteration property to the videomedian element
The videomedian element just supports two filter sizes: 5 and 9, but it is not enough for high-resolution videos. Therefore, I added an iteration property to the videomedian element for handling high-resolution videos.
**Patch 281802**, "add an iteration property to the videomedian element":
[iter.diff](/uploads/d097c02e1960a012eb03d85978036123/iter.diff)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/119matroskamux: add support for writing CRC32 checksums2021-09-24T13:30:42ZBugzilla Migration Usermatroskamux: add support for writing CRC32 checksums## Submitted by surendra
**[Link to original bug (#731821)](https://bugzilla.gnome.org/show_bug.cgi?id=731821)**
## Description
I am able to record the IP camera H264 stream in to MKV file by using the below
pipe line.
gst-la...## Submitted by surendra
**[Link to original bug (#731821)](https://bugzilla.gnome.org/show_bug.cgi?id=731821)**
## Description
I am able to record the IP camera H264 stream in to MKV file by using the below
pipe line.
gst-launch-1.0 -e rtspsrc
location="rtsp://10.33.15.1:554/udpstream_ch1_stream1" ! rtph264depay !
h264parse ! matroskamux ! filesink location=test1.mkv
I am able to play the recorded file with any MKV (h264)compatible player.
I am checking the recorded MKV file EBML tree using AVI MUX GUI
application(Picture attached).
recorded.png
As per the specification of EMBL MKV file also should contain the CRC32 for the
parent filed(see the spec piture attached).
Recorded MKV file is missing CRC32 elements.
Reference discussion :
http://gstreamer-devel.966125.n4.nabble.com/MKV-file-in-EMBL-Tree-View-CRC32-is-missing-td4667472.htmlhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/113matroskademux: add support for reverse playback in files without index2021-09-24T13:30:40ZBugzilla Migration Usermatroskademux: add support for reverse playback in files without index## Submitted by Farkas Levente `@lfarkas`
**[Link to original bug (#727966)](https://bugzilla.gnome.org/show_bug.cgi?id=727966)**
## Description
Created attachment 273989
proposed patch
here is our proposed patch to matroska...## Submitted by Farkas Levente `@lfarkas`
**[Link to original bug (#727966)](https://bugzilla.gnome.org/show_bug.cgi?id=727966)**
## Description
Created attachment 273989
proposed patch
here is our proposed patch to matroska-demux.c to be able to play backwards in a not indexed (not closed) file.
this is for 0.10.36 but probably the same patch can be applied to the trunk too.
any comments are welcome.
**Patch 273989**, "proposed patch ":
[matroska-demux-seek_backwards.patch](/uploads/0dc035431bfd5d3433c55511dbc9c509/matroska-demux-seek_backwards.patch)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/112v4l2sink: Keep aspect ratio when device scale2021-09-24T13:30:39ZBugzilla Migration Userv4l2sink: Keep aspect ratio when device scale## Submitted by Aurélien Zanelli
**[Link to original bug (#727483)](https://bugzilla.gnome.org/show_bug.cgi?id=727483)**
## Description
Created attachment 273456
v4l2sink: Keep aspect ratio when device scale
It seems to be th...## Submitted by Aurélien Zanelli
**[Link to original bug (#727483)](https://bugzilla.gnome.org/show_bug.cgi?id=727483)**
## Description
Created attachment 273456
v4l2sink: Keep aspect ratio when device scale
It seems to be the responsibility of the application to ensure that aspect ratio is preserved. The device aspect ratio is constant within a standard. I attached a preliminary work which preserve display aspect ratio of the video. It has been written on 1.2 branch but it should apply on master with a little conflict in v4l2_calls.c
Here is the main idea of the solution:
First we determine if device can scale using VIDIOC_CROPCAP ioctl by checking if cropcap.bounds and cropcaps.defrect differs. If so we doesn't want to force PAR in caps.
Then, when we know video information and if scaling is supported, we determine the target rectangle and we set it with CROP ioctl.
This work is not complete since is conflicting with cropping property (crop_*) of v4l2sink element and it scale into output device bounds instead of user-defined display windows.
However before working further on this topic, I think it's better to have comments and remarks.
Regards
~~**Patch 273456**~~, "v4l2sink: Keep aspect ratio when device scale":
[0001-v4l2sink-Keep-aspect-ratio-when-device-scale.patch](/uploads/a614517dc6984ceacdbffbd7fef48dd9/0001-v4l2sink-Keep-aspect-ratio-when-device-scale.patch)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/111vp8enc: generating streamheader is now obsolete2021-09-24T13:30:39ZBugzilla Migration Uservp8enc: generating streamheader is now obsolete## Submitted by Thiago Sousa Santos `@thiagossantos`
**[Link to original bug (#726118)](https://bugzilla.gnome.org/show_bug.cgi?id=726118)**
## Description
This is a followup for https://bugzilla.gnome.org/show_bug.cgi?id=722682
...## Submitted by Thiago Sousa Santos `@thiagossantos`
**[Link to original bug (#726118)](https://bugzilla.gnome.org/show_bug.cgi?id=726118)**
## Description
This is a followup for https://bugzilla.gnome.org/show_bug.cgi?id=722682
Now that oggmux can generate the streamheaders by itself this code can be removed from vp8enc.
The issue here is that vp8enc implements the tagsetter interface and those tags were being put on the streamheaders. What can be done? Push the tags that are set downstream? Oggmux should be modified to receive those tags and generate these tag headers so they are not lost.https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/110v4l2sink: Use GstVideoCropMeta to set overlay window if available2021-09-24T13:30:37ZBugzilla Migration Userv4l2sink: Use GstVideoCropMeta to set overlay window if available## Submitted by Aurélien Zanelli
**[Link to original bug (#725835)](https://bugzilla.gnome.org/show_bug.cgi?id=725835)**
## Description
Created attachment 271119
v4l2sink: Use GstVideoCropMeta to set overlay window if available
...## Submitted by Aurélien Zanelli
**[Link to original bug (#725835)](https://bugzilla.gnome.org/show_bug.cgi?id=725835)**
## Description
Created attachment 271119
v4l2sink: Use GstVideoCropMeta to set overlay window if available
An upstream element could provide buffers with GstVideoCropMeta to v4l2sink.
The main idea of the attached patch is to update the V4L2 overlay window according to incoming GstVideoCropMeta (if available) when rendering frames.
However, current implementation of this will override any overlay rectangle set by set_property() method. Maybe it should be property first then GstVideoCropMeta.
More background:
Our H264 decoder output non-cropped frames with a definition multiple of 16, which is the h264 macroblock size.
When input video definition is not a multiple of 16, encoding/decoding process add padding and provide crop information.
Since our gst pipeline is decoder --> v4l2sink, we want to let the cropping job to the v4l2 device. So decoder send cropping info through GstVideoCropMeta and v4l2sink set overlay window accordingly.
Current patch apply on master and 1.2.3, however i only tested it on 1.2.3
**Patch 271119**, "v4l2sink: Use GstVideoCropMeta to set overlay window if available":
[0001-v4l2sink-Use-GstVideoCropMeta-to-set-overlay-window-.patch](/uploads/0e4371dc448154cd6e3c8ce3eb172c3b/0001-v4l2sink-Use-GstVideoCropMeta-to-set-overlay-window-.patch)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/106aacparse: convert mpeg-2 adts to mpeg-4 raw stream-format2021-09-24T13:30:27ZBugzilla Migration Useraacparse: convert mpeg-2 adts to mpeg-4 raw stream-format## Submitted by Andrey Utkin
**[Link to original bug (#723551)](https://bugzilla.gnome.org/show_bug.cgi?id=723551)**
## Description
This is needed to stream AAC RTP stream demuxed from MPEG TS.
I don't insist that exactly aacparse...## Submitted by Andrey Utkin
**[Link to original bug (#723551)](https://bugzilla.gnome.org/show_bug.cgi?id=723551)**
## Description
This is needed to stream AAC RTP stream demuxed from MPEG TS.
I don't insist that exactly aacparse is guilty, just Sebastian Droege has said that aacparse is best place to perform that conversion.
To reproduce:
ffmpeg -f lavfi -i aevalsrc=0 -acodec aac -strict -2 -f mpegts - | GST_DEBUG=3,GST_CAPS:5,aacparse:8 gst-launch-1.0 -v fdsrc fd=0 ! tsdemux name=demux demux.audio_0100 ! aacparse ! rtpmp4apay ! fakesink
The output:
ffmpeg version N-60251-g7c756b6 Copyright (c) 2000-2014 the FFmpeg developers
built on Jan 30 2014 21:37:23 with gcc 4.6.3 (Gentoo 4.6.3 p1.13, pie-0.5.2)
configuration: --enable-gpl --enable-libx264 --enable-encoder=libx264 --disable-stripping --enable-debug --extra-cflags='-O0 -g -ggdb' --enable-libopus --enable-libvpx --enable-x11grab --enable-libfreetype --enable-filter=drawtext
libavutil 52. 63.100 / 52. 63.100
libavcodec 55. 49.101 / 55. 49.101
libavformat 55. 28.101 / 55. 28.101
libavdevice 55. 7.100 / 55. 7.100
libavfilter 4. 1.101 / 4. 1.101
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
Input` #0`, lavfi, from 'aevalsrc=0':
Duration: N/A, start: 0.000000, bitrate: 2822 kb/s
Stream` #0`:0: Audio: pcm_f64le, 44100 Hz, mono, dbl, 2822 kb/s
Output` #0`, mpegts, to 'pipe:':
Metadata:
encoder : Lavf55.28.101
Stream` #0`:0: Audio: aac, 44100 Hz, mono, fltp, 128 kb/s
Stream mapping:
Stream` #0`:0 ->` #0`:0 (pcm_f64le -> aac)
Press [q] to stop, [?] for help
[adts @ 0x20c6c00] Encoder did not produce proper pts, making some up.
0:00:00.023883839 26488 0x18e7d20 DEBUG aacparse gstaacparse.c:145:gst_aac_parse_init: initialized
0:00:00.024920422 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<fdsrc0:src> get pad caps with filter (NULL)
0:00:00.024963129 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<fdsrc0:src> query returned ANY
0:00:00.024977456 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<demux:sink> get pad caps with filter (NULL)
0:00:00.024991009 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<demux:sink> query caps caps query: 0x193af70, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.025011698 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2923:gst_pad_query_caps_default:<demux:sink> trying pad template caps
0:00:00.025020716 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<demux:sink> using caps 0x193ab70 video/mpegts, systemstream=(boolean)true
0:00:00.025035098 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<demux:sink> query returned video/mpegts, systemstream=(boolean)true
0:00:00.025067199 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<fdsrc0:src> get pad caps with filter (NULL)
0:00:00.025082638 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<fdsrc0:src> query returned ANY
0:00:00.025093574 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<demux:sink> get pad caps with filter (NULL)
0:00:00.025104619 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<demux:sink> query caps caps query: 0x1a3b850, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.025118772 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2923:gst_pad_query_caps_default:<demux:sink> trying pad template caps
0:00:00.025127279 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<demux:sink> using caps 0x193ab70 video/mpegts, systemstream=(boolean)true
0:00:00.025140440 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<demux:sink> query returned video/mpegts, systemstream=(boolean)true
0:00:00.025152627 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2023:gst_pad_link_check_compatible_unlocked:<fdsrc0:src> src caps ANY
0:00:00.025162099 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2025:gst_pad_link_check_compatible_unlocked:<demux:sink> sink caps video/mpegts, systemstream=(boolean)true
0:00:00.025172781 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2043:gst_pad_link_check_compatible_unlocked: caps are compatible
0:00:00.025223257 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<aacparse0:src> get pad caps with filter (NULL)
0:00:00.025241226 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<aacparse0:src> query caps caps query: 0x1a3b8a0, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.025256290 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2917:gst_pad_query_caps_default:<aacparse0:src> fixed pad caps: trying pad caps
0:00:00.025264975 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2923:gst_pad_query_caps_default:<aacparse0:src> trying pad template caps
0:00:00.025273118 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<aacparse0:src> using caps 0x193ad90 audio/mpeg, framed=(boolean)true, mpegversion=(int){ 2, 4 }, stream-format=(string){ raw, adts, adif, loas }
0:00:00.025298779 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<aacparse0:src> query returned audio/mpeg, framed=(boolean)true, mpegversion=(int){ 2, 4 }, stream-format=(string){ raw, adts, adif, loas }
0:00:00.025317412 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<rtpmp4apay0:sink> get pad caps with filter (NULL)
0:00:00.025330932 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<rtpmp4apay0:sink> query returned audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.025362286 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<aacparse0:src> get pad caps with filter (NULL)
0:00:00.025375300 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<aacparse0:src> query caps caps query: 0x1a3b940, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.025389718 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2917:gst_pad_query_caps_default:<aacparse0:src> fixed pad caps: trying pad caps
0:00:00.025398297 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2923:gst_pad_query_caps_default:<aacparse0:src> trying pad template caps
0:00:00.025406384 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<aacparse0:src> using caps 0x193ad90 audio/mpeg, framed=(boolean)true, mpegversion=(int){ 2, 4 }, stream-format=(string){ raw, adts, adif, loas }
0:00:00.025426149 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<aacparse0:src> query returned audio/mpeg, framed=(boolean)true, mpegversion=(int){ 2, 4 }, stream-format=(string){ raw, adts, adif, loas }
0:00:00.025443905 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<rtpmp4apay0:sink> get pad caps with filter (NULL)
0:00:00.025456608 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<rtpmp4apay0:sink> query returned audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.025470522 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2023:gst_pad_link_check_compatible_unlocked:<aacparse0:src> src caps audio/mpeg, framed=(boolean)true, mpegversion=(int){ 2, 4 }, stream-format=(string){ raw, adts, adif, loas }
0:00:00.025486704 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2025:gst_pad_link_check_compatible_unlocked:<rtpmp4apay0:sink> sink caps audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.025502435 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2043:gst_pad_link_check_compatible_unlocked: caps are compatible
0:00:00.025526475 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<rtpmp4apay0:src> get pad caps with filter (NULL)
0:00:00.025539135 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<rtpmp4apay0:src> query caps caps query: 0x1a3b9e0, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.025554047 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2923:gst_pad_query_caps_default:<rtpmp4apay0:src> trying pad template caps
0:00:00.025562525 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<rtpmp4apay0:src> using caps 0x193ade0 application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string)MP4A-LATM
0:00:00.025582085 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<rtpmp4apay0:src> query returned application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string)MP4A-LATM
0:00:00.025598014 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<fakesink0:sink> get pad caps with filter (NULL)
0:00:00.025613916 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<fakesink0:sink> query returned ANY
0:00:00.025630942 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<rtpmp4apay0:src> get pad caps with filter (NULL)
0:00:00.025642635 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<rtpmp4apay0:src> query caps caps query: 0x1a3ba80, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.025656969 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2923:gst_pad_query_caps_default:<rtpmp4apay0:src> trying pad template caps
0:00:00.025665226 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<rtpmp4apay0:src> using caps 0x193ade0 application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string)MP4A-LATM
0:00:00.025681779 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<rtpmp4apay0:src> query returned application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string)MP4A-LATM
0:00:00.025696995 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<fakesink0:sink> get pad caps with filter (NULL)
0:00:00.025709570 26488 0x18e7d20 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<fakesink0:sink> query returned ANY
0:00:00.025719561 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2023:gst_pad_link_check_compatible_unlocked:<rtpmp4apay0:src> src caps application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string)MP4A-LATM
0:00:00.025733639 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2025:gst_pad_link_check_compatible_unlocked:<fakesink0:sink> sink caps ANY
0:00:00.025739742 26488 0x18e7d20 DEBUG GST_CAPS gstpad.c:2043:gst_pad_link_check_compatible_unlocked: caps are compatible
Setting pipeline to PAUSED ...
0:00:00.026041013 26488 0x18e7d20 DEBUG aacparse gstaacparse.c:1355:gst_aac_parse_start: start
0:00:00.026126318 26488 0x18e7d20 WARN GST_POLL gstpoll.c:829:gst_poll_remove_fd: 0x1a3bc00: couldn't find fd !
Pipeline is PREROLLING ...
0:00:00.026356373 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<fdsrc0:src> get pad caps with filter (NULL)
0:00:00.026378526 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<fdsrc0:src> query returned ANY
0:00:00.026389310 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2468:gst_pad_get_current_caps:<fdsrc0:src> get current pad caps (NULL)
0:00:00.026624899 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<demux:audio_0100> get pad caps with filter (NULL)
0:00:00.026640084 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<demux:audio_0100> query caps caps query: 0x1a3bf20, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.026654106 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2917:gst_pad_query_caps_default:<demux:audio_0100> fixed pad caps: trying pad caps
0:00:00.026660142 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<demux:audio_0100> using caps 0x1a3be80 audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026674043 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<demux:audio_0100> query returned audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026684842 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<aacparse0:sink> get pad caps with filter (NULL)
0:00:00.026695386 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2807:gst_pad_peer_query_caps:<aacparse0:src> get pad peer caps with filter (NULL)
0:00:00.026706451 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2814:gst_pad_peer_query_caps:<aacparse0:src> peer query returned audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.026729054 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<aacparse0:sink> query returned audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.026742871 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<demux:audio_0100> get pad caps with filter (NULL)
0:00:00.026751266 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<demux:audio_0100> query caps caps query: 0x7f85cc0020f0, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.026762628 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2917:gst_pad_query_caps_default:<demux:audio_0100> fixed pad caps: trying pad caps
0:00:00.026768346 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<demux:audio_0100> using caps 0x1a3be80 audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026779774 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<demux:audio_0100> query returned audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026806139 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:814:gst_element_get_compatible_pad_template: compatible direction: found sink pad template "sink"
0:00:00.026814104 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:817:gst_element_get_compatible_pad_template: intersecting audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026823596 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:819:gst_element_get_compatible_pad_template: ..and audio/mpeg, mpegversion=(int){ 2, 4 }
0:00:00.026843487 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:825:gst_element_get_compatible_pad_template: caps are compatible
0:00:00.026864247 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<demux:audio_0100> get pad caps with filter (NULL)
0:00:00.026873578 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2900:gst_pad_query_caps_default:<demux:audio_0100> query caps caps query: 0x7f85cc002140, GstQueryCaps, filter=(GstCaps)"NULL", caps=(GstCaps)"NULL";
0:00:00.026884894 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2917:gst_pad_query_caps_default:<demux:audio_0100> fixed pad caps: trying pad caps
0:00:00.026890709 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2953:gst_pad_query_caps_default:<demux:audio_0100> using caps 0x1a3be80 audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026902820 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<demux:audio_0100> query returned audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026912928 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2761:gst_pad_query_caps:<aacparse0:sink> get pad caps with filter (NULL)
0:00:00.026921683 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2807:gst_pad_peer_query_caps:<aacparse0:src> get pad peer caps with filter (NULL)
0:00:00.026931830 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2814:gst_pad_peer_query_caps:<aacparse0:src> peer query returned audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.026950488 26488 0x1a3bc50 DEBUG GST_CAPS gstutils.c:2768:gst_pad_query_caps:<aacparse0:sink> query returned audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.026960666 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2023:gst_pad_link_check_compatible_unlocked:<demux:audio_0100> src caps audio/mpeg, mpegversion=(int)2, stream-format=(string)adts
0:00:00.026976874 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2025:gst_pad_link_check_compatible_unlocked:<aacparse0:sink> sink caps audio/mpeg, mpegversion=(int)4, stream-format=(string)raw
0:00:00.026987617 26488 0x1a3bc50 DEBUG GST_CAPS gstpad.c:2043:gst_pad_link_check_compatible_unlocked: caps are notcompatible
0:00:00.027058371 26488 0x1a3bc50 WARN basesrc gstbasesrc.c:2910:gst_base_src_loop:`<fdsrc0>` error: Internal data flow error.
0:00:00.027065477 26488 0x1a3bc50 WARN basesrc gstbasesrc.c:2910:gst_base_src_loop:`<fdsrc0>` error: streaming task paused, reason not-linked (-1)
ERROR: from element /GstPipeline:pipeline0/GstFdSrc:fdsrc0: Internal data flow error.
/GstPipeline:pipeline0/GstTSDemux:demux.GstPad:audio_0100: caps = "NULL"
Additional debug info:
gstbasesrc.c(2910): gst_base_src_loop (): /GstPipeline:pipeline0/GstFdSrc:fdsrc0:
streaming task paused, reason not-linked (-1)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
0:00:00.028146832 26488 0x18e7d20 DEBUG aacparse gstaacparse.c:1374:gst_aac_parse_stop: stop
Freeing pipeline ...https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/104matroskademux: Set buffer offsets for output2021-09-24T13:30:27ZBugzilla Migration Usermatroskademux: Set buffer offsets for output## Submitted by Brendan Long
**[Link to original bug (#723327)](https://bugzilla.gnome.org/show_bug.cgi?id=723327)**
## Description
I'm looking at using the buffer offset as a unique identifier for caption/subtitle cues. This HTML m...## Submitted by Brendan Long
**[Link to original bug (#723327)](https://bugzilla.gnome.org/show_bug.cgi?id=723327)**
## Description
I'm looking at using the buffer offset as a unique identifier for caption/subtitle cues. This HTML mailing list thread is relevant:
http://lists.w3.org/Archives/Public/public-html/2014Jan/0083.html
Specifically:
> Is the UA expected to keep a unique internal id for each in-band
> TextTrackCue it creates so that it doesn't reinsert a cue that
> was inserted previously, but was modified?
To which the answer appears to be, "yes".
The worst-case scenario for this seems to be WebVTT, where the *only* way to uniquely identify cues is by where they appear in a file:
00:00:00 --> 00:00:05
Lorem ipsum
00:00:00 --> 00:00:05
Lorem ipsum
So, I'd like to use GST_BUFFER_OFFSET, but it looks like it never sets set for any caption or subtitle formats. As a proof-of-concept, I'd like to implement this for Matroska/SSA, since it seems to be the best-supported cue format right now. Does that make sense?https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/100videobalance: handle unsupported caps features in passthrough mode2021-09-24T13:30:23ZBugzilla Migration Uservideobalance: handle unsupported caps features in passthrough mode## Submitted by Matthieu Bouron
**[Link to original bug (#720345)](https://bugzilla.gnome.org/show_bug.cgi?id=720345)**
## Description
This patch allows videobalance to work with unsupported caps features in passthrough mode.
This...## Submitted by Matthieu Bouron
**[Link to original bug (#720345)](https://bugzilla.gnome.org/show_bug.cgi?id=720345)**
## Description
This patch allows videobalance to work with unsupported caps features in passthrough mode.
This is especially usefull when an hardware decoder is plugged by playbin.https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/97soup: Add a SoupServer sink2021-09-24T13:30:21ZBugzilla Migration Usersoup: Add a SoupServer sink## Submitted by Brendan Long
**[Link to original bug (#711271)](https://bugzilla.gnome.org/show_bug.cgi?id=711271)**
## Description
Created attachment 258778
Patch to add gstsouphttpserversrc
I'm trying to test some things in...## Submitted by Brendan Long
**[Link to original bug (#711271)](https://bugzilla.gnome.org/show_bug.cgi?id=711271)**
## Description
Created attachment 258778
Patch to add gstsouphttpserversrc
I'm trying to test some things in WebKit with live sources, and there doesn't seem to be any simple way to create a stream, so I made this.
It's currently *very* basic. I can think of plenty of new properties that would be useful (passing a SoupServer, GMainLoop, GMainContext, mime type, etc.), and useful features (detecting mime types), but I figured the basic version was a good first step, and then new features can be built on top of that.
I wasn't able to get this working with Ogg or WebM, but MPEG-TS works:
gst-launch-1.0 videotestsrc ! x264enc ! mpegtsmux ! souphttpserversink port=8080
gst-launch-1.0 playbin uri=http://localhost:8080
~~**Patch 258778**~~, "Patch to add gstsouphttpserversrc":
[0001-soup-add-gstsouphttpserversrc-which-serves-streams-o.patch](/uploads/5d9d4cdb393c1697271826125d0133d8/0001-soup-add-gstsouphttpserversrc-which-serves-streams-o.patch)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/96tag com.apple.iTunes:cdec type:1 is not mapped2021-09-24T13:30:20ZBugzilla Migration Usertag com.apple.iTunes:cdec type:1 is not mapped## Submitted by Mohammed Sameer
**[Link to original bug (#711249)](https://bugzilla.gnome.org/show_bug.cgi?id=711249)**
## Description
Trying to play back the attached file produces this warning (file still works):
0:00:00.0372957...## Submitted by Mohammed Sameer
**[Link to original bug (#711249)](https://bugzilla.gnome.org/show_bug.cgi?id=711249)**
## Description
Trying to play back the attached file produces this warning (file still works):
0:00:00.037295790 4609 0x7fe5780a1540 WARN qtdemux qtdemux.c:8576:qtdemux_tag_add_revdns:`<qtdemux0>` This tag com.apple.iTunes:cdec type:1 is not mapped, file a bug at bugzilla.gnome.org
This is the pipeline I use:
GST_DEBUG='*:2' gst-launch-1.0 playbin uri=file:///tmp/HE-AAC_Stereo_46kbps.m4a audio-sink=alsasink
Plugin Details:
Name: isomp4
Description: ISO base media file format support (mp4, 3gpp, qt, mj2)
Filename: /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so
Version: 1.0.10
License: LGPL
Source module: gst-plugins-good
I also tried with 0.10 and I see the same warning.
Version: 1.xhttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/93matroskademux: expose stream name as tag2021-09-24T13:30:19ZBugzilla Migration Usermatroskademux: expose stream name as tag## Submitted by Matej `@Knopp`
**[Link to original bug (#708918)](https://bugzilla.gnome.org/show_bug.cgi?id=708918)**
## Description
Created attachment 255922
Patch to expose track name
There is probably issue for exposing m...## Submitted by Matej `@Knopp`
**[Link to original bug (#708918)](https://bugzilla.gnome.org/show_bug.cgi?id=708918)**
## Description
Created attachment 255922
Patch to expose track name
There is probably issue for exposing more tags already but I couldn't find it.
Patch exposes track name, which is often set while the languages are missing.
**Patch 255922**, "Patch to expose track name":
[0002-matroskademux-expose-track-name-as-tag.patch](/uploads/7b8fe2dba2d7f37a170386e276cb6f74/0002-matroskademux-expose-track-name-as-tag.patch)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/84matroskademux: should be able to just change rate when streaming2021-09-24T13:30:15ZBugzilla Migration Usermatroskademux: should be able to just change rate when streaming## Submitted by Nicola `@drakkan`
**[Link to original bug (#696692)](https://bugzilla.gnome.org/show_bug.cgi?id=696692)**
## Description
Actually a streamable file, produced for example with mastroskamux streamable=true, cannot be p...## Submitted by Nicola `@drakkan`
**[Link to original bug (#696692)](https://bugzilla.gnome.org/show_bug.cgi?id=696692)**
## Description
Actually a streamable file, produced for example with mastroskamux streamable=true, cannot be played at rate different from 1x (setting sync=false on videosink play at max speed but not 2x, 4x ecc.), I understand that seek cannot work for such files, but fast forward could be implemented, I'm using a quick workaround in my app that use appsink/appsrc, maybe sometime in future I'll try to implement this inside some demuxer (for example matroskademux). This bug report is for keep track of this feature and for share implementation hintshttps://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/83matroskademux: forward video cropping information downstream2021-09-24T13:30:14ZBugzilla Migration Usermatroskademux: forward video cropping information downstream## Submitted by Fabio
**[Link to original bug (#693971)](https://bugzilla.gnome.org/show_bug.cgi?id=693971)**
## Description
MKV-file headers may contains values to be used for players affecting top-, left-, right-, and bottom-pixel...## Submitted by Fabio
**[Link to original bug (#693971)](https://bugzilla.gnome.org/show_bug.cgi?id=693971)**
## Description
MKV-file headers may contains values to be used for players affecting top-, left-, right-, and bottom-pixels cropping. Totem does not currently recognize those header values, and just ignores them.
This can be demonstrated using the mkvmerge GUI program and its header editor to fiddle with such values, and them running the resulting files through totem. Another player than totem (VLC) was tried, which recognized those values, and therefore cropped the video upon playing to remove the annoying border flickering that was experienced in that given file, without the need for the stream to be reencoded, and either suffering from a deterioration in quality, or becoming huge through lossless reencoding. (Consider this as an argument for the pertinence of this bug.)
This bug can be experienced under Precise, using the as-of-current latest build of totem.
Downstream at Launchpad:
https://bugs.launchpad.net/ubuntu/+source/totem/+bug/1014264
### See also
* [Bug 685812](https://bugzilla.gnome.org/show_bug.cgi?id=685812)
* https://launchpad.net/bugs/1014264https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/82ximagesrc: delay image reconstruction when using DAMAGE2021-09-24T13:30:13ZBugzilla Migration Userximagesrc: delay image reconstruction when using DAMAGE## Submitted by Stirling Westrup
**[Link to original bug (#693037)](https://bugzilla.gnome.org/show_bug.cgi?id=693037)**
## Description
ximagesrc has a feature where it will use the X Damage feature to only send updates for changed ...## Submitted by Stirling Westrup
**[Link to original bug (#693037)](https://bugzilla.gnome.org/show_bug.cgi?id=693037)**
## Description
ximagesrc has a feature where it will use the X Damage feature to only send updates for changed parts of the screen, rather than entire screens. However, when using damage, performance as a whole degrades badly, rather than improving.
This pipeline can easily handle 25 frames-per-second of updates on my system:
gst-launch-1.0 ximagesrc display-name=:1 use-damage=false ! videoconvert ! 'video/x-raw,pixel-aspect-ratio=(fraction)1/1' ! videorate ! xvimagesink display=:2
However, if one removes the 'use-damage=false' clause to permit ximagesrc to 'optimize' buffers, then one quickly gets results like this:
$ gst-launch-1.0 ximagesrc display-name=:1 ! videoconvert ! 'video/x-raw,pixel-aspect-ratio=(fraction)1/1' ! videorate ! xvimagesink display=:2
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2675): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2675): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2675): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2675): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2675): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2675): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.
`^`CCaught interrupt -- handling interrupt.https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/81webmmux: Issues with tag setting in WebM2021-09-24T13:30:13ZBugzilla Migration Userwebmmux: Issues with tag setting in WebM## Submitted by an unknown user
**[Link to original bug (#692472)](https://bugzilla.gnome.org/show_bug.cgi?id=692472)**
## Description
I have attached a simple test application. I basically tries to set 3
tags in an WebM file.
...## Submitted by an unknown user
**[Link to original bug (#692472)](https://bugzilla.gnome.org/show_bug.cgi?id=692472)**
## Description
I have attached a simple test application. I basically tries to set 3
tags in an WebM file.
The first is TAG_APPLICATION_NAME, the second is TAG_LANGUAGE_CODE, and finally
the last one is TAG_ENCODER.
None of the 3 are successfully set in the output file, in fact language seems to get defaulted to English. Vorbis does also here set its own ENCODER tag, but VP8 seems to not.
There are some Tag specification here for WebM -
http://www.webmproject.org/docs/container/
WritingApp might be a good fit for TAG_APPLICATION_NAME, and there is a Language tag that somehow could like to TAG_LANGUAGE_CODE.
Version: 1.x