- Sep 08, 2021
-
-
Tim-Philipp Müller authored
-
hotdoc doesn't know about that symbol Part-of: <gstreamer/gst-plugins-bad!2518>
-
- Sep 06, 2021
-
-
We can reset the URI to NULL and this fix a deadlock in that case or when the URI was invalid. Part-of: <gstreamer/gst-plugins-bad!2512>
-
This avoids sending out partial invalid data downstream which could cause decoders (ex: `dvdlpmdec`) to error out. Part-of: <gstreamer/gst-plugins-bad!2511>
-
Having an unlimited input queue is very bad if the encoder can't run at real-time. Eventually it will consume all RAM. I don't really see any reason to have more than 1 outstanding encoded frame, so remove the queue and limit things to 1 pending frame. Part-of: <gstreamer/gst-plugins-bad!2510>
-
- Sep 02, 2021
-
-
The minimum possible size of valid CEA708 data is 3 bytes, not 7 bytes Part-of: <gstreamer/gst-plugins-bad!2507>
-
- Aug 30, 2021
-
-
Previously, the code was always assuming progressive input, fix this by looking at the caps. Part-of: <gstreamer/gst-plugins-bad!2500>
-
- Aug 25, 2021
-
-
Tim-Philipp Müller authored
This encoder advertises alignment=au as output format, which means each output frame should contain a full decodable access unit. The video encoder base class is not aware of our output alignment and will output spurious buffers with just the SPS/PPS inside when we call gst_video_encoder_set_headers(), which is broken because each buffer is supposed to contain a full decodable access unit in our case. Just don't tell the base class about our headers, they will be sent at the beginning of each IDR frame anyway. Part-of: <!2478>
-
Tim-Philipp Müller authored
Part-of: <gstreamer/gst-plugins-bad!2478>
-
- Aug 24, 2021
-
-
Tim-Philipp Müller authored
This was putting a truncated SPS into the initial header instead of the PPS because it was always reading from the beginning of the bitstream buffer (pBsBuf) and not from the offset where the current NAL is at in the bitstream buffer (psBsBuf + nal_offset). This was broken in commit 17113695. Fixes gstreamer/gst-plugins-bad#1576 Part-of: <gstreamer/gst-plugins-bad!2478>
-
- Aug 23, 2021
-
-
Part-of: <!2479>
-
- Aug 20, 2021
-
-
Negative stride value can be used in MediaFoundation to inform whether memory layout is top-down or bottom-up manner. Note that negative stride is allowed only for RGB, system memory. See also https://docs.microsoft.com/en-us/windows/win32/medfound/image-stride Fixes: gstreamer/gst-plugins-bad#1646 Part-of: <gstreamer/gst-plugins-bad!2477>
-
- Aug 18, 2021
-
-
The emulation bytes need to be removed as bytes, not bit. This fixes decoding issues with files that have emulation bytes with the Cedrus driver. Part-of: <gstreamer/gst-plugins-bad!2472>
-
- Aug 09, 2021
-
-
The GST_ELEMENT_ERROR will call the gst_object_get_path_string and use gst_object_get_parent to get the full object path name, which needs to lock the object. But we are already in a locked context and so this will cause a deadlock, the pipeline can not exit normally. Part-of: <gstreamer/gst-plugins-bad!2460>
-
- Jul 29, 2021
-
-
Nirbheek Chauhan authored
pipewiresrc outputs audio buffers without a valid duration, so we need to calculate it manually in that case. Upstream issue: pipewire/pipewire#1438 Part-of: <gstreamer/gst-plugins-bad!2444>
-
- Jul 16, 2021
-
-
https://gitlab.gnome.org/GNOME/glib/-/issues/803 Basically, if destruction of a GSource and its associated GMainContext are not synchronised, Then the GSource destruction can access freed GMainContext resources and cause a crash. This is not super common but can happen. Part-of: <gstreamer/gst-plugins-bad!2416>
-
- Jul 09, 2021
-
-
Philippe Normand authored
Follow-up from: gstreamer/gst-plugins-bad!2392 Part-of: <gstreamer/gst-plugins-bad!2395>
-
- Jul 08, 2021
-
-
GstDashDemuxStream is not a GstObject, so use its pad as associated object when emitting log messages. Part-of: <gstreamer/gst-plugins-bad!2392>
-
Given caps does not need to be strictly subset of device caps. Allow accept it if device caps and requested caps can intersect Fixes: gstreamer/gst-plugins-bad#1619 Part-of: <gstreamer/gst-plugins-bad!2391>
-
We can only convert from non-cdp to cdp within the confines of valid cdp framerates. The existing caps negotiation code was allowing any framerate to convert to a cdp output which is incorrect and would hit an assertion later. Part-of: <!2388>
-
Not having any *actual* ANC is totally fine and common usage with several MXF variants. In order to properly advance the streams, the essence handler returns an empty GAP buffer which gets converted to a GST_EVENT_GAP. Part-of: <gstreamer/gst-plugins-bad!2387>
-
The build fails on macos with the following error: /usr/local/Cellar/opencv/4.5.0_5/include/opencv4/opencv2/core/mat.hpp:2226:15: error: no template named 'initializer_list' in namespace 'std' Mat_(std::initializer_list<_Tp> values); fatal error: too many errors emitted, stopping now [-ferror-limit=] 35 warnings and 20 errors generated. Part-of: <gstreamer/gst-plugins-bad!2386>
-
- Jun 24, 2021
-
-
Some elements will make use of the automatically generated names to create new pads in future muxer instances, for example splitmuxsink. Previously we would've created a pad with a random pid that would become "sink_0", and then on a new muxer instance a pad "sink_0" and tsmux would've then failed because 0 is not a valid PID. Part-of: <gstreamer/gst-plugins-bad!2358>
-
Previously pads might have been requested already (e.g. in NULL state), then reset was called (e.g. because changing state) and then a new pad was requested. Resetting is re-creating the internal muxer object and as such resetting the pid counter, so the next requested pad would get the same pid as the first requested pad which then leads to collisions. Part-of: <gstreamer/gst-plugins-bad!2357>
-
- Jun 22, 2021
-
-
Some decoder implementations might drain out internal buffers and reset its status on segment-done event. So, in case that upstream stream-format is packetized but downstream supports only byte-format, required codec-data might not be forwarded toward downstream if such parameter set NAL units don't exist in inband bitstream. Therefore, parse elements should re-send parameter set NAL units like the case of flush event. Part-of: <gstreamer/gst-plugins-bad!2351>
-
The GST_H265_PROFILE_MAIN_444_10 profile should be compatible with GST_H265_PROFILE_SCREEN_EXTENDED_MAIN_444_10, not the current GST_H265_PROFILE_SCREEN_EXTENDED_MAIN_10. Part-of: <gstreamer/gst-plugins-bad!2350>
-
- Jun 02, 2021
-
-
We were doing our initial "empty" commit on the subsurface instead of the toplevel surface. As an incidence, we should not have received a configure event ever, not just on mutter. This fixes the following warning when using mutter compositor (aka gnome-shell): waylandsink wlwindow.c:304:gst_wl_window_new_toplevel: The compositor did not send configure event. Part-of: <!2300>
-
- Jun 01, 2021
-
-
That would cause negotiation issue Part-of: <gstreamer/gst-plugins-bad!2293>
-
Query caps should return caps which represent the element can accept, not resulting format. Fixing negotiation error with gst-launch-1.0 videotestsrc ! video/x-raw,framerate=25/1 ! interlace field-pattern=0 ! fakesink Part-of: <gstreamer/gst-plugins-bad!2293>
-
- May 20, 2021
-
-
stream-start, caps, and segment events will be pushed by internal audiotestsrc element. Part-of: <gstreamer/gst-plugins-bad!2271>
-
Expected use case of audiolatency element is that mimic audio capture device which is most likely live source. So audiolatency element should use live mode as well. Part-of: <gstreamer/gst-plugins-bad!2271>
-
Even though input/output resolutions are identical there, default buffer size of progressive and interleaved formats could be different because we are rounding up height of all plane of interlaced frame to be multiple of two. Part-of: <gstreamer/gst-plugins-bad!2270>
-
- May 14, 2021
-
-
Jan Alexander Steffens authored
Part-of: <gstreamer/gst-plugins-bad!2251>
-
Jan Alexander Steffens authored
Bizarrely, it returned a pad from the child rtpbin. I noticed because our application leaked the implicitly created ghost pad. Make an explicit ghost pad so this works properly. Part-of: <gstreamer/gst-plugins-bad!2250>
-
Part-of: <gstreamer/gst-plugins-bad!2248>
-
This is a port of gstreamer/gst-plugins-bad!2019 to h265parse. When a SPS is received then any previous PPS remains valid. So don't clear the PPS flag from the parser state. This is important because there are encoders that don't generated a PPS after every SPS. Part-of: <gstreamer/gst-plugins-bad!2245>
-
When a SPS is received then any previous PPS remains valid. So don't clear the PPS flag from the parser state. This is important because there are encoders that don't generated a PPS after every SPS. Closes gstreamer/gst-plugins-bad#571 Part-of: <gstreamer/gst-plugins-bad!2243>
-
- May 04, 2021
-
-
Add a header that is no longer transitively included Part-of: <gstreamer/gst-plugins-bad!2216>
-
- Apr 28, 2021
-
-
Part-of: <gstreamer/gst-plugins-bad!2202>
-
- Apr 23, 2021
-
-
Tim-Philipp Müller authored
This reverts commit 1407a433. The earlier function signature change this goes with (!2104 ) was not backported.
-