summaryrefslogtreecommitdiff
path: root/libswscale
diff options
context:
space:
mode:
authorrcombs <rcombs@rcombs.me>2021-12-16 18:03:46 -0600
committerrcombs <rcombs@rcombs.me>2021-12-22 18:38:40 -0600
commit88d804b7ffa20caab2e8e2809da974c41f7fd8fc (patch)
treeb108a9a0e25e89d915f313e609158a7275cc5309 /libswscale
parent310a1c25e8248a1bfa8fcfa06bbeff64a41fbd79 (diff)
swscale: add P210/P410/P216/P416 output
Diffstat (limited to 'libswscale')
-rw-r--r--libswscale/output.c8
-rw-r--r--libswscale/utils.c16
-rw-r--r--libswscale/version.h2
3 files changed, 15 insertions, 11 deletions
diff --git a/libswscale/output.c b/libswscale/output.c
index 58b10f85a5..4b4b186be9 100644
--- a/libswscale/output.c
+++ b/libswscale/output.c
@@ -2563,14 +2563,18 @@ av_cold void ff_sws_init_output_funcs(SwsContext *c,
enum AVPixelFormat dstFormat = c->dstFormat;
const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(dstFormat);
- if (dstFormat == AV_PIX_FMT_P010LE || dstFormat == AV_PIX_FMT_P010BE) {
+ if (dstFormat == AV_PIX_FMT_P010LE || dstFormat == AV_PIX_FMT_P010BE ||
+ dstFormat == AV_PIX_FMT_P210LE || dstFormat == AV_PIX_FMT_P210BE ||
+ dstFormat == AV_PIX_FMT_P410LE || dstFormat == AV_PIX_FMT_P410BE) {
*yuv2plane1 = isBE(dstFormat) ? yuv2p010l1_BE_c : yuv2p010l1_LE_c;
*yuv2planeX = isBE(dstFormat) ? yuv2p010lX_BE_c : yuv2p010lX_LE_c;
*yuv2nv12cX = yuv2p010cX_c;
} else if (is16BPS(dstFormat)) {
*yuv2planeX = isBE(dstFormat) ? yuv2planeX_16BE_c : yuv2planeX_16LE_c;
*yuv2plane1 = isBE(dstFormat) ? yuv2plane1_16BE_c : yuv2plane1_16LE_c;
- if (dstFormat == AV_PIX_FMT_P016LE || dstFormat == AV_PIX_FMT_P016BE) {
+ if (dstFormat == AV_PIX_FMT_P016LE || dstFormat == AV_PIX_FMT_P016BE ||
+ dstFormat == AV_PIX_FMT_P216LE || dstFormat == AV_PIX_FMT_P216BE ||
+ dstFormat == AV_PIX_FMT_P416LE || dstFormat == AV_PIX_FMT_P416BE) {
*yuv2nv12cX = yuv2p016cX_c;
}
} else if (isNBPS(dstFormat)) {
diff --git a/libswscale/utils.c b/libswscale/utils.c
index 7158384f0b..c5ea8853d5 100644
--- a/libswscale/utils.c
+++ b/libswscale/utils.c
@@ -268,14 +268,14 @@ static const FormatEntry format_entries[] = {
[AV_PIX_FMT_Y210LE] = { 1, 0 },
[AV_PIX_FMT_X2RGB10LE] = { 1, 1 },
[AV_PIX_FMT_X2BGR10LE] = { 1, 1 },
- [AV_PIX_FMT_P210BE] = { 1, 0 },
- [AV_PIX_FMT_P210LE] = { 1, 0 },
- [AV_PIX_FMT_P410BE] = { 1, 0 },
- [AV_PIX_FMT_P410LE] = { 1, 0 },
- [AV_PIX_FMT_P216BE] = { 1, 0 },
- [AV_PIX_FMT_P216LE] = { 1, 0 },
- [AV_PIX_FMT_P416BE] = { 1, 0 },
- [AV_PIX_FMT_P416LE] = { 1, 0 },
+ [AV_PIX_FMT_P210BE] = { 1, 1 },
+ [AV_PIX_FMT_P210LE] = { 1, 1 },
+ [AV_PIX_FMT_P410BE] = { 1, 1 },
+ [AV_PIX_FMT_P410LE] = { 1, 1 },
+ [AV_PIX_FMT_P216BE] = { 1, 1 },
+ [AV_PIX_FMT_P216LE] = { 1, 1 },
+ [AV_PIX_FMT_P416BE] = { 1, 1 },
+ [AV_PIX_FMT_P416LE] = { 1, 1 },
};
void ff_shuffle_filter_coefficients(SwsContext *c, int *filterPos, int filterSize, int16_t *filter, int dstW){
diff --git a/libswscale/version.h b/libswscale/version.h
index 15ad54319c..8f7b56df9a 100644
--- a/libswscale/version.h
+++ b/libswscale/version.h
@@ -28,7 +28,7 @@
#define LIBSWSCALE_VERSION_MAJOR 6
#define LIBSWSCALE_VERSION_MINOR 1
-#define LIBSWSCALE_VERSION_MICRO 101
+#define LIBSWSCALE_VERSION_MICRO 102
#define LIBSWSCALE_VERSION_INT AV_VERSION_INT(LIBSWSCALE_VERSION_MAJOR, \
LIBSWSCALE_VERSION_MINOR, \