• wm4's avatar
    lavu/frame: add QP side data · 4b86ac27
    wm4 authored
    This adds a way for an API user to transfer QP data and metadata without
    having to keep the reference to AVFrame, and without having to
    explicitly care about QP APIs. It might also provide a way to finally
    remove the deprecated QP related fields. In the end, the QP table should
    be handled in a very similar way to e.g. AV_FRAME_DATA_MOTION_VECTORS.
    
    There are two side data types, because I didn't care about having to
    repack the QP data so the table and the metadata are in a single
    AVBufferRef. Otherwise it would have either required a copy on decoding
    (extra slowdown for something as obscure as the QP data), or would have
    required making intrusive changes to the codecs which support export of
    this data.
    
    The new side data types are added under deprecation guards, because I
    don't intend to change the status of the QP export as being deprecated
    (as it was before this patch too).
    4b86ac27