diff --git a/code/application/source/cardv/SrcCode/UIApp/Movie/UIAppMovie_Exe.c b/code/application/source/cardv/SrcCode/UIApp/Movie/UIAppMovie_Exe.c index a34caf245..8a294af4e 100755 --- a/code/application/source/cardv/SrcCode/UIApp/Movie/UIAppMovie_Exe.c +++ b/code/application/source/cardv/SrcCode/UIApp/Movie/UIAppMovie_Exe.c @@ -1378,6 +1378,20 @@ static void MovieExe_RawEncodeFileNamingCB(MOVIE_CFG_REC_ID id, char *pFileName) static void MovieExe_UserEventCb(UINT32 id, MOVIE_USER_CB_EVENT event_id, UINT32 value) { switch ((UINT32)event_id) { + + case MOVIE_USER_CB_EVENT_SET_ENC_RC_INFO: { + HD_H26XENC_RATE_CONTROL2 *ptr = (HD_H26XENC_RATE_CONTROL2 *)value; + if (id == _CFG_REC_ID_1 || id == _CFG_CLONE_ID_1) { + ptr->rc_mode = HD_RC_MODE_VBR; + ptr->vbr.init_i_qp = 26; + ptr->vbr.max_i_qp = 51; + ptr->vbr.min_i_qp = 1; + ptr->vbr.init_p_qp = 26; + ptr->vbr.max_p_qp = 51; + ptr->vbr.min_p_qp = 1; + } + } + break; case MOVIE_USER_CB_EVENT_STAMP_CB: { } break; diff --git a/code/lib/include/ImageApp/ImageApp_MovieMulti.h b/code/lib/include/ImageApp/ImageApp_MovieMulti.h index acdeae1ff..bcd3ea748 100755 --- a/code/lib/include/ImageApp/ImageApp_MovieMulti.h +++ b/code/lib/include/ImageApp/ImageApp_MovieMulti.h @@ -598,6 +598,7 @@ typedef enum { MOVIE_USER_CB_EVENT_JENC_DONE, MOVIE_USER_CB_EVENT_UVAC, MOVIE_USER_CB_EVENT_PREV_CARSH_FILE_COMPLETED, + MOVIE_USER_CB_EVENT_SET_ENC_RC_INFO, // ERROR MOVIE_USER_CB_ERROR_CARD_SLOW = 0x0000E400, diff --git a/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.a b/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.a index 639070553..9091ab6e6 100644 Binary files a/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.a and b/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.a differ diff --git a/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.so b/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.so index 661dbbd46..506961905 100644 Binary files a/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.so and b/code/lib/source/ImageApp/MovieMulti/libimageapp_moviemulti.so differ diff --git a/rtos/code/lib/include/ImageApp/ImageApp_MovieMulti.h b/rtos/code/lib/include/ImageApp/ImageApp_MovieMulti.h index 5242d6e07..7271e5deb 100755 --- a/rtos/code/lib/include/ImageApp/ImageApp_MovieMulti.h +++ b/rtos/code/lib/include/ImageApp/ImageApp_MovieMulti.h @@ -101,7 +101,7 @@ typedef enum { IAMOVIE_VPRC_EX_ALG, IAMOVIE_VPRC_EX_DISP2, IAMOVIE_VPRC_EX_ALG2, - IAMOVIE_VPRC_EX_MAX, + IAMOVIE_VPRC_EX_MAX, ENUM_DUMMY4WORD(IAMOVIE_VPRC_EX_PATH) } IAMOVIE_VPRC_EX_PATH; @@ -601,6 +601,7 @@ typedef enum { MOVIE_USER_CB_EVENT_JENC_DONE, MOVIE_USER_CB_EVENT_UVAC, MOVIE_USER_CB_EVENT_PREV_CARSH_FILE_COMPLETED, + MOVIE_USER_CB_EVENT_SET_ENC_RC_INFO, // ERROR MOVIE_USER_CB_ERROR_CARD_SLOW = 0x0000E400, diff --git a/rtos/code/lib/output/libimageapp_moviemulti.a b/rtos/code/lib/output/libimageapp_moviemulti.a index 02b0aa1a4..abdfde1d5 100644 Binary files a/rtos/code/lib/output/libimageapp_moviemulti.a and b/rtos/code/lib/output/libimageapp_moviemulti.a differ