From 6133b65b96bd12b2e372f6e6ede3bde50e2deb40 Mon Sep 17 00:00:00 2001 From: Liang Ji Date: Tue, 24 Nov 2020 04:39:46 +0000 Subject: vhm264: decoder cannot output frame after long time testing PD#GH-790 BUG=172523591 BUG=172625780 Problem: video is frozen but audio continues on YouTube TV Solution: run_ready is ok when has free in buf_spec Verify: Sabrina Owner: hui.zhang@amlogic.com Signed-off-by: Liang Ji Change-Id: Ia512ca72877ab6a65757bee4a2aea18ba1aeae4e Reviewed-on: https://eureka-partner-review.googlesource.com/c/amlogic/media_modules/+/182928 Reviewed-by: Ben Cheng --- diff --git a/drivers/frame_provider/decoder/h264_multi/vmh264.c b/drivers/frame_provider/decoder/h264_multi/vmh264.c index 5701123..91baa77 100755 --- a/drivers/frame_provider/decoder/h264_multi/vmh264.c +++ b/drivers/frame_provider/decoder/h264_multi/vmh264.c @@ -8308,8 +8308,7 @@ static unsigned long run_ready(struct vdec_s *vdec, unsigned long mask) /*avoid more buffers consumed when switching resolution*/ if (run_ready_max_buf_num == 0xff && - get_used_buf_count(hw) > - hw->dpb.mDPB.size) + !have_free_buf_spec(vdec)) ret = 0; else if (run_ready_max_buf_num && get_used_buf_count(hw) >= -- cgit