mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-06 01:26:49 +08:00
[mpp_enc]: Add intra flag on slice output mode
Change-Id: Ib717b7df596ab6ffb35ba0c2f4274dc9ef79850d Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
This commit is contained in:
@@ -469,7 +469,11 @@ MPP_RET mpp_enc_callback(const char *caller, void *ctx, RK_S32 cmd, void *param)
|
||||
case ENC_OUTPUT_SLICE : {
|
||||
enc_dbg_slice("slice pos %p len %5d\n", last_pos, slice_length);
|
||||
|
||||
mpp_packet_copy_init((MppPacket *)&impl, packet);
|
||||
mpp_packet_new((MppPacket *)&impl);
|
||||
mpp_assert(impl);
|
||||
|
||||
/* copy the source data */
|
||||
memcpy(impl, packet, sizeof(*impl));
|
||||
|
||||
impl->pos = last_pos;
|
||||
impl->length = slice_length;
|
||||
@@ -478,6 +482,16 @@ MPP_RET mpp_enc_callback(const char *caller, void *ctx, RK_S32 cmd, void *param)
|
||||
impl->status.soi = part_first;
|
||||
impl->status.eoi = 0;
|
||||
|
||||
if (impl->buffer)
|
||||
mpp_buffer_inc_ref(impl->buffer);
|
||||
|
||||
mpp_meta_get(&impl->meta);
|
||||
if (impl->meta) {
|
||||
EncFrmStatus *frm = &task->rc_task->frm;
|
||||
|
||||
mpp_meta_set_s32(impl->meta, KEY_OUTPUT_INTRA, frm->is_intra);
|
||||
}
|
||||
|
||||
enc_dbg_detail("pkt %d new pos %p len %d\n", task->part_count,
|
||||
last_pos, slice_length);
|
||||
|
||||
|
Reference in New Issue
Block a user