kmsview: scale down to fit into screen
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 9 Mar 2016 09:55:52 +0000 (11:55 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 11 Mar 2016 10:45:10 +0000 (12:45 +0200)
tests/kmsview.cpp

index 07dc09aea33a54d7e36a859fd0062ae70618393c..aae7e80d9b9dfa2828206a3472943c364608e90b 100644 (file)
@@ -14,8 +14,11 @@ static void read_frame(ifstream& is, DumbFramebuffer* fb, Crtc* crtc, Plane* pla
        for (unsigned i = 0; i < fb->num_planes(); ++i)
                is.read((char*)fb->map(i), fb->size(i));
 
        for (unsigned i = 0; i < fb->num_planes(); ++i)
                is.read((char*)fb->map(i), fb->size(i));
 
+       unsigned w = min(crtc->width(), fb->width());
+       unsigned h = min(crtc->height(), fb->height());
+
        int r = crtc->set_plane(plane, *fb,
        int r = crtc->set_plane(plane, *fb,
-                               0, 0, fb->width(), fb->height(),
+                               0, 0, w, h,
                                0, 0, fb->width(), fb->height());
 
        ASSERT(r == 0);
                                0, 0, fb->width(), fb->height());
 
        ASSERT(r == 0);
@@ -71,7 +74,7 @@ int main(int argc, char** argv)
                frame_size += fb->size(i);
 
        unsigned num_frames = fsize / frame_size;
                frame_size += fb->size(i);
 
        unsigned num_frames = fsize / frame_size;
-       printf("file size %u, frames %u\n", fsize, num_frames);
+       printf("file size %u, frame size %u, frames %u\n", fsize, frame_size, num_frames);
 
        for (unsigned i = 0; i < num_frames; ++i) {
                printf("frame %d\n", i);
 
        for (unsigned i = 0; i < num_frames; ++i) {
                printf("frame %d\n", i);