[FFmpeg-devel] [PATCH 1/2] avfilter/proresenc: switch default prores encoder to prores_ks
Paul B Mahol
onemda at gmail.com
Mon Jun 26 17:09:57 EEST 2017
Rationale:
prores_ks have more features and is faster for qscale > 0
and gives better quality output.
Signed-off-by: Paul B Mahol <onemda at gmail.com>
---
libavcodec/Makefile | 2 +-
libavcodec/proresenc_anatoliy.c | 14 --------------
libavcodec/proresenc_kostya.c | 17 +++++++++++++++++
3 files changed, 18 insertions(+), 15 deletions(-)
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index f0cba88..16dce40 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -477,7 +477,7 @@ OBJS-$(CONFIG_PPM_DECODER) += pnmdec.o pnm.o
OBJS-$(CONFIG_PPM_ENCODER) += pnmenc.o
OBJS-$(CONFIG_PRORES_DECODER) += proresdec2.o proresdsp.o proresdata.o
OBJS-$(CONFIG_PRORES_LGPL_DECODER) += proresdec_lgpl.o proresdsp.o proresdata.o
-OBJS-$(CONFIG_PRORES_ENCODER) += proresenc_anatoliy.o
+OBJS-$(CONFIG_PRORES_ENCODER) += proresenc_kostya.o proresdata.o
OBJS-$(CONFIG_PRORES_AW_ENCODER) += proresenc_anatoliy.o
OBJS-$(CONFIG_PRORES_KS_ENCODER) += proresenc_kostya.o proresdata.o
OBJS-$(CONFIG_PSD_DECODER) += psd.o
diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c
index 0516066..7ff6ff7 100644
--- a/libavcodec/proresenc_anatoliy.c
+++ b/libavcodec/proresenc_anatoliy.c
@@ -614,17 +614,3 @@ AVCodec ff_prores_aw_encoder = {
.capabilities = AV_CODEC_CAP_FRAME_THREADS | AV_CODEC_CAP_INTRA_ONLY,
.profiles = profiles
};
-
-AVCodec ff_prores_encoder = {
- .name = "prores",
- .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes"),
- .type = AVMEDIA_TYPE_VIDEO,
- .id = AV_CODEC_ID_PRORES,
- .priv_data_size = sizeof(ProresContext),
- .init = prores_encode_init,
- .close = prores_encode_close,
- .encode2 = prores_encode_frame,
- .pix_fmts = (const enum AVPixelFormat[]){AV_PIX_FMT_YUV422P10, AV_PIX_FMT_NONE},
- .capabilities = AV_CODEC_CAP_FRAME_THREADS | AV_CODEC_CAP_INTRA_ONLY,
- .profiles = profiles
-};
diff --git a/libavcodec/proresenc_kostya.c b/libavcodec/proresenc_kostya.c
index 09bb611..21c2673 100644
--- a/libavcodec/proresenc_kostya.c
+++ b/libavcodec/proresenc_kostya.c
@@ -1357,3 +1357,20 @@ AVCodec ff_prores_ks_encoder = {
},
.priv_class = &proresenc_class,
};
+
+AVCodec ff_prores_encoder = {
+ .name = "prores",
+ .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes (iCodec Pro)"),
+ .type = AVMEDIA_TYPE_VIDEO,
+ .id = AV_CODEC_ID_PRORES,
+ .priv_data_size = sizeof(ProresContext),
+ .init = encode_init,
+ .close = encode_close,
+ .encode2 = encode_frame,
+ .capabilities = AV_CODEC_CAP_SLICE_THREADS | AV_CODEC_CAP_FRAME_THREADS | AV_CODEC_CAP_INTRA_ONLY,
+ .pix_fmts = (const enum AVPixelFormat[]) {
+ AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV444P10,
+ AV_PIX_FMT_YUVA444P10, AV_PIX_FMT_NONE
+ },
+ .priv_class = &proresenc_class,
+};
--
2.9.3
More information about the ffmpeg-devel
mailing list