mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-06 01:26:49 +08:00
[jpegd]: Support RGB 16-bit format output
Change-Id: I0f3152bd068498fccc95569bb2950ab78ade2bf6 Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
This commit is contained in:
@@ -58,6 +58,9 @@ void dump_mpp_frame_to_file(MppFrame frame, FILE *fp)
|
||||
|
||||
base = (RK_U8 *)mpp_buffer_get_ptr(buffer);
|
||||
|
||||
if (MPP_FRAME_FMT_IS_RGB(fmt) && MPP_FRAME_FMT_IS_LE(fmt)) {
|
||||
fmt &= MPP_FRAME_FMT_MASK;
|
||||
}
|
||||
switch (fmt) {
|
||||
case MPP_FMT_YUV422SP : {
|
||||
/* YUV422SP -> YUV422P for better display */
|
||||
@@ -152,11 +155,26 @@ void dump_mpp_frame_to_file(MppFrame frame, FILE *fp)
|
||||
RK_U8 *base_y = base;
|
||||
RK_U8 *tmp = mpp_malloc(RK_U8, width * height * 4);
|
||||
|
||||
for (i = 0; i < height; i++, base_y += h_stride * 4)
|
||||
for (i = 0; i < height; i++, base_y += h_stride)
|
||||
fwrite(base_y, 1, width * 4, fp);
|
||||
|
||||
mpp_free(tmp);
|
||||
} break;
|
||||
case MPP_FMT_RGB565:
|
||||
case MPP_FMT_BGR565:
|
||||
case MPP_FMT_RGB555:
|
||||
case MPP_FMT_BGR555:
|
||||
case MPP_FMT_RGB444:
|
||||
case MPP_FMT_BGR444: {
|
||||
RK_U32 i;
|
||||
RK_U8 *base_y = base;
|
||||
RK_U8 *tmp = mpp_malloc(RK_U8, width * height * 2);
|
||||
|
||||
for (i = 0; i < height; i++, base_y += h_stride)
|
||||
fwrite(base_y, 1, width * 2, fp);
|
||||
|
||||
mpp_free(tmp);
|
||||
} break;
|
||||
default : {
|
||||
mpp_err("not supported format %d\n", fmt);
|
||||
} break;
|
||||
|
Reference in New Issue
Block a user