Skip to content
  • Freyr666's avatar
    vaapiencode: Fixes deadlock in gst_vaapiencode_change_state function · 9aeefd9b
    Freyr666 authored and Tim-Philipp Müller's avatar Tim-Philipp Müller committed
    This fixes a deadlock in gst_vaapiencode_change_state, which was due to
    srcpad's chain function was locked waiting for available buffers. Since the
    coded buffers in codedbuf_queue become available after sinkpad consume the
    encoded frames, Paused -> Ready state change leads to deadlock. Coded buffers
    are never consumed and marked free, hence gst_vaapiencode_handle_frame waits for
    available buffers and holds the stream_lock of the srcpad.
    9aeefd9b