diff options
author | Rudolf Polzer <divverent@xonotic.org> | 2012-09-14 17:51:26 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2012-09-18 21:08:20 +0200 |
commit | f5b8b6ac126d8cef3860db16d3db8e72507a2258 (patch) | |
tree | c86a6160cee076d3a632e4d3247e566e8c064390 /libvo/csputils.c | |
parent | 5617bf483e563aae22100c0ca1d8182f71d4f82d (diff) | |
download | mpv-f5b8b6ac126d8cef3860db16d3db8e72507a2258.tar.bz2 mpv-f5b8b6ac126d8cef3860db16d3db8e72507a2258.tar.xz |
encode: video encoding now supported using mencoder-like options
Diffstat (limited to 'libvo/csputils.c')
-rw-r--r-- | libvo/csputils.c | 47 |
1 files changed, 27 insertions, 20 deletions
diff --git a/libvo/csputils.c b/libvo/csputils.c index d6aed97864..ed74b9ae74 100644 --- a/libvo/csputils.c +++ b/libvo/csputils.c @@ -50,32 +50,39 @@ char * const mp_csp_equalizer_names[MP_CSP_EQ_COUNT] = { enum mp_csp avcol_spc_to_mp_csp(enum AVColorSpace colorspace) { switch (colorspace) { - case AVCOL_SPC_BT709: - return MP_CSP_BT_709; - break; - case AVCOL_SPC_BT470BG: - case AVCOL_SPC_SMPTE170M: - return MP_CSP_BT_601; - break; - case AVCOL_SPC_SMPTE240M: - return MP_CSP_SMPTE_240M; - break; - default: - return MP_CSP_AUTO; + case AVCOL_SPC_BT709: return MP_CSP_BT_709; + case AVCOL_SPC_BT470BG: return MP_CSP_BT_601; + case AVCOL_SPC_SMPTE170M: return MP_CSP_BT_601; + case AVCOL_SPC_SMPTE240M: return MP_CSP_SMPTE_240M; + default: return MP_CSP_AUTO; } } enum mp_csp_levels avcol_range_to_mp_csp_levels(enum AVColorRange range) { switch (range) { - case AVCOL_RANGE_MPEG: - return MP_CSP_LEVELS_TV; - break; - case AVCOL_RANGE_JPEG: - return MP_CSP_LEVELS_PC; - break; - default: - return MP_CSP_LEVELS_AUTO; + case AVCOL_RANGE_MPEG: return MP_CSP_LEVELS_TV; + case AVCOL_RANGE_JPEG: return MP_CSP_LEVELS_PC; + default: return MP_CSP_LEVELS_AUTO; + } +} + +enum AVColorSpace mp_csp_to_avcol_spc(enum mp_csp colorspace) +{ + switch (colorspace) { + case MP_CSP_BT_709: return AVCOL_SPC_BT709; + case MP_CSP_BT_601: return AVCOL_SPC_BT470BG; + case MP_CSP_SMPTE_240M: return AVCOL_SPC_SMPTE240M; + default: return AVCOL_SPC_RGB; + } +} + +enum AVColorRange mp_csp_levels_to_avcol_range(enum mp_csp_levels range) +{ + switch (range) { + case MP_CSP_LEVELS_TV: return AVCOL_RANGE_MPEG; + case MP_CSP_LEVELS_PC: return AVCOL_RANGE_JPEG; + default: return AVCOL_RANGE_UNSPECIFIED; } } |