Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 933345 - media-video/ffmpeg-6.1.1-r5 package does not strictly specify media-libs/nv-codec-headers compatible version
Summary: media-video/ffmpeg-6.1.1-r5 package does not strictly specify media-libs/nv-c...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-06-01 07:37 UTC by Valentin Saussois
Modified: 2024-06-02 18:57 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Valentin Saussois 2024-06-01 07:37:04 UTC
When nvenc use flag is enabled ffmpeg-6.1.1-r5 drags nvenc but with broad assumption : nvenc? ( >=media-libs/nv-codec-headers-11.1.5.3 )

But if some later versions of nv-codec header are available (via overlays ) those are not compatible any more due to removal of deprecated functions that have been removed from later nv-codec headers but still used by ffmpeg-6.1.1-r5 :

The support for buffer formats listed below is deprecated.

    NV_ENC_BUFFER_FORMAT_NV12_PL
    NV_ENC_BUFFER_FORMAT_YV12_PL
    NV_ENC_BUFFER_FORMAT_IYUV_PL
    NV_ENC_BUFFER_FORMAT_YUV444_PL

Users are therefore recommended to use NV_ENC_BUFFER_FORMAT_NV12, NV_ENC_BUFFER_FORMAT_YV12, NV_ENC_BUFFER_FORMAT_IYUV and NV_ENC_BUFFER_FORMAT_YUV444 instead of above listed buffer formats. 

ref : https://docs.nvidia.com/video-technologies/video-codec-sdk/12.1/deprecation-notices/index.html#deprecation-notices__ol_hgy_dz2_nlb 

Leading to compilation errors like :

src/libavcodec/nvenc.c:1700:16: error: ‘NV_ENC_BUFFER_FORMAT_YUV444_PL’ undeclared (first use in this function); did you mean ‘NV_ENC_BUFFER_FORMAT_YUV444’?

Should ffmpeg ebuild enforce a specific version of nv-codec-headers instead of a >= ?