Wow.  that's a pretty good eye to notice the 1 x 2 pixel difference.
There was some change in size computation if I recall; at the same time,
the images probably need fixing.


On Thu, Feb 4, 2016 at 3:45 PM, <[email protected]> wrote:

> Le jeudi 4 février 2016 18:18:43 UTC+1, [email protected] a écrit :
> > Well, it's not exactly _shifted_ after all: there's a one-pixel white
> line at the top, bottom and right edges (but not left edge) of the boot
> animation.
>
>
> Interesting. Here's what's recorded in FxOS 2.0 logcat:
>
> W/        (  216): could not open framebuffer
> I/qdhwcomposer(  216): Initializing Qualcomm Hardware Composer
> I/qdhwcomposer(  216): MDP version: 304
> D/qdhwcomposer(  216): hwc_getDisplayAttributes disp = 0, width = 540
> D/qdhwcomposer(  216): hwc_getDisplayAttributes disp = 0, height = 960
> E/qdhwcomposer(  216): Unknown display attribute 0
> D/qdhwcomposer(  216): hwc_blank: Unblanking display: 0
> D/qdhwcomposer(  216): hwc_blank: Done unblanking display: 0
> I/        (  216): Starting bootanimation with (1) format framebuffer
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 110368 us
> D/qdutils (  216): DEBUG_CALC_FPS: 0
> D/qdutils (  216): period: 10
> D/qdutils (  216): ignorethresh_us: 500000
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 158081 us
> I/Gonk    (  216): Setting nice for pid 216 to 0
> I/Gonk    (  216): Changed nice for pid 216 from 0 to 0.
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 143857 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 90607 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 141558 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 107941 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 273308 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 115590 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 127486 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 137059 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 176611 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 136998 us
> W/Gonk    (  216): Frame delay is 83333 us but decoding took 105180 us
> D/qdhwcomposer(  216): hwc_blank: Unblanking display: 0
> D/qdhwcomposer(  216): hwc_blank: Done unblanking display: 0
>
>
> Now, here's what's recorded in FxOS 2.5 logcat with the exact same Gonk:
>
> I/qdhwcomposer(  220): Initializing Qualcomm Hardware Composer
> I/qdhwcomposer(  220): MDP version: 304
> D/qdhwcomposer(  220): hwc_getDisplayAttributes disp = 0, width = 540
> D/qdhwcomposer(  220): hwc_getDisplayAttributes disp = 0, height = 960
> E/qdhwcomposer(  220): Unknown display attribute 0
> D/qdhwcomposer(  220): hwc_blank: Unblanking display: 0
> D/qdhwcomposer(  220): hwc_blank: Done unblanking display: 0
> I/Gonk    (  220): Decoded unleashed/fxOSBoot00.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 112458 us
> D/qdutils (  220): DEBUG_CALC_FPS: 0
> D/qdutils (  220): period: 10
> D/qdutils (  220): ignorethresh_us: 500000
> I/Gonk    (  220): Decoded unleashed/fxOSBoot01.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 125465 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot02.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 105745 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot03.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 130990 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot04.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 138420 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot05.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 133839 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot06.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 121567 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot07.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 87179 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot08.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 122862 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot09.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 155400 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot10.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 112228 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot11.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 304945 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot12.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 171207 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot13.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 210028 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot14.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 185625 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot15.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 595403 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot16.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 155951 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot17.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 121244 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot18.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 158229 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot19.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 144779 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot20.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 171852 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot21.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> W/Gonk    (  220): Frame delay is 83333 us but decoding took 139463 us
> I/Gonk    (  220): Decoded unleashed/fxOSBoot22.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot23.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot24.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot25.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot26.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot27.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot28.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot29.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot30.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot31.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot32.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot33.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot34.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot35.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot36.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot37.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot38.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot39.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot40.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot41.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot42.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot43.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/Gonk    (  220): Decoded unleashed/fxOSBoot44.png: 539 x 958 frame with
> bgcolor? yes (0xff, 0xff, 0xff; gray:0)
> I/HWComposer(  220): Creating new instance
> I/qdhwcomposer(  220): hwc_registerProcs
> I/qdhwcomposer(  220): Initializing UEVENT Thread
> I/qdhwcomposer(  220): Initializing VSYNC Thread
> I/qdhwcomposer(  220): vsync_loop: Reading event 0 for dpy 0 from
> /sys/class/graphics/fb0/vsync_event
> I/qdhwcomposer(  220): vsync_loop: Reading event 1 for dpy 0 from
> /sys/class/graphics/fb0/show_blank_event
> I/qdhwcomposer(  220): vsync_loop: Reading event 0 for dpy 1 from
> /sys/class/graphics/fb-1/vsync_event
> I/qdhwcomposer(  220): vsync_loop: Reading event 1 for dpy 1 from
> /sys/class/graphics/fb-1/show_blank_event
>
>
> Did you noticed the mismatch between the display resolution (540x960
> pixels) and the size of the decoded frames (539x958)? One pixel in width
> and two pixels in height. Hence the one-pixel white border that I'm seeing
> in the top, bottom and right edges with FxOS >= 2.2.
>
> So I've uncompressed /system/media/bootanimation.zip. Guess what? Yep, all
> the fxOSBoot00-44.png pictures therein are 539x958 pixels in size!
>
> So, while it first appeared to me that FxOS >= 2.2 brought a visual
> regression, it was in fact probably fixing some bogus size computation in
> FxOS <= 2.1 ;-)
>
> Now, is it expected that the boot animation frames aren't even-sized or
> not power-of-two-sized? IIRC with OpenGL, it's highly recommended to have
> glTexture2D objects with power-of-two size for optimum performances. OK,
> our Firephones aren't OpenGL (probably GLES), but aren't the same size
> hints also applicable?
>
>      Émeric
>
>
> PS: I've just checked Flame-KK boot animation frames: 480x854 pixels,
> matching Flame device's FWVGA screen size.
> _______________________________________________
> dev-fxos mailing list
> [email protected]
> https://lists.mozilla.org/listinfo/dev-fxos
>
_______________________________________________
dev-fxos mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-fxos

Reply via email to