[mpp_enc]: fix vpu_api setformat error and add more log to vpu_api path

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@1142 6e48237b-75ef-9749-8fc9-41990f28c85a
This commit is contained in:
ChenHengming
2016-08-02 02:10:48 +00:00
parent 2d3182898d
commit 41ae5d0e22
3 changed files with 15 additions and 7 deletions

View File

@@ -172,7 +172,6 @@ void *mpp_enc_control_thread(void *data)
} }
// clear remain task in output port // clear remain task in output port
release_task_in_port(mpp->mInputPort);
release_task_in_port(input); release_task_in_port(input);
release_task_in_port(mpp->mOutputPort); release_task_in_port(mpp->mOutputPort);

View File

@@ -794,9 +794,8 @@ RK_S32 VpuApiLegacy::perform(RK_U32 cmd, RK_U32 *data)
RK_S32 VpuApiLegacy::control(VpuCodecContext *ctx, VPU_API_CMD cmd, void *param) RK_S32 VpuApiLegacy::control(VpuCodecContext *ctx, VPU_API_CMD cmd, void *param)
{ {
vpu_api_dbg_func("enter\n"); vpu_api_dbg_func("enter cmd %x param %p\n", cmd, param);
(void)ctx;
if (mpi == NULL && !init_ok) { if (mpi == NULL && !init_ok) {
return 0; return 0;
} }
@@ -811,6 +810,7 @@ RK_S32 VpuApiLegacy::control(VpuCodecContext *ctx, VPU_API_CMD cmd, void *param)
} break; } break;
case VPU_API_ENC_SETFORMAT : { case VPU_API_ENC_SETFORMAT : {
enc_in_fmt = *((EncInputPictureType *)param); enc_in_fmt = *((EncInputPictureType *)param);
return 0;
} break; } break;
case VPU_API_SET_VPUMEM_CONTEXT: { case VPU_API_SET_VPUMEM_CONTEXT: {
mpicmd = MPP_DEC_SET_EXT_BUF_GROUP; mpicmd = MPP_DEC_SET_EXT_BUF_GROUP;
@@ -889,7 +889,7 @@ RK_S32 VpuApiLegacy::control(VpuCodecContext *ctx, VPU_API_CMD cmd, void *param)
RK_S32 ret = -1; RK_S32 ret = -1;
if (mpicmd < MPI_CMD_BUTT) if (mpicmd < MPI_CMD_BUTT)
ret = mpi->control(mpp_ctx, (MpiCmd)mpicmd, (MppParam)param); ret = mpi->control(mpp_ctx, mpicmd, (MppParam)param);
vpu_api_dbg_func("leave\n"); vpu_api_dbg_func("leave\n");
return ret; return ret;

View File

@@ -217,7 +217,6 @@ int mpi_enc_test(MpiEncTestCmd *cmd)
if (read_size != frame_size || feof(fp_input)) { if (read_size != frame_size || feof(fp_input)) {
mpp_log("found last frame\n"); mpp_log("found last frame\n");
frm_eos = 1; frm_eos = 1;
break;
} }
mpp_frame_set_buffer(frame, frm_buf_in); mpp_frame_set_buffer(frame, frm_buf_in);
@@ -275,12 +274,19 @@ int mpi_enc_test(MpiEncTestCmd *cmd)
void *ptr = mpp_packet_get_pos(packet); void *ptr = mpp_packet_get_pos(packet);
size_t len = mpp_packet_get_length(packet); size_t len = mpp_packet_get_length(packet);
pkt_eos = mpp_packet_get_eos(packet);
if (fp_output) if (fp_output)
fwrite(ptr, 1, len, fp_output); fwrite(ptr, 1, len, fp_output);
mpp_packet_deinit(&packet); mpp_packet_deinit(&packet);
mpp_log_f("encoded frame %d size %d\n", frame_count, len); mpp_log_f("encoded frame %d size %d\n", frame_count, len);
stream_size += len; stream_size += len;
if (pkt_eos) {
mpp_log("found last packet\n");
mpp_assert(frm_eos);
}
} }
frame_count++; frame_count++;
@@ -292,6 +298,9 @@ int mpi_enc_test(MpiEncTestCmd *cmd)
break; break;
} }
} while (1); } while (1);
if (frm_eos && pkt_eos)
break;
} }
ret = mpi->reset(ctx); ret = mpi->reset(ctx);
@@ -471,8 +480,8 @@ static void mpi_enc_test_show_options(MpiEncTestCmd* cmd)
mpp_log("cmd parse result:\n"); mpp_log("cmd parse result:\n");
mpp_log("input file name: %s\n", cmd->file_input); mpp_log("input file name: %s\n", cmd->file_input);
mpp_log("output file name: %s\n", cmd->file_output); mpp_log("output file name: %s\n", cmd->file_output);
mpp_log("width : %4d\n", cmd->width); mpp_log("width : %d\n", cmd->width);
mpp_log("height : %4d\n", cmd->height); mpp_log("height : %d\n", cmd->height);
mpp_log("type : %d\n", cmd->type); mpp_log("type : %d\n", cmd->type);
mpp_log("debug flag : %x\n", cmd->debug); mpp_log("debug flag : %x\n", cmd->debug);
} }