Hi,

On Mon, May 2, 2011 at 9:36 PM, Kostya <[email protected]> wrote:
> On Mon, May 02, 2011 at 10:12:34PM -0400, Ronald S. Bultje wrote:
>> ---
>>  libavcodec/vc1.h    |    2 +
>>  libavcodec/vc1dec.c |  279 
>> +++++++++++++++++++++++++++++++++++++++++++--------
>>  libavcodec/vc1dsp.c |   54 ++++++++++
>>  libavcodec/vc1dsp.h |    6 +-
>>  4 files changed, 296 insertions(+), 45 deletions(-)
>>
> [...]
>> @@ -672,6 +724,8 @@ av_cold void ff_vc1dsp_init(VC1DSPContext* dsp) {
>>      dsp->vc1_inv_trans_4x4_dc = vc1_inv_trans_4x4_dc_c;
>>      dsp->vc1_h_overlap = vc1_h_overlap_c;
>>      dsp->vc1_v_overlap = vc1_v_overlap_c;
>> +    dsp->vc1_h_s_overlap = vc1_h_s_overlap_c;
>> +    dsp->vc1_v_s_overlap = vc1_v_s_overlap_c;
>>      dsp->vc1_v_loop_filter4 = vc1_v_loop_filter4_c;
>>      dsp->vc1_h_loop_filter4 = vc1_h_loop_filter4_c;
>>      dsp->vc1_v_loop_filter8 = vc1_v_loop_filter8_c;
>> diff --git a/libavcodec/vc1dsp.h b/libavcodec/vc1dsp.h
>> index 7b1ae10..e1b6ba0 100644
>> --- a/libavcodec/vc1dsp.h
>> +++ b/libavcodec/vc1dsp.h
>> @@ -40,8 +40,10 @@ typedef struct VC1DSPContext {
>>      void (*vc1_inv_trans_8x4_dc)(uint8_t *dest, int line_size, DCTELEM 
>> *block);
>>      void (*vc1_inv_trans_4x8_dc)(uint8_t *dest, int line_size, DCTELEM 
>> *block);
>>      void (*vc1_inv_trans_4x4_dc)(uint8_t *dest, int line_size, DCTELEM 
>> *block);
>> -    void (*vc1_v_overlap)(uint8_t* src, int stride);
>> -    void (*vc1_h_overlap)(uint8_t* src, int stride);
>> +    void (*vc1_v_overlap)(uint8_t *src, int stride);
>> +    void (*vc1_h_overlap)(uint8_t *src, int stride);
>> +    void (*vc1_v_s_overlap)(DCTELEM *top,  DCTELEM *bottom);
>> +    void (*vc1_h_s_overlap)(DCTELEM *left, DCTELEM *right);
>>      void (*vc1_v_loop_filter4)(uint8_t *src, int stride, int pq);
>>      void (*vc1_h_loop_filter4)(uint8_t *src, int stride, int pq);
>>      void (*vc1_v_loop_filter8)(uint8_t *src, int stride, int pq);
>> --
>
> Almost ok but I have one question - is vc1_[hv]_overlap used anymore (I don't
> think they should)? If not then just replace old functions with new ones but
> leave old names.

For archive purposes: no, I only changed adv. profile I frames.
main/simple profile I frames and P frames still use the old overlap
filter. Once they're all bitexact/changed/fixed, I'll remove the 8bit
versions in a separate patch.

Ronald
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to