gstreamer/gst-libs/gst/video
Vivia Nikolaidou ad55d3ce9d video-converter: Make fast path work for equivalent transfer functions
For example, BT709, BT601, and BT2020_10 all have theoretically
different transfer functions, but the same function in practice. In
these cases, we should use the fast path for negotiating. Also,
BT2020_12 is essentially the same as the other three, just with one more
decimal point, so it gives the same result for fewer bits. This is now
also aliased to the former three.

Also make videoconvert do passthrough if the caps have equivalent
transfer functions but are otherwise matching.

As of the previous commit, we write the correct transfer function for
BT601, instead of the (functionally identical but different ISO code)
transfer function for BT709. Files created using GStreamer prior to that
commit write the wrong transfer function for BT601 and are, strictly
speaking, 2:4:5:4 instead. However, this commit takes care of
negotiation, so that conversions from/to the same transfer function are
done using the fast path.

Fixes #783

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/724>
2020-07-03 11:57:49 +03:00
..
colorbalance.c docs: Convert gtkdoc comments to markdown 2017-03-10 18:19:17 -03:00
colorbalance.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
colorbalancechannel.c docs: Convert gtkdoc comments to markdown 2017-03-10 18:19:17 -03:00
colorbalancechannel.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally 2019-06-04 20:31:09 -04:00
convertframe.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstvideoaffinetransformationmeta.c Added GI annotation for gstvideoaffinetransformationmeta apply_matrix 2019-06-02 16:42:57 +00:00
gstvideoaffinetransformationmeta.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
gstvideoaggregator.c videoaggregator: Don't crash when setting pad properties after the aggregator was finalized 2020-05-01 10:41:29 +00:00
gstvideoaggregator.h *aggregator: Add g_autoptr support for *ConvertPad 2020-03-16 15:47:58 +00:00
gstvideodecoder.c audio: video: Optimize by using cached quark for meta tag 2020-06-27 09:23:10 +00:00
gstvideodecoder.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally 2019-06-04 20:31:09 -04:00
gstvideoencoder.c audio: video: Optimize by using cached quark for meta tag 2020-06-27 09:23:10 +00:00
gstvideoencoder.h videoencoder: Add min-force-key-unit-interval property 2020-06-05 10:04:43 +00:00
gstvideofilter.c audio: video: Optimize by using cached quark for meta tag 2020-06-27 09:23:10 +00:00
gstvideofilter.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally 2019-06-04 20:31:09 -04:00
gstvideometa.c videometa: constify tc argument to add_video_time_meta() 2020-03-16 15:34:02 +11:00
gstvideometa.h videometa: Fix documentation 2020-06-24 02:02:50 +09:00
gstvideopool.c gst-libs: include config.h in all source files 2018-08-13 09:23:34 +01:00
gstvideopool.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally 2019-06-04 20:31:09 -04:00
gstvideosink.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstvideosink.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally 2019-06-04 20:31:09 -04:00
gstvideotimecode.c videotimecode: Mark latest_daily_jame as allow-none in init\() 2019-05-03 09:58:04 -04:00
gstvideotimecode.h videotimecode: Add API for initializing from a GDateTime with validation 2018-12-19 23:11:24 +00:00
gstvideoutils.c video:doc: Remove duplicated gstvideoutils SECTION 2019-05-13 17:00:00 -04:00
gstvideoutils.h video: Use GQueue instead of plain GList in a few places 2020-06-03 16:21:41 +03:00
gstvideoutilsprivate.c videoutilsprivate: fill more video fields. 2017-08-14 12:42:57 +02:00
gstvideoutilsprivate.h videoencoder/decoder: Move conversion utility functions to a common header and use consistently in encoder/decoder 2016-07-04 10:47:36 +02:00
meson.build meson: Add variables for gir files 2019-05-13 10:19:22 -04:00
navigation.c navigation: Use G_DEFINE_INTERFACE 2020-03-20 06:20:43 +00:00
navigation.h navigation: Add since tag for new API 2020-04-30 18:00:19 +01:00
TODO Pass the code through codespell 2019-08-30 13:05:36 +00:00
video-anc.c video-anc: init type before g_once_init_enter 2020-05-27 17:13:35 +02:00
video-anc.h video-anc: Fix gst_buffer_get_video_(afd|bar)_meta 2020-07-01 19:40:28 +00:00
video-blend.c video-blend: Add support for blending on top of 16 bit per component formats 2020-03-27 08:55:45 +00:00
video-blend.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
video-chroma.c video: Silence "restrict" issues with ORC code 2018-05-05 10:27:12 +02:00
video-chroma.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
video-color.c video-converter: Make fast path work for equivalent transfer functions 2020-07-03 11:57:49 +03:00
video-color.h video-converter: Make fast path work for equivalent transfer functions 2020-07-03 11:57:49 +03:00
video-converter.c video-converter: Make fast path work for equivalent transfer functions 2020-07-03 11:57:49 +03:00
video-converter.h doc: Fix some gtk-doc comments 2019-05-13 11:34:08 -04:00
video-dither.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
video-dither.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
video-event.c gst-libs: include config.h in all source files 2018-08-13 09:23:34 +01:00
video-event.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
video-format.c video: Fix NV12_64Z32 number of component 2020-06-04 20:12:59 +00:00
video-format.h video: sort formats by quality 2020-06-09 08:09:58 +00:00
video-frame.c video: allow frame copy where destination dimensions are smaller than source 2020-06-15 09:46:17 -04:00
video-frame.h video: fix GST_VIDEO_FRAME_IS_BOTTOM_FIELD() 2020-02-26 16:15:59 +00:00
video-hdr.c video-hdr: fix memset warning 2020-06-05 08:13:32 +00:00
video-hdr.h video-hdr: Fix a docs typo (x -> y) 2020-04-02 23:30:57 +11:00
video-info.c video-color: Add bt601 transfer function 2020-07-03 11:57:49 +03:00
video-info.h video-info: fix typo in doc 2020-02-26 16:15:59 +00:00
video-multiview.c libs: Documentation cleanup 2018-04-02 08:53:28 +02:00
video-multiview.h doc: Add a minimal GstVideoMultiviewFlagsSet documentation 2020-06-03 22:44:24 -04:00
video-orc-dist.c video: update orc generated files for new functions 2019-03-21 23:05:09 +00:00
video-orc-dist.h video: update orc generated files for new functions 2019-03-21 23:05:09 +00:00
video-orc.orc video: add VUYA pixel format 2019-03-21 23:05:09 +00:00
video-overlay-composition.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
video-overlay-composition.h video-blend: Add support for blending on top of 16 bit per component formats 2020-03-27 08:55:45 +00:00
video-prelude.h video: Add deprecation macros 2018-12-19 23:11:24 +00:00
video-resampler.c docs: Convert gtkdoc comments to markdown 2017-03-10 18:19:17 -03:00
video-resampler.h libs: Fix various Since markers 2019-04-23 12:28:26 +00:00
video-scaler.c video-scaler: Ensure we're always using the correct lines for scaling in gst_video_scaler_2d() 2019-11-03 10:46:43 +01:00
video-scaler.h doc: Fix some gtk-doc comments 2019-05-13 11:34:08 -04:00
video-tile.c gst-libs: include config.h in all source files 2018-08-13 09:23:34 +01:00
video-tile.h video: Set correct value in g-i annotations for tile related mask constants 2018-03-21 10:28:05 +02:00
video.c video: Fix/Add section documentation 2018-04-02 16:49:19 +02:00
video.h video: Add new APIs for HDR information representation 2019-04-30 15:45:44 +00:00
videodirection.c docs: Convert gtkdoc comments to markdown 2017-03-10 18:19:17 -03:00
videodirection.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
videoorientation.c video: fix some GIR annotations 2018-04-23 19:33:19 +02:00
videoorientation.h video: GST_EXPORT -> GST_VIDEO_API 2018-03-13 12:16:42 +00:00
videooverlay.c videooverlay: chevrons don't need to be escaped in code examples 2020-06-11 22:19:09 +00:00
videooverlay.h libs: Documentation cleanup 2018-04-02 08:53:28 +02:00