#include <stdarg.h>
#include <errno.h>
#include <libusb.h>
+#include <math.h>
#include "am7xxx.h"
#include "serialize.h"
};
/* The header size on the wire is known to be always 24 bytes, regardless of
- * the memory configuration enforced by different architechtures or compilers
+ * the memory configuration enforced by different architectures or compilers
* for struct am7xxx_header
*/
#define AM7XXX_HEADER_WIRE_SIZE 24
(void)ctx;
(void)h;
}
+
static void trace_dump_buffer(am7xxx_context *ctx, const char *message,
uint8_t *buffer, unsigned int len)
{
*/
debug(dev->ctx, "CASE 1, original image wider, adjust the scaled height\n");
*scaled_width = device_info.native_width;
- *scaled_height = (unsigned int)(original_height / width_ratio);
+ *scaled_height = (unsigned int)lroundf(original_height / width_ratio);
} else if (width_ratio < height_ratio) {
/*
* The input is proportionally "taller" than the device viewport
* so its width needs to be adjusted
*/
debug(dev->ctx, "CASE 2 original image taller, adjust the scaled width\n");
- *scaled_width = (unsigned int)(original_width / height_ratio);
+ *scaled_width = (unsigned int)lroundf(original_width / height_ratio);
*scaled_height = device_info.native_height;
} else {
debug(dev->ctx, "CASE 3, just rescale, same aspect ratio already\n");