Is was possible before, that lazy frame was not generated
depite having decoded frame available in pool:
1. Push multiple buffers into decoder.
2. Push EOS buffer.
3. Observe that only some of the frames were returned
using lazy frame mechanism (reaching pool size).
4. Release some of the returned frames.
After that, we should have next frames returned, but it
won't happen.
To fix this issue, we should run lazy frame processing
after previously released frame is returned to pool.
Bug: https://jira-eu.sec.samsung.net/browse/VDGAME-684
Change-Id: I93a9497f51b0309dee3a08f51da65ae1bfb9fe9f
Signed-off-by: Jakub Gajownik <j.gajownik2@samsung.com>
ReturnTTvdDecodedFrameToPool(std::move(output_it->second.ttvd_decoded_frame));
decoding_results_.erase(output_it);
EnsureDecoderOutput();
+ TriggerLazyFramesIfNeeded();
}
bool TTvdVideoDecoderImpl::ReleaseDecoder() {