summaryrefslogtreecommitdiff
path: root/libavfilter/vf_waveform.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2016-11-29 11:34:48 +0100
committerPaul B Mahol <onemda@gmail.com>2016-11-29 11:34:48 +0100
commit57ef0f0f17a0b71946bfc9304902d4a531ea42a8 (patch)
tree80303fbc3540d50bd0c0a33f81f789817d042cca /libavfilter/vf_waveform.c
parentd56c7830c0973dc4d2a068ba0b427ea6c1760dc2 (diff)
avfilter/vf_waveform: add gray10 and gray12 support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Diffstat (limited to 'libavfilter/vf_waveform.c')
-rw-r--r--libavfilter/vf_waveform.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/libavfilter/vf_waveform.c b/libavfilter/vf_waveform.c
index 64abbf2226..70995eebee 100644
--- a/libavfilter/vf_waveform.c
+++ b/libavfilter/vf_waveform.c
@@ -166,7 +166,7 @@ static const enum AVPixelFormat in_lowpass_pix_fmts[] = {
AV_PIX_FMT_YUVJ440P, AV_PIX_FMT_YUVJ411P, AV_PIX_FMT_YUVJ420P,
AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ444P,
AV_PIX_FMT_YUVA444P, AV_PIX_FMT_YUVA422P, AV_PIX_FMT_YUVA420P,
- AV_PIX_FMT_GRAY8,
+ AV_PIX_FMT_GRAY8, AV_PIX_FMT_GRAY10, AV_PIX_FMT_GRAY12,
AV_PIX_FMT_YUV444P9, AV_PIX_FMT_YUV422P9, AV_PIX_FMT_YUV420P9,
AV_PIX_FMT_YUVA444P9, AV_PIX_FMT_YUVA422P9, AV_PIX_FMT_YUVA420P9,
AV_PIX_FMT_YUV444P10, AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV420P10,
@@ -252,6 +252,16 @@ static const enum AVPixelFormat out_gray8_lowpass_pix_fmts[] = {
AV_PIX_FMT_NONE
};
+static const enum AVPixelFormat out_gray10_lowpass_pix_fmts[] = {
+ AV_PIX_FMT_GRAY10,
+ AV_PIX_FMT_NONE
+};
+
+static const enum AVPixelFormat out_gray12_lowpass_pix_fmts[] = {
+ AV_PIX_FMT_GRAY12,
+ AV_PIX_FMT_NONE
+};
+
static const enum AVPixelFormat flat_pix_fmts[] = {
AV_PIX_FMT_YUV444P, AV_PIX_FMT_YUVJ444P,
AV_PIX_FMT_YUV444P9, AV_PIX_FMT_YUV444P10,
@@ -301,6 +311,10 @@ static int query_formats(AVFilterContext *ctx)
if (s->filter == LOWPASS && ncomp == 1 && depth == 8)
out_pix_fmts = out_gray8_lowpass_pix_fmts;
+ else if (s->filter == LOWPASS && ncomp == 1 && depth == 10)
+ out_pix_fmts = out_gray10_lowpass_pix_fmts;
+ else if (s->filter == LOWPASS && ncomp == 1 && depth == 12)
+ out_pix_fmts = out_gray12_lowpass_pix_fmts;
else if (rgb && depth == 8 && ncomp > 2)
out_pix_fmts = out_rgb8_lowpass_pix_fmts;
else if (rgb && depth == 9 && ncomp > 2)