}
for(int t = 0; t < nb_images_per_sequence; t++) {
- memcpy(output + (n * nb_images_per_sequence + t) * 3 * width * height,
- canvases[t]->_data,
- 3 * width * height);
+ unsigned char *src = canvases[t]->_data;
+ unsigned char *dst = output + (n * nb_images_per_sequence + t) * width * height * 3;
+ for(int d = 0; d < 3; d++) {
+ for(int y = 0; y < height; y++) {
+ for(int x = 0; x < width; x++) {
+ dst[x + width * (y + height * d)] = src[d + 4 * (x + width * y)];
+ }
+ }
+ }
}
- // char buffer[1024];
- // sprintf(buffer, "%s/%03d/dyn_%06d.png", data_dir, n / 1000, n);
- // FILE *file = safe_fopen(buffer, "w");
- // main_canvas.write_png(file);
- // fclose(file);
+ /*
+ {
+ cout << canvases[0]->_actual_width << " "<< canvases[1]->_actual_height << endl;
+ cout << "Writing /tmp/sanity.png" << endl;
+ CanvasCairo main_canvas(scaling, nb_images_per_sequence, 1, canvases);
+ FILE *file = safe_fopen("/tmp/sanity.png", "w");
+ main_canvas.write_png(file);
+ fclose(file);
+ }
+ */
}
for(int t = 0; t < 2 * nb_saved_frames; t++) {