The function call failed because the corresponding
data is not defined:
mpp_meta_set_s32(meta, KEY_INPUT_IDR_REQ, 0);
mpp_meta_get_s32(meta, KEY_INPUT_IDR_REQ, &val);
Change-Id: I0314a5e515493fcaf49d9625aebd68c4ef61b831
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
The function update_curbyte should ensure that
num_remaining_bits_in_curr_byte_ is non-zero,
but inside the mpp_has_more_rbsp_data function,
it needs to ensure that its logic is correct.
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: I6a8fb99fcf447d1ece38b271988a5a562e594cc1
s->h265dctx->pix_fmt is not initialized before configuration,
so without recreating mpp, s->h265dctx->pix_fmt can only behave
normally in overlay state (ex: yuv->fbc), and abnormal in
reduction state (ex: fbc->yuv)
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: Iee936b378c6de53a781fb67c5394738c74729242
s->h265dctx->pix_fmt is not initialized before configuration,
so without recreating mpp, s->h265dctx->pix_fmt can only behave
normally in overlay state (ex: yuv->fbc), and abnormal in
reduction state (ex: fbc->yuv)
Change-Id: Ib2399bdd9d41b86995f111b56a081e67a360057b
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
At the stage of setting output color format via controlling
MPP_DEC_SET_OUTPUT_FORMAT command, colorspace of JPEG file is unknown.
So checking RGB, TILE, FBC format only.
Change-Id: Ia046a52a707f016d0225307f69a40f1eb29e9e09
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
Error case:
When switching sources in the app, if the protocols of
the two sources are the same, but one is an 8-bit source
and the other is a 10-bit source.
Since the first source has been configured with pix_fmt
as 8bit, it will not be recalculated after switching,
resulting in an exception.
Change-Id: I92b44b9c397209171d8ef0f7a0aa65310aa8496d
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
The GKI kernel does not allow non-render thread to open /dev/dri/card0
and alloc drm buffer from it. So we need to use /dev/dri/renderD128
instead.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I0fad306c6eeadd8da5507883f4f4915c11946761
For kernel 4.4 and before, if VPU only has decoder, register size is
101. Thus extra size append at offset of 164*4 will be ignored by
kernel.
Change-Id: Idf4524099615b8ffd46766f55c9c0ea481f7cb76
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
Calling mpp_dev_init at hal_jpegd_api before calling each device init
function. Client type can be and should be specified before calling each
device init function. There is no need to re-initialize MppDev when
PP should be used. This fix also avoid lossing format information after
re-initialize MppDev, which result in extra_info storing at higher bits of
bitstream base address register instead of appending after registers datas.
Change-Id: I2edd8f91f29d04a151c94e9d342f153f42118eb1
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
RV1126/RV1109 JPEG decoder has no PP. This will be conflict with
vcodec_type queried from kernel. Also VPU_CLIENT_VEPU2_JPEG is defined
and used only for multi-core JPEG encoder at kernel. So the following
changes is made to fix this problem:
1. This reverts commit 9b860cd250.
2. Define a new MppDecHwCap to distinguish normal VPU with only JPEG
supported from multi-core JPEG encoder.
3. Correct vcodec_type queried from kernel when there is no PP for
VDPU2.
Change-Id: I58a1abe708721f725a9cf487e8f870dd5820844f
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
For qp lower than 6, make encoder to favor intra mode to obtain higher
quality of image, especially at chroma part.
Change-Id: I4b9f5602c2f0ca978a66a9a24f483db083ab7155
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
1. put err stream to mpp and not get valid sps/pps.
2. put eos packet.
3. reset mpp but reset failed in init_dpb().
4. always drop new stream causeby has_get_eos flasg not
clear in h264d_reset().
Fixs: redmine(485349).
Change-Id: I2955ea4ab48f116daa717949f28411bf4798c666
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
When encountering 16hex "00 00 00 01 00 00 00 01", allow filtering
out this empty NALU and do not consider it as an error stream.
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
Change-Id: I4fdc3cb8de7fee0a1899bc426c4681bf9ddc8d5d
in fast mode, scaleing_list_enable_flag may not correct when
seeking without update spspps
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: I64a14d7ba8cb065256c212c61f39e6371c607a93
Adjust the hal layer compilation structure
and fix the lib interdependence issue.
Change-Id: I7b400b679c8592b12fae865ff0638f177bbf0d60
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
feedback ONE_SLICE_FINISH irq is not a err.
Change-Id: I350252b78750672dc3123e0983b1edf7d870c26e
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>