[vlc-devel] [PATCH] Support VOUT_ASPECT_CHANGE in deinterlace filter
Laurent Aimar
fenrir at via.ecp.fr
Fri Sep 12 20:32:08 CEST 2008
On Fri, Sep 12, 2008, Marian ??urkovi?? wrote:
> Hi all,
>
> attached please find a patch with introduces support for on-the-fly AR
> cahnges via VOUT_ASPECT_CHANGE into deinterlace filter. As fenrir pointed
> out, we need to handle AR change differently in case deinterlace reduced
> the number of lines. With this patch, on-the-fly AR change works fine
> together with deinterlace, other filters need similar changes.
> Please review and commit before 0.9.2 release if you find it OK.
>
> + if( p_vout->i_changes & VOUT_ASPECT_CHANGE )
> + {
> + p_vout->i_changes &= ~VOUT_ASPECT_CHANGE;
> + p_sys->p_vout->i_changes |= VOUT_ASPECT_CHANGE;
> +
> + p_vout->fmt_out.i_aspect = p_sys->p_vout->fmt_in.i_aspect =
> + p_vout->fmt_in.i_aspect;
> + p_vout->fmt_out.i_sar_num = p_sys->p_vout->fmt_in.i_sar_num =
> + p_vout->fmt_in.i_sar_num;
> + p_vout->fmt_out.i_sar_den = p_sys->p_vout->fmt_in.i_sar_den =
> + p_vout->fmt_in.i_sar_den;
> +
> + if( p_vout->p_sys->b_half_height )
> + {
> + p_vout->fmt_out.i_sar_den *= 2;
> + p_sys->p_vout->fmt_in.i_sar_den *= 2;
> + }
> + }
> +
You could probably simply use
p_sys->p_vout = vout_Request( p_vout, p_sys->p_vout, &p_vout->fmt_in )
and everything should be done for you.
Could you test and report back ?
--
fenrir
More information about the vlc-devel
mailing list