- Apr 11, 2023
-
-
Tim-Philipp Müller authored
-
Tim-Philipp Müller authored
Part-of: <gstreamer/gstreamer!4390>
-
Tim-Philipp Müller authored
Part-of: <!4390>
-
- Apr 10, 2023
-
-
Fixes #2473 Part-of: <gstreamer/gstreamer!4385>
-
Fixes #2473 Part-of: <gstreamer/gstreamer!4385>
-
In case of POC type 2, output order is equal to decoding order (no frame reordering) Fixes: gstreamer/gstreamer#2447 Part-of: <gstreamer/gstreamer!4383>
-
The minimum latency answered by an element should be the maximum latency from the element's perspective. Also consider max_reorder_frames update as a sequence change Part-of: <gstreamer/gstreamer!4383>
-
It's not fatal and can be ignored Part-of: <gstreamer/gstreamer!4383>
-
Depending on subclass, negotiation might not happen on new_sequence() Fixing regression introduced by the commit 4a4823b9 Part-of: <gstreamer/gstreamer!4383>
-
Depending on subclass, negotiation might not happen on new_sequence() Fixing regression introduced by the commit 4a4823b9 Part-of: <gstreamer/gstreamer!4383>
-
GstStructure may leak when using external HWND Part-of: <gstreamer/gstreamer!4382>
-
Part-of: <gstreamer/gstreamer!4379>
-
g_string_free(.., FALSE) gives us ownership of the string already, no need to duplicate that again with g_strdup(), and doing so will leak the string returned by g_string_free() here. Caught by compiler warnings in newer GLib versions. Part-of: <gstreamer/gstreamer!4380>
-
The previous code would only check if two packets in a row were duplicates. If not (i.e. a packet is a duplicate of a packet received slightly before) the code would generate completely bogus FCI because it assumes there were no duplicates present in the array. In order to be efficient, just store all received packets and remove the duplicates just before the FCI is generated once the array of observations have been sorted by seqnum. Fixes TWCC usage with moderate to high packet duplication. Part-of: <gstreamer/gstreamer!4378>
-
- Apr 07, 2023
-
-
Scheduled playback starts on videosink's state change or on caps but it's possible that audiosink is configure without caps yet. Try start scheduled playback on audiosink's caps event as well Part-of: <gstreamer/gstreamer!4368>
-
- Apr 06, 2023
-
-
The proxy and queue are created in the gst_gl_window_wayland_egl_open() function and will be recreated on open. This leaks both objects, the wayland client documentation mentions that they should be destroyed using the appropriate destroy functions. Found during valgrind memory leak testing, these blocks were marked as definitely lost. Part-of: <gstreamer/gstreamer!4355>
-
- Apr 05, 2023
-
-
Part-of: <gstreamer/gstreamer!4346>
-
Sending the EOS event while the pipeline is PAUSED can deadlock on the stream lock if a sink is currently blocked because of pre-rolling. Part-of: <gstreamer/gstreamer!4345>
-
Regression from gstreamer/gstreamer!2132 We parse the source-specific fields from the SDP and put it into the caps, but when converting caps into an SDP again this would need special handling. By default it would end up as part of the fmtp field, which is simply wrong. Automatically putting it into the caps and SDP will need some more work. Part-of: <gstreamer/gstreamer!4344>
-
Fixes gstreamer/gstreamer#2391 Part-of: <gstreamer/gstreamer!4342>
-
- Apr 04, 2023
-
-
Otherwise empty caps are created while all following code assumes that the caps will have exactly one structure, and then run into assertions. Part-of: <gstreamer/gstreamer!4343>
-
- Apr 01, 2023
-
-
Existing codes rely on modified argc value by g_option_context_parse() but g_option_context_parse_strv() is used in case of Windows. Count arguments after the option parsing manually. Fixing command "gst-inspect-1.0.exe -b" Part-of: <gstreamer/gstreamer!4322>
-
- Mar 31, 2023
-
-
Moving from PLAYING to NULL will set the stop_streaming_threads to TRUE, but when moving back upwards its not reset to FALSE (as only done in uncalled init and resume callbacks). Fix by reseting value in the prepare callback. Part-of: <gstreamer/gstreamer!4321>
-
This is a multi-planar format with planes non contiguous in memory. It is intended to be used only in drivers and applications that support the multi-planar API. Part-of: <gstreamer/gstreamer!4318>
-
Tim-Philipp Müller authored
Otherwise the patch file might get line endings converted on git checkout on Windows if the git option core.autocrlf=true is set, and then the patches won't apply later when Meson tries to apply them to the downloaded source code from tarball. This could cause the pango patches not applying to the pango subproject on Windows in some settings, and then the subproject setup would fail and the pango plugin would not be built. Part-of: <!4314>
-
- Mar 30, 2023
-
-
If the first XML element in a DASH manifest has its closing brance beyond the first 512 bytes (because of, e.g. lots of attributes), the MPD typefinder fails. Try to read a larger block, and then smaller blocks until 512 bytes. Fixes gstreamer/gstreamer#2385 Part-of: <gstreamer/gstreamer!4302>
-
gst_rtsp_url_get_request_uri returns rtsp://... url when requested url is rtsps://, this is not in accordance with https://www.rfc-editor.org/rfc/rfc7826.html#section-19.2. This also impedes setting up a rtsps session with a live555 rtsp server. Don't expose other than rtsp and rtsps internal gstreamer rtsp url schemes to avoid regression: gstreamer/gstreamer#2412 Part-of: <gstreamer/gstreamer!4298>
-
Revert "rtsp: gstrtspurl: gst_rtsp_url_get_request_uri: fix incorrect scheme for tls transport methods" This reverts commit 024ef765 because it causes a regression: gstreamer/gstreamer#2412 Part-of: <gstreamer/gstreamer!4298>
-
Part-of: <gstreamer/gstreamer!4312>
-
Running element_vkcolorconver test with Vulkan validation layer this error is raised: Code 0 : Validation Error: [ VUID-VkMappedMemoryRange-size-01390 ] Object 0: handle = 0x100000000010, type = VK_OBJECT_TYPE_DEVICE_MEMORY; | MessageID = 0xdd4e6d8b | vkFlushMappedMemoryRanges: Size in pMemRanges[0] is 0x4, which is not a multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize (0x40) and offset + size (0x0 + 0x4 = 0x4) not equal to the memory size (0xb). The Vulkan spec states: If size is not equal to VK_WHOLE_SIZE, size must either be a multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize, or offset plus size must equal the size of memory The reason of is that the image size used in the test doesn't comply hardware restrictions. In order to avoid juggling with image size and hardware restrictions, this patch proposes to use VK_WHOLE_SIZE macro. Part-of: <gstreamer/gstreamer!4311>
-
Running tests with Vulkan Validation enabled show an error on vkimage tests: Code 0 : Validation Error: [ VUID-VkImageViewCreateInfo-image-04441 ] Object 0: VK_NULL_HANDLE, type = VK_OBJECT_TYPE_COMMAND_BUFFER; Object 1: handle = 0x50000000005, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0xb75da543 | Invalid usage flag for VkImage 0x50000000005[] used by vkCreateImageView(). In this case, VkImage should have VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT | VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT | VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT | VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT | VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT | VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR | VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT | VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR | VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR | VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR | VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR | VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM | VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM set during creation. The Vulkan spec states: image must have been created with a usage value containing at least one of the usages defined in the valid image usage list for image views This patch adds VK_IMAGE_USAGE_SAMPLED_BIT to the usage bits in test. Part-of: <gstreamer/gstreamer!4311>
-
While using the validation layer with this pipeline: gst-launch-1.0 videotestsrc num-buffers=10 ! vulkanupload ! vulkancolorconvert ! vulkansink The validation layer throws this message: Code 0 : Validation Error: [ VUID-VkAttachmentDescription-format-06699 ] Object 0: handle = 0x5555562e9610, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x52b3229e | vkCreateRenderPass: pCreateInfo->pAttachments[0] format is VK_FORMAT_B8G8R8A8_UNORM and loadOp is VK_ATTACHMENT_LOAD_OP_LOAD, but initialLayout is VK_IMAGE_LAYOUT_UNDEFINED. The Vulkan spec states: If format includes a color or depth aspect and loadOp is VK_ATTACHMENT_LOAD_OP_LOAD, then initialLayout must not be VK_IMAGE_LAYOUT_UNDEFINED When creating the render pass the loadOp can be either `VK_ATTACHMENT_LOAD_OP_CLEAR` or `VK_ATTACHMENT_LOAD_OP_LOAD` depending on `enable_clear`. While `enable_clear` is FALSE by default (which means `VK_ATTACHMENT_LOAD_OP_LOAD`). Nonetheless, its value is explicitly changed by `vkoverlaycompositor` to FALSE too! This behavior was introduced in merge request #2470 where `VK_ATTACHMENT_LOAD_OP_CLEAR` was a fixed value for loadOp. Thus, the bug consists in a missing initialization of `enable_clear` to TRUE from that merge request. Part-of: <gstreamer/gstreamer!4311>
-
- Mar 28, 2023
-
-
It was simply ignored so actually handle it. Part-of: <gstreamer/gstreamer!4290>
-
To avoid mis-ordered frames, allow multithread decoding only in subframe mode. Fixes #1786 Part-of: <gstreamer/gstreamer!4275>
-
Returning G_MAXDOUBLE from a function returning a float is not going to work well and MSVC also correctly warns about this. Part-of: <gstreamer/gstreamer!4285>
-
- Mar 27, 2023
-
-
Need mark selection_update to true when update selection, otherwise, pipeline will not handle this selection update sometimes when this flag has been reset Part-of: <gstreamer/gstreamer!4284>
-
- Mar 25, 2023
-
-
Tim-Philipp Müller authored
We wouldn't add the missing EOI marker if the frame ended with either 0xFF NN or 0xNN D9. Fixes #2407 Part-of: <gstreamer/gstreamer!4269>
-
- Mar 24, 2023
-
-
Add missing condition check in for loop Part-of: <gstreamer/gstreamer!4258>
-
It should include progressive as well Part-of: <gstreamer/gstreamer!4253>
-
- Mar 22, 2023
-
-
With GST_SEEK_FLAG_SNAP_AFTER present, the previous version would adjust seek time based on the keyframe farthest away from desired_time. This was incorrect, because we always want the *earliest* suitable keyframe to seek to, not the last one. With this fix, in case of the SNAP_AFTER, we now look for the closest keyframe that can be found after desired_time. Behaviour for SNAP_BEFORE should remain unchanged. Part-of: <gstreamer/gstreamer!4251>
-