#67327 closed defect (fixed)
ffmpeg @4.4.2_6: error: no member named 'compressed_ten_bit_format' in 'struct EbSvtAv1EncConfiguration'
Reported by: | Lord-Kamina (Gregorio Litenstein) | Owned by: | mascguy (Christopher Nielsen) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | dbevans (David B. Evans), jeremyhu (Jeremy Huddleston Sequoia), SchmollTroll | |
Port: | ffmpeg |
Description
Hadn't updated my install in a while. Was doing so now, and ffmpeg fails with the following:
libavcodec/libsvtav1.c:124:53: error: no member named 'compressed_ten_bit_format' in 'struct EbSvtAv1EncConfiguration' (config->encoder_bit_depth > 8) && (config->compressed_ten_bit_format == 0) ? 1 : 0;
Grepping through my include folder, I traced the struct to /opt/local/include/svt-av1/EbSvtAv1Enc.h
And inside it, I found:
#if !SVT_AV1_CHECK_VERSION(1, 5, 0) /* DEPRECATED: to be removed in 1.5.0. */ uint32_t compressed_ten_bit_format; #endif
I looked through the code upstream and don't see a fix at least up-to 4.4.4
Attachments (1)
Change History (11)
comment:1 Changed 19 months ago by ryandesign (Ryan Carsten Schmidt)
Cc: | dbevans jeremyhu added |
---|---|
Keywords: | ffmpeg svt-av1 ftbfs removed |
Owner: | set to mascguy |
Status: | new → assigned |
Summary: | svt-av1 @1.5.0_0 break ffmpeg @4.4.2_6 → ffmpeg @4.4.2_6: error: no member named 'compressed_ten_bit_format' in 'struct EbSvtAv1EncConfiguration' |
comment:2 Changed 19 months ago by ryandesign (Ryan Carsten Schmidt)
comment:3 Changed 19 months ago by william-stearns (William Stearns)
I've just upgraded to MacOS Monterey (newest my hardware will support) and am running into the same error as the OP with compressed_ten_bit_format when trying to compile ffmpeg-4.4.2 . I deactivated ffmpeg and installed ffmpeg-upstream-6.0_0+gpl2, which successfully compiled. This allowed me to fix a number of binaries with linking errors. port command output below:
sudo port install ffmpeg-upstream ---> Computing dependencies for ffmpeg-upstream Error: Can't install ffmpeg-upstream because conflicting ports are active: ffmpeg Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug. Error: Processing of port ffmpeg-upstream failed wlsmacpro:~ wstearns$ sudo port deactivate ffmpeg Note: It is not recommended to uninstall/deactivate a port that has dependents as it breaks the dependents. The following ports will break:
strigi @0.7.8_13 chromaprint @1.5.1_0 FreeRDP @2.7.0_0 youtube-dl @2021.12.17_1 gegl-0.3 @0.3.34_14 libextractor @1.11_2 yt-dlp @2023.03.04_0 gegl @0.4.44_0
Continue? [y/N]: y Warning: Deactivate forced. Proceeding despite dependencies. ---> Deactivating ffmpeg @4.4.2_6+gpl2+x11 ---> Cleaning ffmpeg wlsmacpro:~ wstearns$ sudo port install ffmpeg-upstream ---> Computing dependencies for ffmpeg-upstream ---> Fetching archive for ffmpeg-upstream ---> Attempting to fetch ffmpeg-upstream-6.0_0+gpl2.darwin_21.x86_64.tbz2 from https://packages.macports.org/ffmpeg-upstream ---> Attempting to fetch ffmpeg-upstream-6.0_0+gpl2.darwin_21.x86_64.tbz2.rmd160 from https://packages.macports.org/ffmpeg-upstream ---> Installing ffmpeg-upstream @6.0_0+gpl2 Warning: libsdl2 must be installed without +x11. ---> Activating ffmpeg-upstream @6.0_0+gpl2 ---> Cleaning ffmpeg-upstream ---> Scanning binaries for linking errors ...
comment:4 Changed 19 months ago by william-stearns (William Stearns)
Apologies: "Which successfully compiled" is incorrect; that should be "which successfully installed." I am finding that there are still broken packages after installing ffmpeg-upstream (though not all are necessarily related to ffmpeg):
---> Found 9 broken ports, determining rebuild order You can always run 'port rev-upgrade' again to fix errors. The following ports will be rebuilt:
FreeRDP @2.7.0+docs ettercap @0.8.3.1+gtk+plugins chromaprint @1.5.1 gegl-0.3 @0.3.34+x11 gegl @0.4.44+vala+x11 libextractor @1.11 strigi @0.7.8 gnome-settings-daemon @3.26.2 qt513-qtimageformats @5.13.2
Changed 18 months ago by townba (Brad Town)
Attachment: | patch-libavcodec-libsvtav1.c.diff added |
---|
Patch based on upstream commit 031f1561cd286596cdb374da32f8aa816ce3b135
comment:5 Changed 18 months ago by townba (Brad Town)
This was fixed in an upstream commit: https://gitlab.com/1480c1/FFmpeg/-/commit/031f1561cd286596cdb374da32f8aa816ce3b135
I was having the same problem. I created a test patch based on that commit and the build succeeded.
comment:6 Changed 18 months ago by mascguy (Christopher Nielsen)
Cc: | SchmollTroll added |
---|
comment:7 Changed 18 months ago by Christopher Nielsen <mascguy@…>
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:8 Changed 18 months ago by mascguy (Christopher Nielsen)
Users, please wait at least four hours, and then run sudo port selfupdate
to pull down the fix. Then run sudo port clean ffmpeg
, and finally, retry installation/upgrading.
Please let us know if this fixes your issue!
comment:9 follow-up: 10 Changed 18 months ago by william-stearns (William Stearns)
After uninstalling ffmpeg-upstream I was able to install ffmpeg. A number of packages that appeared to depend upon ffpmeg also appear to be going in fine now. Thanks you so much for your work on this!
comment:10 Changed 18 months ago by mascguy (Christopher Nielsen)
Replying to william-stearns:
After uninstalling ffmpeg-upstream I was able to install ffmpeg. A number of packages that appeared to depend upon ffpmeg also appear to be going in fine now. Thanks you so much for your work on this!
You bet!
Oh, we recently segregated ffmpeg-upstream
, so that it can be installed alongside ffmpeg
. The only difference is that the executables have a suffix with the major version number, so they are accessed via ffmpeg6
, ffplay6
, etc.
Does the problem remain with the ffmpeg-upstream port?