V4L2VDA: do not queue output buffer during resolution change.
This issue happens when a resolution change happens right after a reset. First the client requests a reset. The image processor is still processing some buffers and they will be ignored when returning to V4L2VideoAccelerator. Then a resolution change occurs and V4L2VDA stops the output queue. The image processor returns a buffer and V4L2VDA queues it back. Since the queue is stopped, STREAMON will be called to start the queue. Finally REQBUFS will fail during resolution change because the queue is not stopped. The fix is we should not queue the buffer returned from image proessor if a resolution change is in progress. BUG=chrome-os-partner:55347 TEST=Seek when playing switch_1080p_720p.mp4 on oak. The video is from gs://chromiumos-test-assets-public/Shaka-Dash. Review-Url: https://codereview.chromium.org/2156003002 Cr-Commit-Position: refs/heads/master@{#405991}
Showing
Please register or sign in to comment