• Gopu Govindaswamy's avatar
    avcodec/libx265: use x265 Multi-library Interface to query the API · 94c20de4
    Gopu Govindaswamy authored
    ffmpeg can now use the x265 multi-library interface to make a runtime
    selection between a number of libx265 libraries (perhaps 8bpp and 16bpp).
    
    ffmpeg will link to one build of libx265 (statically or
    dynamically) and this linked version of libx265 will support one
    bit-depth (8 or 10 bits). At runtime, ffmpeg now has the option to request the
    encoder to use a different bit depth(8 or 10). If the requested bitdepth
    is zero, or if it matches the bitdepth of the system default libx265 (the
    currently linked library), then this library will be used for encode.
    If ffmpeg requests a different bit-depth, the linked libx265 will attempt
    to dynamically bind a shared library with the requested bit-depth from the install
    location (default or user-specified).
    
    new x265 API:
         const x265_api* api = x265_api_get(int bitDepth);
         x265_api - holds the libx265 public API functions
         bitDepth - requested API for 8bpp or 16bpp
    
         note: Use 0 to indicate native bit depth of the linked libx265 and
               x265_api_get(0) is guaranteed to return a non-null pointer
    Signed-off-by: 's avatarGopu Govindaswamy <gopu@multicorewareinc.com>
    Signed-off-by: 's avatarDerek Buitenhuis <derek.buitenhuis@gmail.com>
    94c20de4
libx265.c 12.3 KB