summaryrefslogtreecommitdiffstats
path: root/video/sws_utils.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-12-21 17:57:10 +0100
committerwm4 <wm4@nowhere>2013-12-21 20:50:10 +0100
commit38342436cd59afd345595d83b329bc7c6ac3616f (patch)
tree0fb021d8fb4b964b9d13a3bdc5e874da36bbc1d8 /video/sws_utils.c
parent212ce468d83732c5e6e35e307e60f3919c48de34 (diff)
downloadmpv-38342436cd59afd345595d83b329bc7c6ac3616f.tar.bz2
mpv-38342436cd59afd345595d83b329bc7c6ac3616f.tar.xz
sws_utils: mp_msg conversions
This requires the caller to provide a mp_log in order to see error messages. Unfortunately we don't do this in most places, but I guess we have to live with it.
Diffstat (limited to 'video/sws_utils.c')
-rw-r--r--video/sws_utils.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/video/sws_utils.c b/video/sws_utils.c
index 28ec10cb6a..4a6814b986 100644
--- a/video/sws_utils.c
+++ b/video/sws_utils.c
@@ -167,6 +167,7 @@ struct mp_sws_context *mp_sws_alloc(void *talloc_ctx)
{
struct mp_sws_context *ctx = talloc_ptrtype(talloc_ctx, ctx);
*ctx = (struct mp_sws_context) {
+ .log = mp_null_log,
.flags = SWS_BILINEAR,
.contrast = 1 << 16, // 1.0 in 16.16 fixed point
.saturation = 1 << 16,
@@ -207,12 +208,18 @@ int mp_sws_reinit(struct mp_sws_context *ctx)
return -1;
enum AVPixelFormat s_fmt = imgfmt2pixfmt(src->imgfmt);
- if (s_fmt == AV_PIX_FMT_NONE || sws_isSupportedInput(s_fmt) < 1)
+ if (s_fmt == AV_PIX_FMT_NONE || sws_isSupportedInput(s_fmt) < 1) {
+ MP_ERR(ctx, "Input image format %s not supported by libswscale.\n",
+ mp_imgfmt_to_name(src->imgfmt));
return -1;
+ }
enum AVPixelFormat d_fmt = imgfmt2pixfmt(dst->imgfmt);
- if (d_fmt == AV_PIX_FMT_NONE || sws_isSupportedOutput(d_fmt) < 1)
+ if (d_fmt == AV_PIX_FMT_NONE || sws_isSupportedOutput(d_fmt) < 1) {
+ MP_ERR(ctx, "Output image format %s not supported by libswscale.\n",
+ mp_imgfmt_to_name(dst->imgfmt));
return -1;
+ }
int s_csp = mp_csp_to_sws_colorspace(src->colorspace);
int s_range = src->colorlevels == MP_CSP_LEVELS_PC;
@@ -283,7 +290,7 @@ int mp_sws_scale(struct mp_sws_context *ctx, struct mp_image *dst,
int r = mp_sws_reinit(ctx);
if (r < 0) {
- mp_msg(MSGT_VFILTER, MSGL_ERR, "libswscale initialization failed.\n");
+ MP_ERR(ctx, "libswscale initialization failed.\n");
return r;
}