Note that the PSNR derived from SSE may not equals to PSNR from video
analyser. Because SSE returned from hardware is consist of both luma and
chroma samples. And SSE of chroma samples multiplied by some weight.
But the difference is within 1db, usually no more than 0.5db.
Change-Id: I294d473c656f39ce98dd0768cd6945ee38e89b14
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
Deblur_en is more generic for upper application.
Change-Id: Ibe4e0f81851fdbbe8fb8b7d840a4a9380e0403b1
Signed-off-by: Tingjin Huang <timkingh.huang@rock-chips.com>
1. Fix AQ setup error for smart H.264
2. Fix initial value error of qp_min
3. Adjust H.264 regs setup for CVR scene
Change-Id: I38b09edb95532a3c1e9a544584c6d258f05fc43b
Signed-off-by: Tingjin Huang <timkingh.huang@rock-chips.com>
1. Add cu_qp_delta_depth cfg
2. Configure AQ regs for H.265
3. Configure regs according to scene mode
4. Support fixed frame level QP
5. Add RDO lambda table index
6. Update stat info for HEVC
7. Add tuning code for H.264 encoder
Change-Id: Id7dae4ed55e1b94622aee72cfce8f24c833d00e1
Signed-off-by: Tingjin Huang <timkingh.huang@rock-chips.com>
When GOP is set to 60 that is the same as the default GOP by
application, igop at reference module isn't set as expected, that leads
to CPB not be cleaned correctly and IDR frame won't be encoded.
see [issue](https://redmine.rock-chips.com/issues/374780)
Change-Id: I2f1030cab700aa560dea07284b820a73c637631e
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
1. constraint the range of input argument.
2. add flip config, equal to vertical mirror transformation.
3. add mirroring_ext and rotation_ext to config set, for supporting
GET_CFG control.
Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
Change-Id: I01c0b9187a18851354e81b5f08afc6dcaaba8365
NOTE: Due to limitation of output task number the split output mode with
block input flow should only have less than 8 slices. Otherwise the
put_frame call will be blocked due to lack of output task slot.
Change-Id: Iab351be04196fa2b3ac3a116bd7c999f570e25eb
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
1. Move mpp_log.h to inc for external user.
2. Add mpp_debug.h for mpp internal logging.
3. Fix some warning.
4. Add log level setup function.
5. Check env log_level value in mpp_get_log_level call.
NOTE:
1. mpp internal module should use mpp_debug.h and mpp external user
should use mpp_log.h
2. Use mpp_get_log_level to update mpp_log_level when the env changed.
Change-Id: I90a55a02a72db177533013280dfe111ca3479229
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
For data with sizes of 5120x7160 and 8000x8000, the required buffer size
was calculated incorrectly during the encoding process, which caused the
requested buffer to be too large, resulting in drm exceptions.
Therefore, the method of calculating data has been modified.
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: I519a76687118d568cf57e7d3d54a150e9019285c
1. Use new option module in dec/enc test
2. Delete mpi_enc_multi_test and mpi_rc_test
Change-Id: Ib00020247386ee06cca2f560ae41aee8e88f47cc
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
vepu58x roi cfg generation is depended on vepu54x roi cfg.
1. Use roi_enable to enable roi test.
2. Use roi_type to test different roi config mode.
Old region mode is set to legacy now for future roi cfg will be more and
more complicated.
Change-Id: Ib9e8976b732f05625e7589b64752d38fbd83584b
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
1. The pre_i_qp should use scale_qp to update rather then the start_qp
which has substracted by ip_qp_delta.
2. Reduce default ip_qp_delta to 2 for H.264 and 4 for H.265.
Change-Id: Ie43ba15c8bd524bd10aac6053306f72e8759370c
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Separate H.264 QP limit change flag into 3 flags
Change-Id: I658ab337569f8f715bde7633dce02b631a7d4239
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
1. Update osd test in mpi_enc_test.
2. Remove osd test in mpi_multi_test.
3. Fix log info in vepu541.
Change-Id: I8056edf263df5571448782b3b8074f54956672ee
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
User data set is for multiple user data with uuid.
Change-Id: Iad952961ab6242ff3a14f554410144bebd3801ba
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
When the bitrate overflow the encoder can drop or encode skip frame.
drop_mode:
MPP_ENC_RC_DROP_FRM_DISABLED
- Do not drop frame when bitrate is too large.
MPP_ENC_RC_DROP_FRM_NORMAL
- Drop frame when bitrate is too large.
MPP_ENC_RC_DROP_FRM_PSKIP
- Encode force pskip frame to keep frame rate when bitrate overflow.
drop_thd:
The instantaneous bitrate overflow threshold to trigger drop frame.
drop_gap:
The minimum gap between two continuous drop frames.
0 - enable continnous drop frame.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: If17ee5f46ee03ae4ad958c8fad30a4a82f422118
if input file name is start with "/dev/video", default open camera
device as input.
Change-Id: I85d639ddb6fa5d99413ea75a0b088c79798dd6c8
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>