Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: graphics/ffmpeg: update to 8.0.2 (-stable) and 8.1.1 (-current)
To:
ports@openbsd.org
Date:
Wed, 6 May 2026 17:02:20 +0100

Download raw body.

Thread
On 2026/05/06 12:11, Kirill A. Korinsky wrote:
> ports,
> 
> I'd like to update graphics/ffmpeg to 8.0.2 (-stable) and 8.1.1
> (-current) after port unlock.
> 
> /usr/src/lib/check_sym said "No dynamic export changes" on 8.0.1 ->
> 8.0.2 upgrade with one exception: libavfilter has added new reference
> ``trunc` but I think it not justify any shlib bump.

That tool is meant for investigating changes in libraries in base.
It can be used with other libraries but some of the information that it
provides is not really relevant for bumps in ports.

For the 8.0.2 update:

----
$ diffsyms
/usr/local/lib/libavcodec.so.27.1 --> /usr/obj/ports/ffmpeg-8.0.2/fake-amd64//usr/local/lib/libavcodec.so.27.1
No dynamic export changes
/usr/local/lib/libavdevice.so.15.1 --> /usr/obj/ports/ffmpeg-8.0.2/fake-amd64//usr/local/lib/libavdevice.so.15.1
No dynamic export changes
/usr/local/lib/libavfilter.so.13.1 --> /usr/obj/ports/ffmpeg-8.0.2/fake-amd64//usr/local/lib/libavfilter.so.13.1
No dynamic export changes
External reference changes:
added:
        trunc

/usr/local/lib/libavformat.so.24.1 --> /usr/obj/ports/ffmpeg-8.0.2/fake-amd64//usr/local/lib/libavformat.so.24.1
No dynamic export changes
/usr/local/lib/libavutil.so.17.1 --> /usr/obj/ports/ffmpeg-8.0.2/fake-amd64//usr/local/lib/libavutil.so.17.1
No dynamic export changes
/usr/local/lib/libswresample.so.6.1 --> /usr/obj/ports/ffmpeg-8.0.2/fake-amd64//usr/local/lib/libswresample.so.6.1
No dynamic export changes
/usr/local/lib/libswscale.so.9.1 --> /usr/obj/ports/ffmpeg-8.0.2/fake-amd64//usr/local/lib/libswscale.so.9.1
No dynamic export changes
----

-> "External reference changes" is not of interest here.
Diffing installed headers doesn't show any struct changes etc.
Upstream has macros for their idea of library major/minor versions
in the headers and those have not changed (only micro).
libavutil/bswap.h does not look like an api/abi change.

I agree with no bumps for 8.0.2.



For the 8.1.1 update, there are new exports in:

libavcodec, libavfilter, libavformat, libavutil, libswscale

None of the libraries have removed exports.

Looking at header diffs, everything seems consistent with backwards
compatible additions, i.e. just minor bumps for the libraries with
export changes.


$ diffsyms
/usr/local/lib/libavcodec.so.27.1 --> /usr/obj/ports/ffmpeg-8.1.1/fake-amd64//usr/local/lib/libavcodec.so.28.0
Dynamic export changes:
added:
	av_exif_clone_ifd@@LIBAVCODEC_62
	av_exif_free@@LIBAVCODEC_62
	av_exif_get_entry@@LIBAVCODEC_62
	av_exif_get_tag_id@@LIBAVCODEC_62
	av_exif_get_tag_name@@LIBAVCODEC_62
	av_exif_ifd_to_dict@@LIBAVCODEC_62
	av_exif_matrix_to_orientation@@LIBAVCODEC_62
	av_exif_orientation_to_matrix@@LIBAVCODEC_62
	av_exif_parse_buffer@@LIBAVCODEC_62
	av_exif_remove_entry@@LIBAVCODEC_62
	av_exif_set_entry@@LIBAVCODEC_62
	av_exif_write@@LIBAVCODEC_62
	av_packet_side_data_from_frame@@LIBAVCODEC_62
	av_packet_side_data_to_frame@@LIBAVCODEC_62
	avcodec_receive_frame_flags@@LIBAVCODEC_62

External reference changes:
added:
	aom_img_get_metadata
	aom_img_num_metadata
	av_alpha_mode_name@LIBAVUTIL_60
	av_csp_approximate_eotf_gamma@LIBAVUTIL_60
	av_display_rotation_get@LIBAVUTIL_60
	av_dynamic_hdr_plus_to_t35@LIBAVUTIL_60
	svt_av1_enc_get_stream_info

removed:
	av_csp_approximate_trc_gamma@LIBAVUTIL_60
	av_dict_copy@LIBAVUTIL_60

/usr/local/lib/libavdevice.so.15.1 --> /usr/obj/ports/ffmpeg-8.1.1/fake-amd64//usr/local/lib/libavdevice.so.16.0
No dynamic export changes
External reference changes:
added:
	malloc
	pthread_getspecific
	pthread_key_create
	pthread_mutex_lock
	pthread_mutex_unlock
	pthread_once
	pthread_setspecific
	realloc

/usr/local/lib/libavfilter.so.13.1 --> /usr/obj/ports/ffmpeg-8.1.1/fake-amd64//usr/local/lib/libavfilter.so.14.0
Dynamic export changes:
added:
	av_buffersink_get_alpha_mode@@LIBAVFILTER_11
	av_buffersrc_get_status@@LIBAVFILTER_11

External reference changes:
added:
	av_alpha_mode_from_name@LIBAVUTIL_60
	av_alpha_mode_name@LIBAVUTIL_60
	av_bprint_append_data@LIBAVUTIL_60
	av_channel_layout_custom_init@LIBAVUTIL_60
	fputs
	trunc

/usr/local/lib/libavformat.so.24.1 --> /usr/obj/ports/ffmpeg-8.1.1/fake-amd64//usr/local/lib/libavformat.so.25.0
Dynamic export changes:
added:
	av_mime_codec_str@@LIBAVFORMAT_62
	avformat_receive_command_reply@@LIBAVFORMAT_62
	avformat_send_command@@LIBAVFORMAT_62

External reference changes:
added:
	ASN1_INTEGER_set_uint64
	av_csp_approximate_eotf_gamma@LIBAVUTIL_60
	av_exif_free@LIBAVCODEC_62
	av_exif_get_tag_id@LIBAVCODEC_62
	av_exif_ifd_to_dict@LIBAVCODEC_62
	av_exif_parse_buffer@LIBAVCODEC_62
	av_exif_remove_entry@LIBAVCODEC_62
	av_exif_write@LIBAVCODEC_62
	av_image_fill_plane_sizes@LIBAVUTIL_60
	av_opt_find@LIBAVUTIL_60
	av_packet_unpack_dictionary@LIBAVCODEC_62
	av_pix_fmt_count_planes@LIBAVUTIL_60
	xmlEncodeSpecialChars

removed:
	ASN1_INTEGER_set
	EVP_sha1
	av_csp_approximate_trc_gamma@LIBAVUTIL_60
	avpriv_exif_decode_ifd@LIBAVCODEC_62
	free

/usr/local/lib/libavutil.so.17.1 --> /usr/obj/ports/ffmpeg-8.1.1/fake-amd64//usr/local/lib/libavutil.so.18.0
Dynamic export changes:
added:
	av_alpha_mode_from_name@@LIBAVUTIL_60
	av_alpha_mode_name@@LIBAVUTIL_60
	av_csp_approximate_eotf_gamma@@LIBAVUTIL_60

/usr/local/lib/libswresample.so.6.1 --> /usr/obj/ports/ffmpeg-8.1.1/fake-amd64//usr/local/lib/libswresample.so.7.0
No dynamic export changes
/usr/local/lib/libswscale.so.9.1 --> /usr/obj/ports/ffmpeg-8.1.1/fake-amd64//usr/local/lib/libswscale.so.10.0
Dynamic export changes:
added:
	sws_test_hw_format@@LIBSWSCALE_9

External reference changes:
added:
	av_buffer_alloc@LIBAVUTIL_60
	av_cpu_max_align@LIBAVUTIL_60
	av_dynarray2_add@LIBAVUTIL_60
	av_image_check_size2@LIBAVUTIL_60
	av_image_fill_linesizes@LIBAVUTIL_60
	av_image_fill_plane_sizes@LIBAVUTIL_60
	av_memdup@LIBAVUTIL_60
	av_pix_fmt_count_planes@LIBAVUTIL_60
	av_refstruct_alloc_ext_c@LIBAVUTIL_60
	av_refstruct_ref@LIBAVUTIL_60
	av_refstruct_unref@LIBAVUTIL_60
	av_strlcat@LIBAVUTIL_60
	av_strlcatf@LIBAVUTIL_60
	av_strlcpy@LIBAVUTIL_60
	qsort
	snprintf