On Sun, Jun 26, 2011 at 03:52:01PM -0700, Ronald S. Bultje wrote:
> This functionality is only implemented for RGB24/32 and causes crashes
> otherwise.
> ---
> libswscale/utils.c | 13 +++++++++++++
> 1 files changed, 13 insertions(+), 0 deletions(-)
>
> diff --git a/libswscale/utils.c b/libswscale/utils.c
> index 6971418..ab28588 100644
> --- a/libswscale/utils.c
> +++ b/libswscale/utils.c
> @@ -845,6 +845,19 @@ int sws_init_context(SwsContext *c, SwsFilter
> *srcFilter, SwsFilter *dstFilter)
> getSubSampleFactors(&c->chrDstHSubSample, &c->chrDstVSubSample,
> dstFormat);
>
> // reuse chroma for 2 pixels RGB/BGR unless user wants full chroma
> interpolation
> + if (flags & SWS_FULL_CHR_H_INT &&
> + dstFormat != PIX_FMT_RGBA &&
> + dstFormat != PIX_FMT_ARGB &&
> + dstFormat != PIX_FMT_BGRA &&
> + dstFormat != PIX_FMT_ABGR &&
> + dstFormat != PIX_FMT_RGB24 &&
> + dstFormat != PIX_FMT_BGR24) {
> + av_log(c, AV_LOG_ERROR,
> + "full chroma interpolation for destination format '%s' not
> yet implemented\n",
> + sws_format_name(dstFormat));
> + flags &= ~SWS_FULL_CHR_H_INT;
> + c->flags = flags;
> + }
> if (isAnyRGB(dstFormat) && !(flags&SWS_FULL_CHR_H_INT))
> c->chrDstHSubSample=1;
>
> // drop some chroma lines if the user wants it
> --
Why not use condition like below? I'd like my RGB565 output with full chroma
too and mentioning all dst formats in wall of conditions is ugly IMO.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel