=== release 1.22.0 ===

2023-01-23 19:29:34 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-bad.doap:
	* meson.build:
	  Release 1.22.0

2023-01-23 16:28:08 +0000  Tim-Philipp Müller <tim@centricular.com>

	* po/hr.po:
	* po/ro.po:
	* po/zh_CN.po:
	  gst-plugins-bad: update translations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3773>

2023-01-23 23:29:08 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11compositor.cpp:
	  d3d11compositor: Workaround blending artifacts on Intel platform
	  Disable vendor implemented converter in d3d11compositor to workaround
	  artifacts
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3770>

2023-01-19 15:24:05 +0100  Jonas Danielsson <jonas.danielsson@spiideo.com>

	* ext/wpe/WPEThreadedView.cpp:
	* ext/wpe/WPEThreadedView.h:
	* ext/wpe/gstwpesrcbin.cpp:
	* ext/wpe/gstwpevideosrc.cpp:
	  wpe: Add 'run-javascript' action signal
	  Introduce way of running a script in the context of the internal
	  webView.
	  Fixes #1722
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3753>

2023-01-19 22:40:36 +0900  Seungha Yang <seungha@centricular.com>

	* sys/win32ipc/gstwin32ipcvideosrc.cpp:
	  win32ipcvideosrc: Fix leak in fallback copy path
	  Clear shared memory after use
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3751>

2023-01-19 15:36:40 +0100  Edward Hervey <edward@centricular.com>

	* sys/va/gstvah264enc.c:
	* sys/va/gstvah265enc.c:
	  va: Fix path leak
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3755>

=== release 1.21.90 ===

2023-01-13 19:08:48 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-bad.doap:
	* meson.build:
	  Release 1.21.90

2023-01-12 22:17:24 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11memory.cpp:
	  d3d11memory: Fix potential crash in GstD3D11PoolAllocator
	  Allocator object can be the final refcount holder, when a GstD3D11Memory
	  is being released. Do unref allocator once there's no more
	  remaining operation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3715>

2023-01-12 22:14:30 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11memory.cpp:
	  d3d11memory: Remove GstD3D11PoolAllocator::dispose
	  Clear GstD3D11Device object in finalize method as well
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3715>

2023-01-11 15:41:21 +0000  Tim-Philipp Müller <tim@centricular.com>

	* po/LINGUAS:
	* po/es.po:
	* po/hr.po:
	* po/ka.po:
	* po/lt.po:
	* po/nl.po:
	* po/ru.po:
	* po/sk.po:
	* po/sl.po:
	* po/sr.po:
	* po/uk.po:
	* po/zh_TW.po:
	  gst-plugins-bad: update translations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3711>

2023-01-11 14:53:39 +0000  Tim-Philipp Müller <tim@centricular.com>

	* scripts/dist-translations.py:
	* scripts/meson.build:
	  Fix translation pot files when creating dist tarballs
	  Add version as per Translation Project requirements and
	  also add a .pot file without the ABI suffix.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3711>

2023-01-11 12:17:13 +0200  Sebastian Dröge <sebastian@centricular.com>

	* tools/gst-transcoder.c:
	  tools: Use `gst_macos_main()` on macOS
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1673
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3709>

2023-01-11 03:23:57 +0900  Seungha Yang <seungha@centricular.com>

	* meson.build:
	  meson: gst-plugins-bad: Disable spammy MSVC warning
	  warning C5051: attribute 'noinline' requires at least '/std:c++20';
	  ignored
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3705>

2023-01-09 12:39:55 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/mxf/mxfmetadata.c:
	  mxfmux: Add all local tags to the primer
	  No matter if they're allocated via GSlice or malloc(). The allocator is
	  completely irrelevant, all local tags need to be in the primer so they
	  can be handled.
	  This didn't have any effect in practice because all local tags that
	  appear in the muxer are allocated via GSlice. Only from the demuxer they
	  might be allocated via malloc().
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3699>

2022-12-15 18:42:26 +0000  Philippe Normand <philn@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/aom/gstav1enc.c:
	* ext/aom/gstav1enc.h:
	  av1enc: Add property for controlling max distance between 2 keyframes
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>

2022-07-11 11:03:16 +0530  Yatin Mann <yatinmaan1@gmail.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/aom/gstav1enc.c:
	* ext/aom/gstav1enc.h:
	  aom: av1enc: Expose more properties
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>

2023-01-08 23:46:40 +0530  yatinmaan <yatinmaan1@gmail.com>

	* ext/aom/gstav1enc.h:
	  aom: av1enc: Remove redundant enum variants from header
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>

2022-07-11 09:27:41 +0530  Yatin Mann <yatinmaan1@gmail.com>

	* ext/aom/gstav1enc.c:
	* ext/aom/gstav1enc.h:
	  aom: av1enc: Ensure that input pts is strictly increasing
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>

2022-07-04 19:55:59 +0530  Yatin Mann <yatinmaan1@gmail.com>

	* ext/aom/gstav1enc.c:
	  aom: av1enc: Fix pts unit
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2743>

2023-01-02 18:34:59 +0900  ekwange <ekwange@gmail.com>

	* ext/directfb/dfbvideosink.c:
	* ext/directfb/dfbvideosink.h:
	  dfbvideosink: Fix compile error
	  Fix some compile errors
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3670>

2023-01-01 19:19:03 -0500  Olivier Crête <olivier.crete@collabora.com>

	* gst-libs/gst/webrtc/nice/nice.c:
	  webrtc nice: Let libnice handle STUN/TURN DNS resolution
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3676>

2023-01-06 15:07:42 -0500  Olivier Crête <olivier.crete@collabora.com>

	* gst-libs/gst/webrtc/nice/meson.build:
	* gst-libs/gst/webrtc/nice/nice.c:
	  webrtc: Change requirement to libnice 0.1.20
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3676>

2023-01-04 21:37:55 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/meson.build:
	  docs: explicitly declare gir build dependencies
	  As the path to the gir file is passed to hotdoc.generate_doc() and
	  not the build target itself, meson doesn't know about the dependency.
	  In turn, as the CI doesn't build everything before building the
	  documentation target, some gir files might not exist, for instance
	  in the case of gst-rtsp-server, causing the output documentation to
	  be empty.
	  The error occurred silently because hotdoc accepts wildcards for
	  *-sources arguments, thus it won't warn about a missing gir file as
	  it is legitimate for glob matching to resolve to nothing.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3686>

2023-01-04 18:55:08 -0300  Rodrigo Bernardes <rodrigo.bernardes@kantaribopemedia.com>

	* sys/dvb/parsechannels.c:
	  dvbbasebin: don't rely on g_key_file_get_(integer|uint64) return
	  instead check if an error was returned, and fail if any
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3688>

2023-01-03 15:01:37 -0500  Olivier Crête <olivier.crete@collabora.com>

	* ext/srt/gstsrtobject.c:
	  srt: Avoid crash on unknown option
	  Use the correct field that is null instead of the struct value which
	  never is.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3672>

2022-12-30 10:30:38 -0500  Xavier Claessens <xavier.claessens@collabora.com>

	* ext/qroverlay/gstbaseqroverlay.c:
	  qroverlay: Add qrcode-case-sensitive property
	  This allows to encode case sensitive strings, like wifi SSID/password.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3662>

2023-01-03 17:28:18 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	  h265decoder: Fix a memory leak because of slice header.
	  The gst_h265_slice_hdr_free() should free the slice header just
	  parsed, not the priv->current_slice. Or, the memory leak will
	  happen because we do not free the slices in priv->nalu list.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3671>

2022-12-30 17:10:12 +0000  مهدي شينون (Mehdi Chinoune) <mehdi.chinoune@hotmail.com>

	* ext/opencv/meson.build:
	  meson: Accept latest version of opencv 4.x
	  We've been bumping along the maximum opencv 4.x version for years,
	  just accept all opencv versions till someone reports breakage.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1680
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3664>

2022-12-26 20:53:53 +0900  Seungha Yang <seungha@centricular.com>

	* sys/va/gstvajpegdec.c:
	  vajpegdec: Set maybe-leaked flag on template caps
	  The fixup function could return new caps object
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3642>

2022-12-22 21:29:39 +0000  Philippe Normand <philn@igalia.com>

	* ext/webrtc/gstwebrtcbin.c:
	* ext/webrtc/gstwebrtcstats.c:
	* tests/check/elements/webrtcbin.c:
	  webrtcbin: Support for setting kind attribute on RTCRtpStreamStats
	  The attribute maps the `kind` property of the associated transceiver.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3630>

2022-12-23 01:00:57 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11memory.cpp:
	* gst-libs/gst/d3d11/gstd3d11memory.h:
	  d3d11memory: Fix typo in vfunc name
	  s/set_actvie/set_active/g
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3627>

2022-12-19 19:53:28 +0900  Seungha Yang <seungha@centricular.com>

	* sys/nvcodec/gstnvenc.c:
	* sys/nvcodec/gstnvenc.h:
	* sys/nvcodec/gstnvencoder.cpp:
	  nvcudaenc: Don't use default CUDA stream
	  Set non-default CUDA stream via NvEncSetIOCudaStreams() if possible,
	  so that NVENC's internal kernel function can run on the given CUDA
	  stream instead of default CUDA stream
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3615>

2022-12-14 10:35:53 +0100  Evgeny Pavlov <lucenticus@gmail.com>

	* sys/amfcodec/gstamfav1enc.cpp:
	* sys/amfcodec/gstamfav1enc.h:
	* sys/amfcodec/include/components/VideoEncoderAV1.h:
	* sys/amfcodec/meson.build:
	* sys/amfcodec/plugin.cpp:
	  amfcodec: add support of AMF AV1 encoder
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3569>

2022-12-22 00:22:46 +0900  Seungha Yang <seungha@centricular.com>

	* sys/nvcodec/gstcudabasetransform.c:
	  cudabasetransform: Update CUDA stream on context update
	  CUDA stream must be associated with updated CUDA context
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3618>

2022-12-21 14:36:31 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvafilter.c:
	  va: Delay the VAProcPipelineCaps query after context created.
	  The VAAPI vaQueryVideoProcPipelineCaps() requires the context as the
	  parameter. So far, we always pass VA_INVALID_ID and it can succeed.
	  But the API does not say that and in theory, a valid context is required.
	  Now the new platform really needs a valid context and so we have to
	  delay that query until the context is created.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3613>

2022-12-21 00:20:17 +0900  Seungha Yang <seungha@centricular.com>

	* sys/nvcodec/gstnvdecoder.c:
	  nvdecoder: Use own CUDA stream in GL output path
	  Use the same CUDA stream passed to CuvidMapVideoFrame()
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3611>

2022-12-13 08:58:43 -0500  Xavier Claessens <xavier.claessens@collabora.com>

	* meson.build:
	  Fix API visibility macros
	  This copies the logic from GLib discussed there:
	  https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2936
	  Beside being simpler, it also fix all public symbols being annotated
	  with dllexport when doing a static build, as discovered there:
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3540#note_1678335
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3567>

2022-12-19 18:41:46 +0900  Seungha Yang <seungha@centricular.com>

	* sys/nvcodec/gstnvdec.c:
	* sys/nvcodec/gstnvdecoder.c:
	  nvdec: Don't use default CUDA stream
	  NVDEC launches CUDA kernel function (ConvertNV12BLtoNV12 or so)
	  when CuvidMapVideoFrame() is called. Which seems to be
	  NVDEC's internal post-processing kernel function, maybe
	  to convert tiled YUV to linear YUV format or something similar.
	  A problem if we don't pass CUDA stream to the CuvidMapVideoFrame()
	  call is that the NVDEC's internel kernel function will use default CUDA stream.
	  Then lots of the other CUDA API calls will be blocked/serialized.
	  To avoid the unnecessary blocking, we should pass our own
	  CUDA stream object to the CuvidMapVideoFrame() call
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3605>

2022-12-16 15:03:12 +0100  Edward Hervey <edward@centricular.com>

	* gst/mpegtsdemux/mpegtsbase.c:
	  mpegts: Always clear packetizer on DISCONT push mode
	  If a discontinuity is detected in push mode, we need to clear the cached section
	  observations since they might have potentially changed.
	  This was only done properly when operating with TIME segments (dvb, udp,
	  adaptive demuxers, ...) but not with BYTE segments (such as with custom app/fd
	  sources).
	  We still don't want to flush out the PCR observations, since this might be
	  needed for seeking in push-based BYTE sources.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1650
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3584>

2022-12-17 20:04:01 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11videosink: Fixing focus lost on desktop layout change
	  Watch all message on the window thread, instead of internal window only.
	  Otherwise, some global window messages, such as desktop layout change,
	  wouldn't be handled by our window.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3593>

2022-12-17 01:01:00 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* sys/applemedia/avfvideosrc.m:
	  avfvideosrc: Report latency when doing screen capture
	  There is no `device` when doing screen capture, but there is always an
	  `input`, so use that to decide when we can reply to a latency query.
	  Without this, the latency query just fails.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3589>

2022-12-16 18:15:04 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	  vaav1dec: Remove double caps unref.
	  There was a duplicated caps unref raising a warning.
	  Also it reorgs the sorrounding code for simplicity.
	  Fixes: #1196
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3587>

2022-12-16 02:52:08 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	* sys/d3d11/gstd3d11window.cpp:
	* sys/d3d11/gstd3d11window.h:
	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11videosink: Move potentially time-consuming operations to ::prepare()
	  Move following tasks to ::prepare() from ::show_frame()
	  * CPU -> GPU upload
	  * GstD3D11Window object setup, including input caps change handling
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3574>

2022-12-16 21:42:50 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11videosink: Call ShowWindow() from window thread
	  ... when rendering on external HWND. ShowWindow() will cause
	  synchronous message passing to window thread and then can be blocked.
	  At the same time, window thread can wait for GStreamer thread.
	  Instead of the synchronous call, queue the task to window message
	  and performs from the window thread.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3583>

2022-12-15 01:15:10 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	* sys/d3d11/gstd3d11window.cpp:
	* sys/d3d11/gstd3d11window.h:
	* sys/d3d11/gstd3d11window_dummy.cpp:
	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11videosink: Fix deadlock when parent window is busy
	  Deadlock sequence:
	  * From a streaming thread, d3d11videosink sends synchronous message
	  to the parent window, so that internal (child) window can be
	  constructed on the parent window's thread
	  * App thread (parent window thread) is waiting for pipeline's
	  state change (to GST_STATE_NULL) but streaming thread is
	  blocked and waiting for app thread
	  To avoid the deadlock, GstD3D11WindowWin32 should send message
	  to the parent window asynchronously.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3570>

2022-12-13 12:23:56 +0100  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/gstwpevideosrc.cpp:
	  base:navigation: Cleanup navigation key modifiers enum
	  We were exposing the 'ALT' modifier as if we were guaranteeing its
	  accuracy but truth is we were only exposing configuration dependent
	  values.
	  Make the API simpler for now, the same way as Gtk3 was exposing it, and
	  when we have time to guarantee more values by making them take backends
	  configuration into account, we will expose those values in a accurate
	  way.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1402
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3565>

2022-10-18 12:17:04 +1100  Matthew Waters <matthew@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/webrtc/gstwebrtcbin.c:
	* ext/webrtc/gstwebrtcbin.h:
	* ext/webrtc/utils.c:
	* ext/webrtc/utils.h:
	* tests/check/elements/webrtcbin.c:
	  webrtc: implement support for msid values
	  Local msid values are taken from sink pad property, or fallback to the
	  previously used cname.
	  The remote msid values are exposed on the relevant src pads.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3106>

2022-12-13 04:31:24 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecparsers/gsth264parser.h:
	  h264parser: Update doc for GST_H264_FRMAE_PACKING_TOP_BOTTOM
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1318>

2021-11-07 11:18:15 +1100  Brad Hards <bradh@frogmouth.net>

	* gst-libs/gst/codecparsers/gsth264parser.h:
	* sys/msdk/gstmsdkh264enc.c:
	  h264parser: typo fix in enum value
	  Old value is marked deprecated, new enum with same entry is added. Should be binary compatible.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1318>

2022-10-21 22:46:16 -0500  A. Wilcox <AWilcox@Wilcox-Tech.com>

	* gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
	* tests/check/libs/mpegts.c:
	  mpegts: Handle when iconv doesn't support ISO 6937
	  Systems like musl libc don't support ISO 6937 in iconv.  This ensures
	  that the MPEG-TS plugin can cope with that.  There is existing support
	  in the plugin for other methods, so it seems to have been the original
	  intent anyway.
	  Fixes: #1314
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3245>

2022-12-11 10:12:25 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* gst-libs/gst/va/gstvaallocator.c:
	  vaallocator: Fix gi annotations.
	  Remove spurious types and skip functions that returns VASurfaceID
	  which isn't exposed to introspection.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3557>

2022-11-22 12:32:52 +0100  Stéphane Cerveau <scerveau@igalia.com>

	* ext/zxing/gstzxing.cpp:
	* ext/zxing/meson.build:
	  zxing: update to 1.4.0 tag
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3450>

2022-12-06 11:30:47 +0100  Edward Hervey <edward@centricular.com>

	* gst/mpegtsdemux/mpegtspacketizer.c:
	  mpegts: Check continuity counter on section streams
	  This wasn't really done, and is needed in order to detect potential section
	  changes for sections that have got identical information (such as when switching
	  between streams that have the same PAT/PMT pid and subtable information).
	  Other checks exist in tsbase to detect if the "new" PAT/PMT really is an update or not.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3530>

2022-12-08 06:05:25 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/cuda/gstcudanvrtc.c:
	  cuda: Fix runtime compiler library loading on Windows
	  The cuda is a part of GPU driver but runtime compiler is a part of
	  cuda toolkit, which means the version number can be different.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3545>

2022-12-08 05:58:48 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/cuda/gstcuda-private.h:
	* gst-libs/gst/cuda/gstcudautils.c:
	* gst-libs/gst/cuda/gstcudautils.h:
	* sys/nvcodec/gstcudamemorycopy.c:
	  cuda: Hide memory copy util function
	  The method was intended to be used by only cudaupload/download elements
	  and not ready to be a part of public API
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3545>

2022-12-08 04:32:47 +0900  Seungha Yang <seungha@centricular.com>

	* sys/winks/gstksvideosrc.c:
	  ksvideosrc: Warn for deprecated plugin use
	  This plugin should not be used any more
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3544>

2022-12-08 04:25:55 +0900  Seungha Yang <seungha@centricular.com>

	* sys/winscreencap/gstdx9screencapsrc.c:
	* sys/winscreencap/gstgdiscreencapsrc.c:
	  winscreencap: Warn for deprecated plugin use
	  This plugin should not be used any more
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3544>

2022-11-27 00:26:22 +0900  Seungha Yang <seungha@centricular.com>

	* gst/proxy/gstproxysink.c:
	  proxysink: Post EOS message on EOS event
	  proxysink is actual sink (GST_ELEMENT_FLAG_SINK flag has configured)
	  so it should post EOS message.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3472>

2022-12-07 12:28:55 -0300  Thibault Saunier <tsaunier@igalia.com>

	* gst/videoparsers/gsth264parse.c:
	  h264parse: Avoid setting wrong colorimetry info if the stream doesn't contain it
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3543>

2022-12-01 19:35:07 +0200  Marek Olejnik <molejnik@fluendo.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	  h265decoder: Do not abort when failed to prepare ref pic set
	  Currently the element calls abort when failed to prepare reference
	  picture set. This can happent when the input stream is somehow
	  corrupted, like a rtsp strem with lost packets. Now it will only
	  return with GST_FLOW_ERROR instead of terminating whole process.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3505>

2022-12-07 10:21:52 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/dvbsubenc/gstdvbsubenc.c:
	  dvbsubenc: Forward GAP events as-is if we wouldn't produce an end packet and are not in the middle of an existing subtitle
	  An end packet is only produced once for the last subtitle, so multiple
	  GAP events between subtitles would result only in a single end packet
	  and nothing else otherwise. This would potentially starve downstream
	  then, so instead forward the GAP events in that case.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3534>

2022-12-05 19:30:43 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* sys/directshow/dshowvideosink.cpp:
	  directshow: Fix build error with glib 2.75 and newer
	  Starting with glib 2.75, `NULL` is `nullptr`, which cannot be
	  implicitly coerced to `0`, unlike `NULL`. So explicitly pass `0`.
	  ```
	  [3206/4524] Compiling C++ object subprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj
	  FAILED: subprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj
	  "cl" "-Isubprojects\gst-plugins-bad\sys\directshow\gstdirectshow.dll.p" "-Isubprojects\gst-plugins-bad\sys\directshow" "-I..\subprojects\gst-plugins-bad\sys\directshow" "-Isubprojects\gst-plugins-bad" "-I..\subprojects\gst-plugins-bad" "-Isubprojects\gst-plugins-base\gst-libs" "-I..\subprojects\gst-plugins-base\gst-libs" "-Isubprojects\gstreamer\libs" "-I..\subprojects\gstreamer\libs" "-Isubprojects\gstreamer" "-I..\subprojects\gstreamer" "-Isubprojects\orc" "-I..\subprojects\orc" "-I..\subprojects\gst-plugins-bad\sys\directshow\strmbase\baseclasses" "-Isubprojects\gst-plugins-base\gst-libs\gst\video" "-Isubprojects\gstreamer\gst" "-Isubprojects\gst-plugins-base\gst-libs\gst\audio" "-Isubprojects\gst-plugins-base\gst-libs\gst\tag" "-IC:/gst-install/include/glib-2.0" "-IC:/gst-install/lib/glib-2.0/include" "-IC:/gst-install/include" "/MD" "/nologo" "/showIncludes" "/utf-8" "/W2" "/EHsc" "/O2" "/Zi" "/wd4018" "/wd4146" "/wd4244" "/wd4305" "/utf-8" "/we4002" "/we4003" "/we4013" "/we4020" "/we4027" "/we4029" "/we4033" "/we4045" "/we4047" "/we4053" "/we4062" "/we4098" "/we4101" "/we4189" "/utf-8" "-D_MBCS" "/wd4189" "/wd4456" "/wd4701" "/wd4703" "/wd4706" "/wd4996" "-DHAVE_CONFIG_H" "/Fdsubprojects\gst-plugins-bad\sys\directshow\gstdirectshow.dll.p\dshowvideosink.cpp.pdb" /Fosubprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj "/c" ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp
	  ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(62): warning C5051: attribute 'noinline' requires at least '/std:c++20'; ignored
	  ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(123): error C2664: 'LRESULT SendMessageA(HWND,UINT,WPARAM,LPARAM)': cannot convert argument 3 from 'nullptr' to 'WPARAM'
	  ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(123): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
	  C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(3690): note: see declaration of 'SendMessageA'
	  ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(635): error C2664: 'BOOL SystemParametersInfoA(UINT,UINT,PVOID,UINT)': cannot convert argument 2 from 'nullptr' to 'UINT'
	  ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(635): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
	  C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(13153): note: see declaration of 'SystemParametersInfoA'
	  ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(1593): error C2664: 'LRESULT SendMessageA(HWND,UINT,WPARAM,LPARAM)': cannot convert argument 3 from 'nullptr' to 'WPARAM'
	  ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(1593): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
	  C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(3690): note: see declaration of 'SendMessageA'
	  ```
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3528>

2022-12-05 02:29:08 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development

=== release 1.21.3 ===

2022-12-05 01:28:21 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-bad.doap:
	* meson.build:
	  Release 1.21.3

2022-12-04 12:25:41 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* docs/random/ChangeLog-0.8:
	  Remove ChangeLog files from git repository
	  This information is tracked fully in the git repository, so
	  no point having the ChangeLog duplicate it, and it interferes
	  with grepping the repository.
	  We are going to create the ChangeLogs on the fly when generating
	  tarballs going forward (with a limited history), since it's still
	  valuable for tarball consumers to be able to easily see a list of
	  recent changes.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-project/-/issues/73
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3521>

2022-11-07 00:10:39 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	* scripts/gen-changelog.py:
	  meson: Generate ChangeLog files for release tarballs on dist
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3521>

2022-12-01 03:52:53 +0900  Seungha Yang <seungha@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* sys/d3d11/plugin.cpp:
	  d3d11av1dec: Promote rank to primary + 1
	  ... so that this element can have higher rank than the other software
	  AV1 decoders
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3495>

2022-12-02 07:03:30 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvajpegdec.c:
	  vajpegdec: Reenable element negotiation.
	  negotiation vmethod were overwritten by vabasedec, leading to errors.
	  This was a regression of commit b6538e0560.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3509>

2022-12-01 13:28:16 +0100  Johan Sternerup <johast@axis.com>

	* gst-libs/gst/webrtc/nice/nicestream.c:
	  webrtc: Fix possible use-after-free of GstWebRTCICETransport
	  Because of the asynchronous resolving of mDNS ICE candidates it is
	  possible that GstWebRTCICE outlives webrtcbin. This in turn prolongs
	  the lifetime of the GstWebRTCNiceStream objects via refs in
	  nice_stream_map. Thus the GstWebRTCICETransport objects held in
	  GstWebRTCNiceStream may be invalid at the time they are accessed by
	  the _on_candidate_gathering_done() callback since GstWebRTCNiceStream
	  doesn't take a reference to them. Doing so would create a circular
	  reference, so instead this commit introduces weak references to the
	  transport objects and then we can check if the objects are valid before
	  accessing them.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3502>

2022-11-28 20:42:29 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	* sys/va/gstvabasedec.c:
	* sys/va/gstvabasedec.h:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvajpegdec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	* sys/va/gstvavp9dec.c:
	  va: Handle input caps change.
	  Update output caps if it's notified by baseclass
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3328
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-27 13:00:20 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	  vaav1dec: Use gst_va_base_dec_set_output_state().
	  And even that vaav1dec doesn't use vabasedec negotiate vmethod, it should align
	  with the new scheme of using base's width & height for surface size and
	  output_info structure for downstream display size negotiation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-26 11:45:52 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavp9dec.c:
	  vavp9dec: Use gst_va_base_dec_set_output_state().
	  As this element reopen the internal decoder differently, it only uses the helper
	  function to negotiate.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-28 19:31:57 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvampeg2dec.c:
	  vampeg2dec: Streams are progressive by default.
	  By initializating progressive, then interlaced streams are detected correctly.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-26 09:11:39 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvabasedec.c:
	* sys/va/gstvabasedec.h:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	  va: Add and use common decode negotiate vmethod.
	  This vmethod can be used by decoders with the same VA decoder reopen logic:
	  same profile, chroma, width and height.
	  Also a new public method called gst_va_base_dec_set_output_state() with the
	  common GStreamer code for setting the output state, which is always called by
	  the negotiate vmethod.
	  In order to do this refactoring, new variables in vabasedec have to be populated
	  by the decoders:
	  * width and height define the resolution set in VA decoder. In the case of H264
	  would be de coded_width and codec_height, or max_width and max_height in AV1.
	  * output_info is the downstream video info used for negotiation in
	  gst_va_base_dec_set_output_state().
	  * input_state, from codec parent class shall be also held by vabasedec
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-24 13:52:59 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	  vaav1dec: Use gst_va_base_dec_prepare_output_frame().
	  And simplify a bit the code flow.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-24 13:15:04 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvabasedec.c:
	* sys/va/gstvabasedec.h:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvajpegdec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	* sys/va/gstvavp9dec.c:
	  va: Add and use gst_va_base_dec_prepare_output_frame().
	  This helper will do downstream negotiation and later will
	  allocate the output frame.
	  H265 and AV1 decoders don't use this approach since their output
	  frame allocation is different.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-23 18:29:58 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvavp8dec.c:
	  va: Remove last_ret error handling in decoders.
	  It was used in the early development of the base classes. Now it
	  shouldn't be needed.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-11-23 18:14:30 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	* sys/va/gstvabasedec.c:
	* sys/va/gstvabasedec.h:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvajpegdec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	* sys/va/gstvavp9dec.c:
	  va: Add and use gst_va_base_dec_process_output().
	  This function will copy the frame, if it's needed, and will apply buffer flags.
	  The function is used by all the decoders.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3480>

2022-12-01 22:50:30 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvaav1dec.c:
	* sys/va/gstvabaseenc.c:
	  va: Fix the caps memory leak by gst_va_pool_new_with_config().
	  The gst_va_pool_new_with_config() will ref the caps, and so we need
	  to unref after that.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3503>

2022-11-30 13:33:49 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	* sys/va/gstvadevice.c:
	* sys/va/gstvadevice.h:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah264enc.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvah265enc.c:
	* sys/va/gstvajpegdec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	* sys/va/gstvavp9dec.c:
	  va: Add render node name in non-first devices.
	  There could be multi-GPU setups where the non-first has more
	  entrypoints than the first one, and the elements names are not
	  homogeneous, leading to pipeline building error.
	  This patch add the render node in the elements names when they belong
	  to the non-first device.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3491>

2022-11-26 21:02:00 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	  vafilter: Increase the caps for HDR.
	  As they might be other medatadata types.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3473>

2022-11-26 20:48:45 +0100  Victor Manuel Jaquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	  vafilter: Increase the number of 3DLUT caps to 16.
	  To fix the warning on Alderlake
	  vafilter gstvafilter.c:534:gst_va_filter_ensure_filters:<vafilter0>
	  vaQueryVideoProcFiltersCaps: list argument exceeds maximum number
	  Increase the number of caps to 16 as vadumpcaps does.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3473>

2022-11-15 06:58:14 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* tests/examples/va/vaenc-dynamic-reconfigure.c:
	  example: vaenc-dynamic-reconfigure: Support H265.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-05-04 10:42:59 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265enc.c:
	  va: Add H265 SCC profile support.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-05-02 23:14:32 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265enc.c:
	  va: Add extended formats support such as 10/12 bits, 4:2:2 and 4:4:4.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-04-25 15:49:31 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvaencoder.c:
	* sys/va/gstvaencoder.h:
	* sys/va/gstvah265enc.c:
	  va: enable multi tile support for H265 encoder.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-06-02 21:18:16 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265enc.c:
	  va: enable vah265lpenc for low power mode H265 encoder.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-04-18 22:36:09 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265enc.c:
	  va: Add the low-delay-b frame support for H265.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-04-06 17:06:20 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvaencoder.c:
	* sys/va/gstvaencoder.h:
	  va: Add prediction direction attribute support for H265 encoder.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-03-25 21:55:28 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/plugin.c:
	  va: Register and enable and the vah265enc plugin.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-03-25 21:54:30 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265enc.c:
	* sys/va/gstvah265enc.h:
	* sys/va/meson.build:
	  va: Implement the vah265enc plugin for va HEVC encoding.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2036>

2022-11-29 02:22:50 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfvideosrc.cpp:
	  mfvideosrc: Fix buffer leak
	  The allocated buffer should be released
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3479>

2022-11-29 02:10:42 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfsourcereader.cpp:
	* sys/mediafoundation/gstwin32devicewatcher.cpp:
	  mediafoundation: Chain up from GObject::constructed
	  ... so that GstTracer can trace it
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3479>

2022-11-29 02:06:11 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	* sys/d3d11/gstd3d11window_corewindow.cpp:
	* sys/d3d11/gstd3d11window_dummy.cpp:
	* sys/d3d11/gstd3d11window_swapchainpanel.cpp:
	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11: Use correct ref/unref methods
	  Those objects are GstObject subclasses
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3479>

2022-11-25 20:19:22 +0900  Seungha Yang <seungha@centricular.com>

	* sys/win32ipc/gstwin32ipcvideosrc.cpp:
	  win32ipcvideosrc: Fix property name and enum value mismatch
	  Make them consistent
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3465>

2022-11-25 20:14:43 +0900  Seungha Yang <seungha@centricular.com>

	* sys/win32ipc/gstwin32ipcvideosrc.cpp:
	  win32ipcvideosrc: Protect pipe from flush thread
	  The pipe object must be protected against GstBaseSrc::unlock()
	  thread.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3465>

2022-11-25 18:38:27 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecparsers/gsth264parser.c:
	  h264parser: Fix a typo in pred_weight_table parsing.
	  When setting default values, the reference list number of l1 is wrong.
	  Fix: https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/336
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3464>

2022-11-22 17:01:37 +0800  Ma, Mingyang <mingyang.ma@intel.com>

	* sys/msdk/gstmsdkdec.c:
	  msdkdec: Update decoding pts
	  Update frame pts before calling gst_video_decoder_finish_frame, or frames may be lost when transcoding in specific stream
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3449>

2022-11-19 02:56:27 +0900  Seungha Yang <seungha@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* meson_options.txt:
	* sys/meson.build:
	* sys/win32ipc/gstwin32ipcutils.cpp:
	* sys/win32ipc/gstwin32ipcutils.h:
	* sys/win32ipc/gstwin32ipcvideosink.cpp:
	* sys/win32ipc/gstwin32ipcvideosink.h:
	* sys/win32ipc/gstwin32ipcvideosrc.cpp:
	* sys/win32ipc/gstwin32ipcvideosrc.h:
	* sys/win32ipc/meson.build:
	* sys/win32ipc/plugin.cpp:
	* sys/win32ipc/protocol/win32ipcmmf.cpp:
	* sys/win32ipc/protocol/win32ipcmmf.h:
	* sys/win32ipc/protocol/win32ipcpipeclient.cpp:
	* sys/win32ipc/protocol/win32ipcpipeclient.h:
	* sys/win32ipc/protocol/win32ipcpipeserver.cpp:
	* sys/win32ipc/protocol/win32ipcpipeserver.h:
	* sys/win32ipc/protocol/win32ipcprotocol.cpp:
	* sys/win32ipc/protocol/win32ipcprotocol.h:
	* sys/win32ipc/protocol/win32ipcutils.cpp:
	* sys/win32ipc/protocol/win32ipcutils.h:
	  win32ipc: Add WIN32 shared memory videosrc/sink elements
	  Windows supports various IPC methods but that's completely
	  different form that of *nix from implementation point of view.
	  So, instead of adding shared memory functionality to existing
	  shm plugin, new WIN32 shared memory source/sink elements
	  are implemented in this commit.
	  Each videosink (server) and videosrc (client) pair will communicate
	  using WIN32 named pipe and thus user should configure unique/proper
	  pipe name to them (e.g., \\.\pipe\MyPipeName).
	  Once connection is established, videosink will create named shared memory
	  object per frame and client will be able to consume the object
	  (i.e., memory mapped file handle) without additional copy operation.
	  Note that implementations under "protocol" directory are almost
	  pure C/C++ with WIN32 APIs except for a few defines and debug functions.
	  So, applications can take only the protocol part so that the application
	  can send/receive shared-memory object from/to the other end
	  even if it's not an actual GStreamer element.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3441>

2022-11-23 14:35:07 +0100  Jan Lorenz <jan.lorenz@pascom.net>

	* sys/mediafoundation/gstmfcapturedshow.cpp:
	  mfvideosrc: check HRESULT of CreateClassEnumerator correctly
	  Fixes a crash during direct show device enumeration
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1599
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3460>

2022-11-22 15:27:38 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/kms/gstkmssink.h:
	  kmssink: Fix compilation without kernel headers
	  There was a drm/drm_mode.h included added recently, drm/ is usually
	  referencing the linux kernel header, but we only requires the libdrm
	  headers to be installed. On top of this, including drm_mode.h is never
	  needed as its already included by drm.h.
	  Fixes #1596
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3452>

2022-11-10 08:50:35 -0500  Daniel Morin <daniel.morin@collabora.com>

