summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2018-04-19 20:29:17 +0200
committerwm4 <wm4@nowhere>2018-04-20 12:37:34 +0200
commit78227706ad1cfa84ba7283ac732518ba5efc43ea (patch)
tree34927da505defdc2a87da1cd281f9580b1b8f14c
parent20a1f250c676e54c164745b1f5c4fc8feda8f306 (diff)
downloadmpv-78227706ad1cfa84ba7283ac732518ba5efc43ea.tar.bz2
mpv-78227706ad1cfa84ba7283ac732518ba5efc43ea.tar.xz
encode: simplify colorspace setting
This was also refactored at some point, and is now unnecessarily roundabout.
-rw-r--r--common/encode_lavc.c30
-rw-r--r--common/encode_lavc.h5
-rw-r--r--video/out/vo_lavc.c5
3 files changed, 2 insertions, 38 deletions
diff --git a/common/encode_lavc.c b/common/encode_lavc.c
index 950e4559c9..ac6c0e6bf7 100644
--- a/common/encode_lavc.c
+++ b/common/encode_lavc.c
@@ -1196,34 +1196,4 @@ void encode_lavc_fail(struct encode_lavc_context *ctx, const char *format, ...)
encode_lavc_finish(ctx);
}
-bool encode_lavc_set_csp(struct encode_lavc_context *ctx,
- AVCodecContext *codec, enum mp_csp csp)
-{
- CHECK_FAIL(ctx, NULL);
-
- if (ctx->header_written) {
- if (codec->colorspace != mp_csp_to_avcol_spc(csp))
- MP_WARN(ctx, "can not change color space during encoding\n");
- return false;
- }
-
- codec->colorspace = mp_csp_to_avcol_spc(csp);
- return true;
-}
-
-bool encode_lavc_set_csp_levels(struct encode_lavc_context *ctx,
- AVCodecContext *codec, enum mp_csp_levels lev)
-{
- CHECK_FAIL(ctx, NULL);
-
- if (ctx->header_written) {
- if (codec->color_range != mp_csp_levels_to_avcol_range(lev))
- MP_WARN(ctx, "can not change color space during encoding\n");
- return false;
- }
-
- codec->color_range = mp_csp_levels_to_avcol_range(lev);
- return true;
-}
-
// vim: ts=4 sw=4 et
diff --git a/common/encode_lavc.h b/common/encode_lavc.h
index 8955f07ae3..0e72b0d605 100644
--- a/common/encode_lavc.h
+++ b/common/encode_lavc.h
@@ -113,9 +113,4 @@ double encode_lavc_getoffset(struct encode_lavc_context *ctx,
AVCodecContext *codec);
void encode_lavc_fail(struct encode_lavc_context *ctx, const char *format, ...); // report failure of encoding
-bool encode_lavc_set_csp(struct encode_lavc_context *ctx,
- AVCodecContext *codec, enum mp_csp csp);
-bool encode_lavc_set_csp_levels(struct encode_lavc_context *ctx,
- AVCodecContext *codec, enum mp_csp_levels lev);
-
#endif
diff --git a/video/out/vo_lavc.c b/video/out/vo_lavc.c
index e59ff79791..bc8c51d180 100644
--- a/video/out/vo_lavc.c
+++ b/video/out/vo_lavc.c
@@ -148,9 +148,8 @@ static int reconfig(struct vo *vo, struct mp_image_params *params)
vc->codec->width = width;
vc->codec->height = height;
vc->codec->pix_fmt = pix_fmt;
-
- encode_lavc_set_csp(vo->encode_lavc_ctx, vc->codec, params->color.space);
- encode_lavc_set_csp_levels(vo->encode_lavc_ctx, vc->codec, params->color.levels);
+ vc->codec->colorspace = mp_csp_to_avcol_spc(params->color.space);
+ vc->codec->color_range = mp_csp_levels_to_avcol_range(params->color.levels);
if (encode_lavc_open_codec(vo->encode_lavc_ctx, vc->codec) < 0)
goto error;