Remove duplicate function in translation_service.c

This commit is contained in:
twinaphex 2019-08-21 21:51:25 +02:00
parent 95637cfe08
commit a3e2531bd6
4 changed files with 15 additions and 84 deletions

View File

@ -339,9 +339,9 @@ VIDEO IMAGE
#endif
#ifdef HAVE_RBMP
#include "../libretro-common/formats/bmp/rbmp.c"
#include "../libretro-common/formats/bmp/rbmp_encode.c"
#endif
#include "../libretro-common/formats/bmp/rbmp_encode.c"
#include "../libretro-common/formats/wav/rwav.c"
/*============================================================

View File

@ -26,15 +26,15 @@
#include <streams/file_stream.h>
#include <formats/rbmp.h>
static bool write_header_bmp(RFILE *file, unsigned width, unsigned height, bool is32bpp)
void form_bmp_header(uint8_t *header,
unsigned width, unsigned height,
bool is32bpp)
{
uint8_t header[54];
unsigned line_size = (width * (is32bpp?4:3) + 3) & ~3;
unsigned size = line_size * height + 54;
unsigned size_array = line_size * height;
/* Generic BMP stuff. */
/* signature */
header[0] = 'B';
header[1] = 'M';
@ -72,7 +72,7 @@ static bool write_header_bmp(RFILE *file, unsigned width, unsigned height, bool
header[26] = 1;
header[27] = 0;
/* Bits per pixel */
header[28] = is32bpp?32:24;
header[28] = 24;
header[29] = 0;
/* Compression method */
header[30] = 0;
@ -104,7 +104,12 @@ static bool write_header_bmp(RFILE *file, unsigned width, unsigned height, bool
header[51] = 0;
header[52] = 0;
header[53] = 0;
}
static bool write_header_bmp(RFILE *file, unsigned width, unsigned height, bool is32bpp)
{
uint8_t header[54];
form_bmp_header(header, width, height, is32bpp);
return filestream_write(file, header, sizeof(header)) == sizeof(header);
}

View File

@ -51,6 +51,10 @@ bool rbmp_save_image(
int rbmp_process_image(rbmp_t *rbmp, void **buf,
size_t size, unsigned *width, unsigned *height);
void form_bmp_header(uint8_t *header,
unsigned width, unsigned height,
bool is32bpp);
bool rbmp_set_buf_ptr(rbmp_t *rbmp, void *data);
void rbmp_free(rbmp_t *rbmp);

View File

@ -3,6 +3,7 @@
#include <stdbool.h>
#include <libretro.h>
#include <encodings/base64.h>
#include <formats/rbmp.h>
#include "translation_service.h"
#include "gfx/video_frame.h"
#include "gfx/scaler/scaler.h"
@ -26,85 +27,6 @@ typedef struct nbio_buf
char *path;
} nbio_buf_t;
static void form_bmp_header(uint8_t *header,
unsigned width, unsigned height,
bool is32bpp)
{
unsigned line_size = (width * (is32bpp?4:3) + 3) & ~3;
unsigned size = line_size * height + 54;
unsigned size_array = line_size * height;
/* Generic BMP stuff. */
/* signature */
header[0] = 'B';
header[1] = 'M';
/* file size */
header[2] = (uint8_t)(size >> 0);
header[3] = (uint8_t)(size >> 8);
header[4] = (uint8_t)(size >> 16);
header[5] = (uint8_t)(size >> 24);
/* reserved */
header[6] = 0;
header[7] = 0;
header[8] = 0;
header[9] = 0;
/* offset */
header[10] = 54;
header[11] = 0;
header[12] = 0;
header[13] = 0;
/* DIB size */
header[14] = 40;
header[15] = 0;
header[16] = 0;
header[17] = 0;
/* Width */
header[18] = (uint8_t)(width >> 0);
header[19] = (uint8_t)(width >> 8);
header[20] = (uint8_t)(width >> 16);
header[21] = (uint8_t)(width >> 24);
/* Height */
header[22] = (uint8_t)(height >> 0);
header[23] = (uint8_t)(height >> 8);
header[24] = (uint8_t)(height >> 16);
header[25] = (uint8_t)(height >> 24);
/* Color planes */
header[26] = 1;
header[27] = 0;
/* Bits per pixel */
header[28] = 24;
header[29] = 0;
/* Compression method */
header[30] = 0;
header[31] = 0;
header[32] = 0;
header[33] = 0;
/* Image data size */
header[34] = (uint8_t)(size_array >> 0);
header[35] = (uint8_t)(size_array >> 8);
header[36] = (uint8_t)(size_array >> 16);
header[37] = (uint8_t)(size_array >> 24);
/* Horizontal resolution */
header[38] = 19;
header[39] = 11;
header[40] = 0;
header[41] = 0;
/* Vertical resolution */
header[42] = 19;
header[43] = 11;
header[44] = 0;
header[45] = 0;
/* Palette size */
header[46] = 0;
header[47] = 0;
header[48] = 0;
header[49] = 0;
/* Important color count */
header[50] = 0;
header[51] = 0;
header[52] = 0;
header[53] = 0;
}
static void handle_translation_cb(
retro_task_t *task, void *task_data, void *user_data, const char *error)