[vlc-devel] [PATCH 2/3] [RFC] pictures: the planes visible lines/pitch should include the offsets

Steve Lhomme robux4 at gmail.com
Thu Aug 18 16:20:45 CEST 2016


On Thu, Aug 18, 2016 at 4:11 PM, Rémi Denis-Courmont <remi at remlab.net> wrote:
> Nack. This breaks video outputs and I´d argue it does not even make sense.

What video output does it break ? How can offset_test work if you
don't copy all the needed pixels ? Anything that works on planes, not
taking the video_format_t in account, has no idea there's an offset to
apply to those visible pitch/lines.

One reason they may work right now is that they fall in this hack that
doesn't look at the "visible" values:
http://git.videolan.org/?p=vlc.git;a=blob;f=src/misc/picture.c;h=0cdbd0e983388de3d88f1a07021e5afa902558b5;hb=HEAD#l329

This patch won't change that.

> Le torstaina 18. elokuuta 2016, 15.57.02 EEST Steve Lhomme a écrit :
>> The pitch and line values are just used to copy/process the data on the
>> plane. When there's an offset on the source like in offset_test.ogv [1] the
>> visible pitch/lines are missing the amount of the offset. When only the
>> visible part of the plane is used valuable pixels are missing (see
>> plane_CopyPixels() [2]).
>>
>> [1] https://v2v.cc/~j/theora_testsuite/offset_test.ogv
>> [2]
>> http://git.videolan.org/?p=vlc.git;a=blob;f=src/misc/picture.c;h=0cdbd0e983
>> 388de3d88f1a07021e5afa902558b5;hb=HEAD#l322 ---
>>  include/vlc_picture.h | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/vlc_picture.h b/include/vlc_picture.h
>> index b8d4a5a..23eff88 100644
>> --- a/include/vlc_picture.h
>> +++ b/include/vlc_picture.h
>> @@ -46,8 +46,8 @@ typedef struct plane_t
>>      int i_pixel_pitch;
>>
>>      /* Variables used for pictures with margins */
>> -    int i_visible_lines;            /**< How many visible lines are there ?
>> */ -    int i_visible_pitch;            /**< How many visible pixels are
>> there ? */ +    int i_visible_lines;            /**< How many needed
>> (offset+visible) lines are there ? */ +    int i_visible_pitch;
>> /**< How many needed (offset+visible) pixels per line */
>>
>>  } plane_t;
>
>
> --
> Rémi Denis-Courmont
> http://www.remlab.net/
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list