diff --git a/libv4l-rockchip/libv4l-encplugin-rockchip.c b/libv4l-rockchip/libv4l-encplugin-rockchip.c
index 120beb05140ab4c43c80595683ed625fffb557d2..aaa496795a561de9d7269ce5443a093fd332c399 100644
--- a/libv4l-rockchip/libv4l-encplugin-rockchip.c
+++ b/libv4l-rockchip/libv4l-encplugin-rockchip.c
@@ -536,6 +536,8 @@ static int qbuf_if_pending_buffer_exists_locked(struct encoder_context *ctx,
 			VLOG_FD(0, "rk_vepu_update_parameter failed.");
 			return -EIO;
 		}
+		memset(&element->next_runtime_param, 0,
+			sizeof(element->next_runtime_param));
 		ret = ioctl_qbuf_locked(ctx, fd, &element->buffer);
 		if (ret)
 			return ret;