summaryrefslogtreecommitdiff
path: root/media-libs
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/Manifest.gzbin68441 -> 68436 bytes
-rw-r--r--media-libs/chromaprint/Manifest2
-rw-r--r--media-libs/chromaprint/chromaprint-1.5.1-r3.ebuild52
-rw-r--r--media-libs/chromaprint/files/ffmpeg-5.patch580
-rw-r--r--media-libs/codec2/Manifest2
-rw-r--r--media-libs/codec2/codec2-1.1.1.ebuild36
-rw-r--r--media-libs/gmmlib/Manifest2
-rw-r--r--media-libs/gmmlib/gmmlib-22.3.7.ebuild35
-rw-r--r--media-libs/intel-mediasdk/Manifest2
-rw-r--r--media-libs/intel-mediasdk/intel-mediasdk-23.2.1.ebuild91
-rw-r--r--media-libs/libjpeg-turbo/Manifest2
-rw-r--r--media-libs/libjpeg-turbo/libjpeg-turbo-2.1.5.1.ebuild2
-rw-r--r--media-libs/mlt/Manifest1
-rw-r--r--media-libs/mlt/mlt-7.16.0-r1.ebuild158
-rw-r--r--media-libs/oneVPL-intel-gpu/Manifest4
-rw-r--r--media-libs/oneVPL-intel-gpu/oneVPL-intel-gpu-23.2.3.ebuild (renamed from media-libs/oneVPL-intel-gpu/oneVPL-intel-gpu-23.2.1.ebuild)0
-rw-r--r--media-libs/oneVPL/Manifest2
-rw-r--r--media-libs/oneVPL/oneVPL-2023.3.0.ebuild82
-rw-r--r--media-libs/svt-av1/Manifest2
-rw-r--r--media-libs/svt-av1/svt-av1-1.5.0-r1.ebuild (renamed from media-libs/svt-av1/svt-av1-1.5.0.ebuild)1
-rw-r--r--media-libs/svt-hevc/Manifest4
-rw-r--r--media-libs/svt-hevc/svt-hevc-1.5.1.ebuild4
-rw-r--r--media-libs/svt-hevc/svt-hevc-9999.ebuild4
-rw-r--r--media-libs/tiff/Manifest3
-rw-r--r--media-libs/tiff/tiff-4.5.1.ebuild84
25 files changed, 1051 insertions, 104 deletions
diff --git a/media-libs/Manifest.gz b/media-libs/Manifest.gz
index d78468930bdf..179920be2ba5 100644
--- a/media-libs/Manifest.gz
+++ b/media-libs/Manifest.gz
Binary files differ
diff --git a/media-libs/chromaprint/Manifest b/media-libs/chromaprint/Manifest
index 2eaf8c80d506..1698f316ed99 100644
--- a/media-libs/chromaprint/Manifest
+++ b/media-libs/chromaprint/Manifest
@@ -1,4 +1,6 @@
+AUX ffmpeg-5.patch 18698 BLAKE2B 9000187da3e0c486a432578a3e87fc40c48ce1ebd259e3b051ddab83c45cd7eb5a0bc5586daeb18c3867cdf26d1a36c4b61b9c2110758ec7a84007a072dc01c4 SHA512 d093f251fb2e7c9d98298a814434bc91e72387a2c214ceba561282a561ffcd256a44d51230bcc2f9f459403b76d0f589d5a4f1e26d5666d007e4babd38b3e702
DIST chromaprint-1.5.1.tar.gz 1581159 BLAKE2B 9f7f030e97d3114cf679df298d313ea826c0fb05e7e7d8a10090d0a27ed0811b380b81b29fce973e0493826c478964367396311fd0484619cb2fc4c2d8e0d4c0 SHA512 ea16e4d2b879c15b1d9b9ec93878da8b893f1834c70942663e1d2d106c2e0a661094fe2dd3bae7a6c2a1f9d5d8fab5e0b0ba493561090cf57b2228606fad1e66
DIST gtest-1.10.0.tar.gz 904227 BLAKE2B 96b97b06730a9f55505a4d40bd4861560503a1437d29dadc6e8d3c743ccde020e61b3f96082fb9bda0666d739e69d3990bad06161e9c531c40021dc0826f5547 SHA512 7ebf5b4a80f364564066ccc7ce2e2092b12942a754c4854afd97380f19811e0fd45c300d423234cda0e05966ddbdaebcb1625e856ce55b0c81b0bae0dd971532
EBUILD chromaprint-1.5.1-r2.ebuild 1746 BLAKE2B f2ed63e16160d85e99a7737d03f865aae0d9fb25749d8f4176d34cada498a851478dc632005ac67b28dc0c213bce786658d676f84aea56a89be2e6959d364a9b SHA512 94a9b5a1f0c91717f78902ac009af6fe1aec81c50c2f166702d663915280b65377d78172678bdcfd54620df2b4569ba3b5f6043ee49c1c9502543a0376390c44
+EBUILD chromaprint-1.5.1-r3.ebuild 1688 BLAKE2B d0679ab571fc3be6d823826c090d4d20fdf491c65fcf1b8ef356c856ce85a2ee15cb1f1cad600695a65ca5ad1d34af5159fa848c4c7a1f84b200ac5b8b442048 SHA512 8a6d4cc802dcf9446eb9152d54cd6eb1fb9f38cd2500e9e9f977ee9e2a1a78160acf3fccc64d918f96f63d603a0e7eecf8deb5e34f72a3d016d16db791d90736
MISC metadata.xml 503 BLAKE2B badb1250c59d72306e528508fe7016028a5aec5f349ad050437ba4c818ed0fc9d63efcdab5774b5ad94956067fe4243f6f4aff5423e25a2ac9685e147590d976 SHA512 b10104402e9b04d904a9ef4e6876bb52764ccf4a0b38b1f5ef7b5b9534737e64b285bfafdb3e9f7582fc21d0204f52014cd7eea6e22c8097ac46f15c111971c3
diff --git a/media-libs/chromaprint/chromaprint-1.5.1-r3.ebuild b/media-libs/chromaprint/chromaprint-1.5.1-r3.ebuild
new file mode 100644
index 000000000000..c18875469243
--- /dev/null
+++ b/media-libs/chromaprint/chromaprint-1.5.1-r3.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GTEST_VERSION="1.10.0"
+GTEST_DIR_VERSION="1.10.x"
+inherit cmake-multilib
+
+DESCRIPTION="Library implementing a custom algorithm for extracting audio fingerprints"
+HOMEPAGE="https://acoustid.org/chromaprint"
+SRC_URI="https://github.com/acoustid/${PN}/releases/download/v${PV}/${P}.tar.gz
+ test? ( https://github.com/google/googletest/archive/v$(ver_cut 1-2 ${GTEST_VERSION}).x.tar.gz -> gtest-${GTEST_VERSION}.tar.gz )
+"
+
+LICENSE="LGPL-2.1"
+SLOT="0/1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test tools"
+RESTRICT="!test? ( test )"
+
+# - Default to fftw to avoid awkward circular dependency w/ ffmpeg
+# See bug #833821 for an example
+RDEPEND="tools? ( >=media-video/ffmpeg-5:=[${MULTILIB_USEDEP}] )
+ !tools? ( sci-libs/fftw:=[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+ test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )"
+
+DOCS=( NEWS.txt README.md )
+PATCHES=( "${FILESDIR}"/ffmpeg-5.patch )
+
+multilib_src_configure() {
+ export GTEST_ROOT="${WORKDIR}/googletest-${GTEST_DIR_VERSION}/googletest/"
+
+ local mycmakeargs=(
+ -DBUILD_TESTS=$(usex test)
+
+ -DBUILD_TOOLS=$(multilib_native_usex tools)
+ -DFFT_LIB=$(usex tools 'avfft' 'fftw3')
+ $(multilib_native_usex tools '-DAUDIO_PROCESSOR_LIB=swresample' '')
+ # Automagicallyish looks for ffmpeg, but there's no point
+ # even doing the check unless we're building with tools
+ # (=> without fftw3, and with ffmpeg).
+ -DCMAKE_DISABLE_FIND_PACKAGE_FFmpeg=$(multilib_native_usex !tools)
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ cd tests && (./all_tests || die "Tests failed")
+}
diff --git a/media-libs/chromaprint/files/ffmpeg-5.patch b/media-libs/chromaprint/files/ffmpeg-5.patch
new file mode 100644
index 000000000000..a88ce7204f73
--- /dev/null
+++ b/media-libs/chromaprint/files/ffmpeg-5.patch
@@ -0,0 +1,580 @@
+From 8ccad6937177b1b92e40ab8f4447ea27bac009a7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Lalinsk=C3=BD?= <lalinsky@gmail.com>
+Date: Fri, 4 Nov 2022 21:47:38 +0100
+Subject: [PATCH] Use FFmpeg 5.x (#120)
+
+* Use FFmpeg 5.1.2 for CI builds
+
+* Build on Ubuntu 20.04
+
+* Upgrade code to FFmpeg 5.x APIs
+
+* Only set FFmpeg include dirs if building tools
+
+* No longer needed
+
+* Use ubuntu 20.04
+---
+ .github/workflows/build.yml | 6 +-
+ CMakeLists.txt | 16 --
+ src/audio/ffmpeg_audio_processor.h | 2 -
+ src/audio/ffmpeg_audio_processor_avresample.h | 72 -------
+ src/audio/ffmpeg_audio_processor_swresample.h | 18 +-
+ src/audio/ffmpeg_audio_reader.h | 197 +++++++++---------
+ tests/CMakeLists.txt | 6 +
+ 8 files changed, 122 insertions(+), 199 deletions(-)
+ delete mode 100644 src/audio/ffmpeg_audio_processor_avresample.h
+
+diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
+index 92761d9..baf67b7 100644
+--- a/.github/workflows/build.yml
++++ b/.github/workflows/build.yml
+@@ -6,7 +6,7 @@ on:
+
+ jobs:
+ test-linux:
+- runs-on: ubuntu-18.04
++ runs-on: ubuntu-20.04
+ strategy:
+ matrix:
+ fft:
+@@ -50,7 +50,7 @@ jobs:
+ make check VERBOSE=1
+
+ package-linux:
+- runs-on: ubuntu-18.04
++ runs-on: ubuntu-20.04
+ strategy:
+ matrix:
+ arch:
+@@ -71,7 +71,7 @@ jobs:
+ path: artifacts/
+
+ package-windows:
+- runs-on: ubuntu-18.04
++ runs-on: ubuntu-20.04
+ strategy:
+ matrix:
+ arch:
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f8d6a32..4da2405 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -84,9 +84,6 @@ find_package(FFmpeg)
+ if(FFMPEG_LIBRARIES)
+ cmake_push_check_state(RESET)
+ set(CMAKE_REQUIRED_LIBRARIES ${FFMPEG_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} -lm)
+- check_function_exists(av_packet_unref HAVE_AV_PACKET_UNREF)
+- check_function_exists(av_frame_alloc HAVE_AV_FRAME_ALLOC)
+- check_function_exists(av_frame_free HAVE_AV_FRAME_FREE)
+ cmake_pop_check_state()
+ endif()
+
+@@ -163,14 +160,11 @@ message(STATUS "Using ${FFT_LIB} for FFT calculations")
+ if(NOT AUDIO_PROCESSOR_LIB)
+ if(FFMPEG_LIBSWRESAMPLE_FOUND)
+ set(AUDIO_PROCESSOR_LIB "swresample")
+- elseif(FFMPEG_LIBAVRESAMPLE_FOUND)
+- set(AUDIO_PROCESSOR_LIB "avresample")
+ endif()
+ endif()
+
+ if(AUDIO_PROCESSOR_LIB STREQUAL "swresample")
+ if(FFMPEG_LIBSWRESAMPLE_FOUND)
+- set(USE_AVRESAMPLE OFF)
+ set(USE_SWRESAMPLE ON)
+ set(AUDIO_PROCESSOR_LIBRARIES ${FFMPEG_LIBSWRESAMPLE_LIBRARIES})
+ set(AUDIO_PROCESSOR_INCLUDE_DIRS ${FFMPEG_LIBSWRESAMPLE_INCLUDE_DIRS})
+@@ -178,16 +172,6 @@ if(AUDIO_PROCESSOR_LIB STREQUAL "swresample")
+ message(FATAL_ERROR "Selected ${AUDIO_PROCESSOR_LIB} for audio processing, but the library is not found")
+ endif()
+ message(STATUS "Using ${AUDIO_PROCESSOR_LIB} for audio conversion")
+-elseif(AUDIO_PROCESSOR_LIB STREQUAL "avresample")
+- if(FFMPEG_LIBAVRESAMPLE_FOUND)
+- set(USE_AVRESAMPLE ON)
+- set(USE_SWRESAMPLE OFF)
+- set(AUDIO_PROCESSOR_LIBRARIES ${FFMPEG_LIBAVRESAMPLE_LIBRARIES})
+- set(AUDIO_PROCESSOR_INCLUDE_DIRS ${FFMPEG_LIBAVRESAMPLE_INCLUDE_DIRS})
+- else()
+- message(FATAL_ERROR "Selected ${AUDIO_PROCESSOR_LIB} for audio processing, but the library is not found")
+- endif()
+- message(STATUS "Using ${AUDIO_PROCESSOR_LIB} for audio conversion")
+ else()
+ message(STATUS "Building without audio conversion support, please install FFmpeg with libswresample")
+ endif()
+diff --git a/src/audio/ffmpeg_audio_processor.h b/src/audio/ffmpeg_audio_processor.h
+index 7628fc7..39f4f6d 100644
+--- a/src/audio/ffmpeg_audio_processor.h
++++ b/src/audio/ffmpeg_audio_processor.h
+@@ -10,8 +10,6 @@
+
+ #if defined(USE_SWRESAMPLE)
+ #include "audio/ffmpeg_audio_processor_swresample.h"
+-#elif defined(USE_AVRESAMPLE)
+-#include "audio/ffmpeg_audio_processor_avresample.h"
+ #else
+ #error "no audio processing library"
+ #endif
+diff --git a/src/audio/ffmpeg_audio_processor_avresample.h b/src/audio/ffmpeg_audio_processor_avresample.h
+deleted file mode 100644
+index bd85f92..0000000
+--- a/src/audio/ffmpeg_audio_processor_avresample.h
++++ /dev/null
+@@ -1,72 +0,0 @@
+-// Copyright (C) 2016 Lukas Lalinsky
+-// Distributed under the MIT license, see the LICENSE file for details.
+-
+-#ifndef CHROMAPRINT_AUDIO_FFMPEG_AUDIO_PROCESSOR_AVRESAMPLE_H_
+-#define CHROMAPRINT_AUDIO_FFMPEG_AUDIO_PROCESSOR_AVRESAMPLE_H_
+-
+-extern "C" {
+-#include <libavresample/avresample.h>
+-}
+-
+-namespace chromaprint {
+-
+-class FFmpegAudioProcessor {
+-public:
+- FFmpegAudioProcessor() {
+- m_resample_ctx = avresample_alloc_context();
+- }
+-
+- ~FFmpegAudioProcessor() {
+- avresample_free(&m_resample_ctx);
+- }
+-
+- void SetCompatibleMode() {
+- av_opt_set_int(m_resample_ctx, "filter_size", 16, 0);
+- av_opt_set_int(m_resample_ctx, "phase_shift", 8, 0);
+- av_opt_set_int(m_resample_ctx, "linear_interp", 1, 0);
+- av_opt_set_double(m_resample_ctx, "cutoff", 0.8, 0);
+- }
+-
+- void SetInputChannelLayout(int64_t channel_layout) {
+- av_opt_set_int(m_resample_ctx, "in_channel_layout", channel_layout, 0);
+- }
+-
+- void SetInputSampleFormat(AVSampleFormat sample_format) {
+- av_opt_set_int(m_resample_ctx, "in_sample_fmt", sample_format, 0);
+- }
+-
+- void SetInputSampleRate(int sample_rate) {
+- av_opt_set_int(m_resample_ctx, "in_sample_rate", sample_rate, 0);
+- }
+-
+- void SetOutputChannelLayout(int64_t channel_layout) {
+- av_opt_set_int(m_resample_ctx, "out_channel_layout", channel_layout, 0);
+- }
+-
+- void SetOutputSampleFormat(AVSampleFormat sample_format) {
+- av_opt_set_int(m_resample_ctx, "out_sample_fmt", sample_format, 0);
+- }
+-
+- void SetOutputSampleRate(int sample_rate) {
+- av_opt_set_int(m_resample_ctx, "out_sample_fmt", sample_rate, 0);
+- }
+-
+- int Init() {
+- return avresample_open(m_resample_ctx);
+- }
+-
+- int Convert(uint8_t **out, int out_count, const uint8_t **in, int in_count) {
+- return avresample_convert(m_resample_ctx, out, 0, out_count, (uint8_t **) in, 0, in_count);
+- }
+-
+- int Flush(uint8_t **out, int out_count) {
+- return avresample_read(m_resample_ctx, out, out_count);
+- }
+-
+-private:
+- AVAudioResampleContext *m_resample_ctx = nullptr;
+-};
+-
+-}; // namespace chromaprint
+-
+-#endif
+diff --git a/src/audio/ffmpeg_audio_processor_swresample.h b/src/audio/ffmpeg_audio_processor_swresample.h
+index b86266b..b1d4bea 100644
+--- a/src/audio/ffmpeg_audio_processor_swresample.h
++++ b/src/audio/ffmpeg_audio_processor_swresample.h
+@@ -28,30 +28,28 @@ class FFmpegAudioProcessor {
+ av_opt_set_double(m_swr_ctx, "cutoff", 0.8, 0);
+ }
+
+- void SetInputChannelLayout(int64_t channel_layout) {
+- av_opt_set_int(m_swr_ctx, "icl", channel_layout, 0);
+- av_opt_set_int(m_swr_ctx, "ich", av_get_channel_layout_nb_channels(channel_layout), 0);
++ void SetInputChannelLayout(AVChannelLayout *channel_layout) {
++ av_opt_set_int(m_swr_ctx, "in_channel_layout", channel_layout->u.mask, 0);
+ }
+
+ void SetInputSampleFormat(AVSampleFormat sample_format) {
+- av_opt_set_int(m_swr_ctx, "isf", sample_format, 0);
++ av_opt_set_sample_fmt(m_swr_ctx, "in_sample_fmt", sample_format, 0);
+ }
+
+ void SetInputSampleRate(int sample_rate) {
+- av_opt_set_int(m_swr_ctx, "isr", sample_rate, 0);
++ av_opt_set_int(m_swr_ctx, "in_sample_rate", sample_rate, 0);
+ }
+
+- void SetOutputChannelLayout(int64_t channel_layout) {
+- av_opt_set_int(m_swr_ctx, "ocl", channel_layout, 0);
+- av_opt_set_int(m_swr_ctx, "och", av_get_channel_layout_nb_channels(channel_layout), 0);
++ void SetOutputChannelLayout(AVChannelLayout *channel_layout) {
++ av_opt_set_int(m_swr_ctx, "out_channel_layout", channel_layout->u.mask, 0);
+ }
+
+ void SetOutputSampleFormat(AVSampleFormat sample_format) {
+- av_opt_set_int(m_swr_ctx, "osf", sample_format, 0);
++ av_opt_set_sample_fmt(m_swr_ctx, "out_sample_fmt", sample_format, 0);
+ }
+
+ void SetOutputSampleRate(int sample_rate) {
+- av_opt_set_int(m_swr_ctx, "osr", sample_rate, 0);
++ av_opt_set_int(m_swr_ctx, "out_sample_rate", sample_rate, 0);
+ }
+
+ int Init() {
+diff --git a/src/audio/ffmpeg_audio_reader.h b/src/audio/ffmpeg_audio_reader.h
+index 5550164..1c6b346 100644
+--- a/src/audio/ffmpeg_audio_reader.h
++++ b/src/audio/ffmpeg_audio_reader.h
+@@ -62,7 +62,7 @@ class FFmpegAudioReader {
+ bool Read(const int16_t **data, size_t *size);
+
+ bool IsOpen() const { return m_opened; }
+- bool IsFinished() const { return m_finished && !m_got_frame; }
++ bool IsFinished() const { return !m_has_more_packets && !m_has_more_frames; }
+
+ std::string GetError() const { return m_error; }
+ int GetErrorCode() const { return m_error_code; }
+@@ -74,20 +74,19 @@ class FFmpegAudioReader {
+ uint8_t *m_convert_buffer[1] = { nullptr };
+ int m_convert_buffer_nb_samples = 0;
+
+- AVInputFormat *m_input_fmt = nullptr;
++ const AVInputFormat *m_input_fmt = nullptr;
+ AVDictionary *m_input_opts = nullptr;
+
+ AVFormatContext *m_format_ctx = nullptr;
+ AVCodecContext *m_codec_ctx = nullptr;
+- AVFrame *m_frame = nullptr;
+ int m_stream_index = -1;
+ std::string m_error;
+ int m_error_code = 0;
+- bool m_finished = false;
+ bool m_opened = false;
+- int m_got_frame = 0;
+- AVPacket m_packet;
+- AVPacket m_packet0;
++ bool m_has_more_packets = true;
++ bool m_has_more_frames = true;
++ AVPacket *m_packet = nullptr;
++ AVFrame *m_frame = nullptr;
+
+ int m_output_sample_rate = 0;
+ int m_output_channels = 0;
+@@ -98,19 +97,12 @@ class FFmpegAudioReader {
+
+ inline FFmpegAudioReader::FFmpegAudioReader() {
+ av_log_set_level(AV_LOG_QUIET);
+-
+- av_init_packet(&m_packet);
+- m_packet.data = nullptr;
+- m_packet.size = 0;
+-
+- m_packet0 = m_packet;
+ }
+
+ inline FFmpegAudioReader::~FFmpegAudioReader() {
+ Close();
+ av_dict_free(&m_input_opts);
+ av_freep(&m_convert_buffer[0]);
+- av_packet_unref(&m_packet0);
+ }
+
+ inline bool FFmpegAudioReader::SetInputFormat(const char *name) {
+@@ -135,11 +127,10 @@ inline bool FFmpegAudioReader::Open(const std::string &file_name) {
+
+ Close();
+
+- av_init_packet(&m_packet);
+- m_packet.data = nullptr;
+- m_packet.size = 0;
+-
+- m_packet0 = m_packet;
++ m_packet = av_packet_alloc();
++ if (!m_packet) {
++ return false;
++ }
+
+ ret = avformat_open_input(&m_format_ctx, file_name.c_str(), m_input_fmt, &m_input_opts);
+ if (ret < 0) {
+@@ -153,26 +144,31 @@ inline bool FFmpegAudioReader::Open(const std::string &file_name) {
+ return false;
+ }
+
+- AVCodec *codec;
++ const AVCodec *codec;
+ ret = av_find_best_stream(m_format_ctx, AVMEDIA_TYPE_AUDIO, -1, -1, &codec, 0);
+ if (ret < 0) {
+ SetError("Could not find any audio stream in the file", ret);
+ return false;
+ }
+ m_stream_index = ret;
++ auto stream = m_format_ctx->streams[m_stream_index];
+
+- m_codec_ctx = m_format_ctx->streams[m_stream_index]->codec;
++ m_codec_ctx = avcodec_alloc_context3(codec);
+ m_codec_ctx->request_sample_fmt = AV_SAMPLE_FMT_S16;
+
++ ret = avcodec_parameters_to_context(m_codec_ctx, stream->codecpar);
++ if (ret < 0) {
++ SetError("Could not copy the stream parameters", ret);
++ return false;
++ }
++
+ ret = avcodec_open2(m_codec_ctx, codec, nullptr);
+ if (ret < 0) {
+ SetError("Could not open the codec", ret);
+ return false;
+ }
+
+- if (!m_codec_ctx->channel_layout) {
+- m_codec_ctx->channel_layout = av_get_default_channel_layout(m_codec_ctx->channels);
+- }
++ av_dump_format(m_format_ctx, 0, "foo", 0);
+
+ m_frame = av_frame_alloc();
+ if (!m_frame) {
+@@ -183,19 +179,23 @@ inline bool FFmpegAudioReader::Open(const std::string &file_name) {
+ m_output_sample_rate = m_codec_ctx->sample_rate;
+ }
+
+- if (!m_output_channels) {
+- m_output_channels = m_codec_ctx->channels;
++ AVChannelLayout output_channel_layout;
++ if (m_output_channels) {
++ av_channel_layout_default(&output_channel_layout, m_output_channels);
++ } else {
++ m_output_channels = m_codec_ctx->ch_layout.nb_channels;
++ av_channel_layout_default(&output_channel_layout, m_output_channels);
+ }
+
+- if (m_codec_ctx->sample_fmt != AV_SAMPLE_FMT_S16 || m_codec_ctx->channels != m_output_channels || m_codec_ctx->sample_rate != m_output_sample_rate) {
++ if (m_codec_ctx->sample_fmt != AV_SAMPLE_FMT_S16 || m_codec_ctx->ch_layout.nb_channels != m_output_channels || m_codec_ctx->sample_rate != m_output_sample_rate) {
+ m_converter.reset(new FFmpegAudioProcessor());
+ m_converter->SetCompatibleMode();
+ m_converter->SetInputSampleFormat(m_codec_ctx->sample_fmt);
+ m_converter->SetInputSampleRate(m_codec_ctx->sample_rate);
+- m_converter->SetInputChannelLayout(m_codec_ctx->channel_layout);
++ m_converter->SetInputChannelLayout(&(m_codec_ctx->ch_layout));
+ m_converter->SetOutputSampleFormat(AV_SAMPLE_FMT_S16);
+ m_converter->SetOutputSampleRate(m_output_sample_rate);
+- m_converter->SetOutputChannelLayout(av_get_default_channel_layout(m_output_channels));
++ m_converter->SetOutputChannelLayout(&output_channel_layout);
+ auto ret = m_converter->Init();
+ if (ret != 0) {
+ SetError("Could not create an audio converter instance", ret);
+@@ -203,10 +203,11 @@ inline bool FFmpegAudioReader::Open(const std::string &file_name) {
+ }
+ }
+
++ av_channel_layout_uninit(&output_channel_layout);
++
+ m_opened = true;
+- m_finished = false;
+- m_got_frame = 0;
+- m_nb_packets = 0;
++ m_has_more_packets = true;
++ m_has_more_frames = true;
+ m_decode_error = 0;
+
+ return true;
+@@ -214,6 +215,7 @@ inline bool FFmpegAudioReader::Open(const std::string &file_name) {
+
+ inline void FFmpegAudioReader::Close() {
+ av_frame_free(&m_frame);
++ av_packet_free(&m_packet);
+
+ m_stream_index = -1;
+
+@@ -252,91 +254,98 @@ inline bool FFmpegAudioReader::Read(const int16_t **data, size_t *size) {
+ return false;
+ }
+
++ *data = nullptr;
++ *size = 0;
++
+ int ret;
++ bool needs_packet = false;
+ while (true) {
+- while (m_packet.size <= 0) {
+- av_packet_unref(&m_packet0);
+- av_init_packet(&m_packet);
+- m_packet.data = nullptr;
+- m_packet.size = 0;
+- ret = av_read_frame(m_format_ctx, &m_packet);
++ while (needs_packet && m_packet->size == 0) {
++ ret = av_read_frame(m_format_ctx, m_packet);
+ if (ret < 0) {
+ if (ret == AVERROR_EOF) {
+- m_finished = true;
++ needs_packet = false;
++ m_has_more_packets = false;
+ break;
+- } else {
++ }
++ SetError("Error reading from the audio source", ret);
++ return false;
++ }
++ if (m_packet->stream_index == m_stream_index) {
++ needs_packet = false;
++ } else {
++ av_packet_unref(m_packet);
++ }
++ }
++
++ if (m_packet->size != 0) {
++ ret = avcodec_send_packet(m_codec_ctx, m_packet);
++ if (ret < 0) {
++ if (ret != AVERROR(EAGAIN)) {
+ SetError("Error reading from the audio source", ret);
+ return false;
+ }
+- }
+- m_packet0 = m_packet;
+- if (m_packet.stream_index != m_stream_index) {
+- m_packet.data = nullptr;
+- m_packet.size = 0;
+ } else {
+- m_nb_packets++;
++ av_packet_unref(m_packet);
+ }
+ }
+
+- ret = avcodec_decode_audio4(m_codec_ctx, m_frame, &m_got_frame, &m_packet);
++ ret = avcodec_receive_frame(m_codec_ctx, m_frame);
+ if (ret < 0) {
+- if (m_decode_error) {
+- SetError("Error decoding audio frame", m_decode_error);
+- return false;
++ if (ret == AVERROR_EOF) {
++ m_has_more_frames = false;
++ } else if (ret == AVERROR(EAGAIN)) {
++ if (m_has_more_packets) {
++ needs_packet = true;
++ continue;
++ } else {
++ m_has_more_frames = false;
++ }
+ }
+- m_decode_error = ret;
+- m_packet.data = nullptr;
+- m_packet.size = 0;
+- continue;
++ SetError("Error decoding the audio source", ret);
++ return false;
+ }
+
+- break;
+- }
+-
+- m_decode_error = 0;
+-
+- const int decoded = std::min(ret, m_packet.size);
+- m_packet.data += decoded;
+- m_packet.size -= decoded;
+-
+- if (m_got_frame) {
+- if (m_converter) {
+- if (m_frame->nb_samples > m_convert_buffer_nb_samples) {
+- int linsize;
+- av_freep(&m_convert_buffer[0]);
+- m_convert_buffer_nb_samples = std::max(1024 * 8, m_frame->nb_samples);
+- ret = av_samples_alloc(m_convert_buffer, &linsize, m_codec_ctx->channels, m_convert_buffer_nb_samples, AV_SAMPLE_FMT_S16, 1);
+- if (ret < 0) {
+- SetError("Couldn't allocate audio converter buffer", ret);
++ if (m_frame->nb_samples > 0) {
++ if (m_converter) {
++ if (m_frame->nb_samples > m_convert_buffer_nb_samples) {
++ int linsize;
++ av_freep(&m_convert_buffer[0]);
++ m_convert_buffer_nb_samples = std::max(1024 * 8, m_frame->nb_samples);
++ ret = av_samples_alloc(m_convert_buffer, &linsize, m_codec_ctx->ch_layout.nb_channels, m_convert_buffer_nb_samples, AV_SAMPLE_FMT_S16, 1);
++ if (ret < 0) {
++ SetError("Couldn't allocate audio converter buffer", ret);
++ return false;
++ }
++ }
++ auto nb_samples = m_converter->Convert(m_convert_buffer, m_convert_buffer_nb_samples, (const uint8_t **) m_frame->data, m_frame->nb_samples);
++ if (nb_samples < 0) {
++ SetError("Couldn't convert audio", ret);
+ return false;
+ }
+- }
+- auto nb_samples = m_converter->Convert(m_convert_buffer, m_convert_buffer_nb_samples, (const uint8_t **) m_frame->data, m_frame->nb_samples);
+- if (nb_samples < 0) {
+- SetError("Couldn't convert audio", ret);
+- return false;
+- }
+- *data = (const int16_t *) m_convert_buffer[0];
+- *size = nb_samples;
+- } else {
+- *data = (const int16_t *) m_frame->data[0];
+- *size = m_frame->nb_samples;
+- }
+- } else {
+- if (m_finished && m_converter) {
+- auto nb_samples = m_converter->Flush(m_convert_buffer, m_convert_buffer_nb_samples);
+- if (nb_samples < 0) {
+- SetError("Couldn't convert audio", ret);
+- return false;
+- } else if (nb_samples > 0) {
+- m_got_frame = 1;
+ *data = (const int16_t *) m_convert_buffer[0];
+ *size = nb_samples;
++ } else {
++ *data = (const int16_t *) m_frame->data[0];
++ *size = m_frame->nb_samples;
++ }
++ } else {
++ if (m_converter) {
++ if (IsFinished()) {
++ auto nb_samples = m_converter->Flush(m_convert_buffer, m_convert_buffer_nb_samples);
++ if (nb_samples < 0) {
++ SetError("Couldn't convert audio", ret);
++ return false;
++ } else if (nb_samples > 0) {
++ *data = (const int16_t *) m_convert_buffer[0];
++ *size = nb_samples;
++ }
++ }
+ }
+ }
+- }
+
+- return true;
++ return true;
++ }
+ }
+
+ inline void FFmpegAudioReader::SetError(const char *message, int errnum) {
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index a2b517b..123e643 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -38,6 +38,12 @@ set(SRCS
+
+ if(BUILD_TOOLS)
+ set(SRCS ${SRCS} ../src/audio/ffmpeg_audio_reader_test.cpp)
++ include_directories(
++ ${FFMPEG_LIBAVFORMAT_INCLUDE_DIRS}
++ ${FFMPEG_LIBAVCODEC_INCLUDE_DIRS}
++ ${FFMPEG_LIBAVUTIL_INCLUDE_DIRS}
++ ${AUDIO_PROCESSOR_INCLUDE_DIRS}
++ )
+ link_libraries(fpcalc_libs)
+ endif()
+
diff --git a/media-libs/codec2/Manifest b/media-libs/codec2/Manifest
index d7a12c1b65ed..5b7d77cc3b5f 100644
--- a/media-libs/codec2/Manifest
+++ b/media-libs/codec2/Manifest
@@ -1,3 +1,5 @@
DIST codec2-1.1.0.tar.gz 14925316 BLAKE2B 7f99dfa5704c5b7df3efbb0cf5aeafe8d66e294f622dfa639ffe6ebe8b32b347a1632113763d6a3693a1f04451c3a5ff54592bda8cffa2d281847b775c62a561 SHA512 efc0f31b1a265c7acf38ab1c6c856f7a3cce58acec6c214d94cf9cd560efdca08859b317b396efb286176b0e235b2256080c8a2f83695424454b744275d1c661
+DIST codec2-1.1.1.tar.gz 14925322 BLAKE2B 4d9d712c54c13e544b33b3f68f7863dbca9aa8dd19b241a0b1ba2b0ea8aae1f6477d24b33bee20dff537e4ea6743dae3f251691964f6dd7866ccd57718b2a5ac SHA512 d59c644018f16d99e0c5a7e163a2888cb1250f822dd00df419ee454552c61774ff6cdb5b1cf0a9bc09f0395bd78cf1b1b39217b8d314d238d65dc4c922bcbec2
EBUILD codec2-1.1.0.ebuild 1230 BLAKE2B 036fabcac12d82e18171d30f35397d60bfbb6ec2f7abaec81f910d750fd89b51f208758ecb491e88bf5d87698357fb0451737ed575adce9ec987836a97fcf8d0 SHA512 fb21a9e9f7ae22deffac56f10bdd09ffd52e39b4e33a6d98cc971f7dfdd4790d9644107fe6ff124a21c08bb4f72790b478c2dffe166a163c79e32467b0977bab
+EBUILD codec2-1.1.1.ebuild 1236 BLAKE2B 96bdee9f5c80214fc7af82ca903ab7f2a19cf537208c9b0fa3bc3c0fdc95bcc3d958ced82704379a9169817c0e6dc4969e1aef8eb5e7cacf6ad0e2b71fea5127 SHA512 09a9b82bd9c9a3c5e04ac9887ad090a1de9f2d94787f389ba18b4e54996d5a19333b7716eea718a377a56c2593ed19a5262a0abc33b57c7d714f6e2972991287
MISC metadata.xml 326 BLAKE2B a7fc8408d6f6b58ad9d7019e858c703fd65ba38072dfefa381a5d00b500fe5d0ba024c2a3ed2d37e8e11da71f53bbfbeb80ead070935b9e83929d75d3a7852af SHA512 73c8e213262ac05ced95080d9e97a1e2abfdb2ad9e436ededda82de01feea321c3d499c8c2e8b3725a81b434e9efc4b12b321d738ab966d104e3344f4e29206b
diff --git a/media-libs/codec2/codec2-1.1.1.ebuild b/media-libs/codec2/codec2-1.1.1.ebuild
new file mode 100644
index 000000000000..7b8c5a0bc64b
--- /dev/null
+++ b/media-libs/codec2/codec2-1.1.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+DESCRIPTION="Low bit rate speech codec"
+HOMEPAGE="https://freedv.org/ https://www.rowetel.com/?page_id=452 https://github.com/drowe67/codec2"
+SRC_URI="https://github.com/drowe67/codec2/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/1.0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="examples test"
+
+# Not yet passing, but infrastructure added to run
+# Needs Octave dependencies like "signal"?
+# https://github.com/drowe67/codec2/commit/9a129f1b3ad12ecbf3df7f4460f496ee11e49c08#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R155
+RESTRICT="test"
+
+#BDEPEND="test? ( sci-mathematics/octave )"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ # tries to look for octave during configure phase if unit
+ # tests are turned on and bails out during configure if it
+ # cannot find it. since we have test dependency disabled
+ # for now, don't flip this configure flag
+ # -DUNITTEST=$(usex test) # reenable once tests wired up
+ -DUNITTEST=OFF
+ -DINSTALL_EXAMPLES=$(usex examples)
+ )
+
+ cmake_src_configure
+}
diff --git a/media-libs/gmmlib/Manifest b/media-libs/gmmlib/Manifest
index f8b5cc9e5fc8..d25d7651a800 100644
--- a/media-libs/gmmlib/Manifest
+++ b/media-libs/gmmlib/Manifest
@@ -2,6 +2,8 @@ AUX gmmlib-20.2.2_conditional_testing.patch 1151 BLAKE2B edeb2ff121efeb39e674bc6
AUX gmmlib-20.3.2_cmake_project.patch 145 BLAKE2B f42306b41a0c62ea9d3d5bfe3d1e1f85c23028e632c44f1cfe41a5fa47c7e94416ac1e5c58a4018a5da024d65e662c301e8d935994f6b53b52414a5f8081208c SHA512 feafa316267e903a25e7889fcbcfb31bd77402715d84d82464ae25f2cf013866c812b1c37bc1d64a8c5e1a0dd3f00e9333658532ad6d7abebf4f67bd6fc46d64
AUX gmmlib-22.1.1_custom_cflags.patch 2963 BLAKE2B af9979ee3c7977c93288b6afd0c0a65451f6f06cffbb00d32d53541410beded1feb6212bb0a5b7820e4ba8c4ee03656f274b94a26e0688e90e0ad140b37ee4a2 SHA512 933a9234f178ec566ca88fd3b48d746ac869936acfd5541d8b6b3cac3125c029054fe385101d734e5e35eeb9393f1609be96c9bcc2f1e0bb79a7295ccdd6c292
DIST intel-gmmlib-22.3.5.tar.gz 843587 BLAKE2B 671f09a2be66962762dc47c8ab51dbc3454f197b2f8a8da73e09d1f1cef2284d69ca97ff78a6b9fd1c7c93baf0b5773a89e0e7fa22f7bf106e7205f0f681e5f4 SHA512 1440fd9afdf9bdb6b9ab45529ec48cd434d7a9410cbf026c3dc7dc60b09a8fa067993540b953c354805a766ff001ef56c756a4c37d465a2ca801f6cc179ca532
+DIST intel-gmmlib-22.3.7.tar.gz 845054 BLAKE2B 0a5c284bc5aa32a6b79d0e36689665b8fb6157765e26f33b7aef800e515c6dc26527c011512d633d5d6160463f9f16a720a4e23fcbc9bb35c853a25a41a339ec SHA512 145e54da5c80c6f750847c496146c5853f92b90d1fa66695140052e0264d884069a459cf27bea7b742f1ac10817c00a369067512b9f2666c8b3c6cadf0233a2e
EBUILD gmmlib-22.3.5.ebuild 813 BLAKE2B 22a076971e6ad350428a30d4f235bd31fd63d546be2da6210af2a9a79dc12220096ef79e8be7b2913cb86da7ce3bf1a45e5ee1975a4c12a6f99effe9c18e0a5c SHA512 68e563aba1012af8f0474e34da6cfa40cd7e1f07bd4835e9f5bcfb0aaaa92b6e20c8b0fdbf8ab4c34b059c443203246af32e448975bcc8d5bb02217b4d0ffae8
+EBUILD gmmlib-22.3.7.ebuild 814 BLAKE2B ce6b3be2c671e8ae86bb64c7d9cf337003bc38fcb9c89a43a692f2885bf4cfffdd6c748daef4f39ab72a1b8c96af3ec149571e3e1cefb93fdfee563fd97e386f SHA512 c4c6b82b137f753de446287aa2ae69a6da36fa8e518d6c185cbec27d7e3a9301f9a59b515fc4a70a51669649404d1588f7bc75fc0f3a2801ff8f73a52d9dc876
EBUILD gmmlib-9999.ebuild 893 BLAKE2B efb2985d5a9a68f687ef642de812d57558c81ce194fbb9583e738c57e3ac8768ee0fb85f031bb01d6c26fc0fa2c03a820d49404c9cb14e5531f7bc0b393cfa47 SHA512 8972b9dc98de7def5ffaebfa82965e82bec35ea6c1c4642b0143b339752e466825b7898bdd13759dfd8e77cb2b15d6161d15b3f7e7448fd17f63fdac201933d2
MISC metadata.xml 478 BLAKE2B 22fa7744f1f6ae793034225645314ed7f0a5499cc33b570a00aa2c076cb3fdc9c2663654df4998a30fc76f7d833ed4f2022fd8b2869539e25c47f64e6b0f438a SHA512 0c46a6af2f254ee9c314f08654739003f58283e3ec00a8a3e628225e14065d359d0816a05aba1754379dea826d1bf2d501fb35ba58c5020f036917771ea035d9
diff --git a/media-libs/gmmlib/gmmlib-22.3.7.ebuild b/media-libs/gmmlib/gmmlib-22.3.7.ebuild
new file mode 100644
index 000000000000..21abbf34e428
--- /dev/null
+++ b/media-libs/gmmlib/gmmlib-22.3.7.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_BUILD_TYPE="Release"
+
+inherit cmake-multilib
+
+DESCRIPTION="Intel Graphics Memory Management Library"
+HOMEPAGE="https://github.com/intel/gmmlib"
+SRC_URI="https://github.com/intel/gmmlib/archive/intel-${P}.tar.gz"
+S="${WORKDIR}/${PN}-intel-${P}"
+
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0/12.3"
+IUSE="+custom-cflags test"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-20.2.2_conditional_testing.patch
+ "${FILESDIR}"/${PN}-20.3.2_cmake_project.patch
+ "${FILESDIR}"/${PN}-22.1.1_custom_cflags.patch
+)
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_TESTING="$(usex test)"
+ -DBUILD_TYPE="Release"
+ -DOVERRIDE_COMPILER_FLAGS="$(usex !custom-cflags)"
+ )
+
+ cmake_src_configure
+}
diff --git a/media-libs/intel-mediasdk/Manifest b/media-libs/intel-mediasdk/Manifest
index 66b9d9f97911..ad2e44aedc9a 100644
--- a/media-libs/intel-mediasdk/Manifest
+++ b/media-libs/intel-mediasdk/Manifest
@@ -1,7 +1,5 @@
AUX intel-mediasdk-23.2.0-gcc13.patch 336 BLAKE2B beaea84539f84540be73863d2bafb8fe1f4b33c1c3d5d82c5480ab990cd64267e2a3c05fc4b5001c84fcfec565de16379ff1c440330f46971273dd349c265444 SHA512 fe7bbe6b62b775127d4550d997c7b27631416f6d136a71eb11d4bd589d42db5a2a41d275d72f23f0c14d29aa0de2764cf828542771e5a1e2fcb1acf16fc8524d
-DIST intel-mediasdk-23.2.1.tar.gz 22528440 BLAKE2B ee1da0ab86dfce2bb69df3b03fd6773550cbd974ff7461a1ff46a69913194bb7b71a184985f54d82532f6cdd3d5970439bfd9423260849a7cd09541feda59154 SHA512 f37bfb2b2358dbbe68075f03a0ab9b387b063639ad31c247b5d61fb009bc5cc51642109af6dbdeeb07988a3fdd08a5d2f280b2460dfa6c7fc77047c4336e2499
DIST intel-mediasdk-23.2.2.tar.gz 22527304 BLAKE2B aa0e7b0fabc1bd376511a1022da5e40ea282c4f016384e8bc20fb4e28693e3bb06816ad790da1a708f623ac3a6e6b2f704f785dd4e6cd5c9db320f63c8bded78 SHA512 d4cfebee4f689b93c0171775ff2bab449f801c55822c5b800fe3217653d197216cf2a95dea115cf51f308e158adea7a271f03081b011e024c16bf7915fdcd586
-EBUILD intel-mediasdk-23.2.1.ebuild 2134 BLAKE2B 1acd2c39cb8e02c1feaa155daf607e8a211b6cd1b890f5919e7b619df639f5c4f55efebb205a720177235abe95bdf410db33633fb2a3788e9e039da03030da85 SHA512 7f0c38ab2ea12e8efbf4c178e7a795593fb995f03b2d68138b6314a69dbeec255c598db70374836182f341155f03f5ae93d49a3632c460dae190ddca7b257f17
EBUILD intel-mediasdk-23.2.2.ebuild 2134 BLAKE2B 1acd2c39cb8e02c1feaa155daf607e8a211b6cd1b890f5919e7b619df639f5c4f55efebb205a720177235abe95bdf410db33633fb2a3788e9e039da03030da85 SHA512 7f0c38ab2ea12e8efbf4c178e7a795593fb995f03b2d68138b6314a69dbeec255c598db70374836182f341155f03f5ae93d49a3632c460dae190ddca7b257f17
EBUILD intel-mediasdk-9999.ebuild 2024 BLAKE2B f935f5a5bd9cc42db08ca3430ed1fba806cab08cafc8be1bfbdc202f29f93daf565ffe929a9f4842085b47d27672336b153d738dd1e252a9fdc897b50575a950 SHA512 f311ed3e54a0ec6cee30826a68dc75588effe77a691e622cef335b4e63044e6678b8198e20899904871f8f2fa64ccddb22bf6823b5739737378f1c1304295965
MISC metadata.xml 507 BLAKE2B 1e08efd32142406ac7fc4390a10f51b117bbaf56fc2006ed508bf026d2720447a782f2e86ba323017dc6388ca18e4743688eaf1a8fb7165bc6377194b4139d0b SHA512 ef8d11178dcded14cb74c49e01bedde8986ff8aa02641c275d5a36ca3973782955f90d0c25ef728ca120fc1a46f1f3965f4b5a36376203c6f6cb9b1411af52e1
diff --git a/media-libs/intel-mediasdk/intel-mediasdk-23.2.1.ebuild b/media-libs/intel-mediasdk/intel-mediasdk-23.2.1.ebuild
deleted file mode 100644
index a0674e307b13..000000000000
--- a/media-libs/intel-mediasdk/intel-mediasdk-23.2.1.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake-multilib optfeature
-
-if [[ ${PV} == *9999 ]] ; then
- : ${EGIT_REPO_URI:="https://github.com/Intel-Media-SDK/MediaSDK"}
- if [[ ${PV%9999} != "" ]] ; then
- : ${EGIT_BRANCH:="release/${PV%.9999}"}
- fi
- inherit git-r3
-fi
-
-DESCRIPTION="Intel Media SDK"
-HOMEPAGE="https://github.com/Intel-Media-SDK/MediaSDK"
-if [[ ${PV} == *9999 ]] ; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/Intel-Media-SDK/MediaSDK/archive/intel-mediasdk-${PV}.tar.gz"
- S="${WORKDIR}/MediaSDK-intel-mediasdk-${PV}"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-IUSE="dri test tools wayland X"
-# Test not working at the moment
-#RESTRICT="!test? ( test )"
-RESTRICT="test"
-REQUIRED_USE="
- dri? ( X )
-"
-
-# x11-libs/libdrm[video_cards_intel] for intel_bufmgr.h in samples
-# bug #805224
-RDEPEND="
- x11-libs/libpciaccess[${MULTILIB_USEDEP}]
- >=media-libs/libva-intel-media-driver-${PV}[${MULTILIB_USEDEP}]
- media-libs/libva[X?,wayland?,${MULTILIB_USEDEP}]
- x11-libs/libdrm[video_cards_intel,${MULTILIB_USEDEP}]
- wayland? (
- dev-libs/wayland[${MULTILIB_USEDEP}]
- )
- X? (
- x11-libs/libX11[${MULTILIB_USEDEP}]
- x11-libs/libxcb[${MULTILIB_USEDEP}]
- )
-"
-DEPEND="${RDEPEND}
- wayland? (
- dev-libs/wayland-protocols
- )
-"
-BDEPEND="
- wayland? (
- dev-util/wayland-scanner
- )
-"
-
-PATCHES=(
- # https://github.com/Intel-Media-SDK/MediaSDK/pull/2998
- "${FILESDIR}/${PN}-23.2.0-gcc13.patch"
-)
-
-multilib_src_configure() {
- local mycmakeargs=(
- # OpenCL only has an effect if we build kernels
- -DENABLE_OPENCL=OFF
- -DBUILD_TUTORIALS=OFF
- # Need to package the cm-compiler to build kernels, use pre-built instead
- -DBUILD_KERNELS=OFF
- -DBUILD_RUNTIME=ON
- -DBUILD_DISPATCHER=ON
- -DBUILD_TOOLS="$(usex tools)"
- # Cannot build tools without samples
- -DBUILD_SAMPLES="$(usex tools)"
- -DBUILD_TESTS="$(usex test)"
- -DENABLE_X11="$(usex X)"
- -DENABLE_X11_DRI3="$(usex dri)"
- -DENABLE_WAYLAND="$(usex wayland)"
- )
-
- cmake_src_configure
-}
-
-pkg_postinst() {
- optfeature "Intel GPUs newer then, and including, Intel Xe" media-libs/oneVPL-intel-gpu
-}
diff --git a/media-libs/libjpeg-turbo/Manifest b/media-libs/libjpeg-turbo/Manifest
index cd54abcc289b..3ebbd95133ec 100644
--- a/media-libs/libjpeg-turbo/Manifest
+++ b/media-libs/libjpeg-turbo/Manifest
@@ -4,5 +4,5 @@ DIST libjpeg-turbo-2.1.5.1.tar.gz 2264936 BLAKE2B 9583a0a91e45347d651de6bf5192a2
DIST libjpeg8_8d-2.debian.tar.gz 14764 BLAKE2B e93d12afa062da28b717b540492221f70e8d9ccf3885371647cf85a2937f938ca723d4a27d5e1c5d79c26aa25dddf69b38754558851a1704172e8b52baf8e17c SHA512 8c5959fb7583a2d61e9442187f67b91b45e72d9dd30db3360d583a3b5d8e1a908db5659f760bdd455b3056e6ae3535b2fd3b847df3d58b140a1816b754003675
EBUILD libjpeg-turbo-2.1.3.ebuild 3135 BLAKE2B fc8a7318c20e87410236f28ce3e93cae7c706db44f0244f34e9e939ea515e66736661180f55a946d85eb1bb73b90b8b6e683a94930f4bed547c6c8b50527a1fd SHA512 529864d47d0b1e984c747c9e37ba1fdaf767de7174859cd49690f8b142a81461fd04848794a6a1b45bac51cf05360222998c573c32a43aa82ffc45cb312da097
EBUILD libjpeg-turbo-2.1.4.ebuild 3120 BLAKE2B e3d070e19bbe3e2bd308ddd062e3a4a96d627655e5602579b34090cce05706bd699e343e91e5ffeb2bdc4eed3c43d6eaa10890601fa3a23694e8f593f2eb088e SHA512 b607bf5308c23b64d9fbd77d9015227d7b58a228a0e3d9a40353ba061582a8284c3430873a9282417a360f9e55acdfd8af50b56596b9394739d5120441614b5d
-EBUILD libjpeg-turbo-2.1.5.1.ebuild 3144 BLAKE2B 4abd2caa51a9107480d80a39e03888afb1e6c3abf59bbabe1e3d83cbaadc9d95bc21a83de61904bcb187ef45c24900e02e3353feacc2842e0064ca033ce82f8f SHA512 e847e8e95cd3b787a4d4b36391333180bf75400484e1443e0be5b7ec2fe58213e52defdeb2a74d0b80c1d7b93faad7b3a0a72ad86027458db885b1780108c94d
+EBUILD libjpeg-turbo-2.1.5.1.ebuild 3138 BLAKE2B 354c5f0b3d57c0dfe1ac339d8fc2b8c2a494c8d74126f86e2784c3cd9313b12978409f31ea9606dc966c8371efffdccbc11cd37025cb9bfcfa224ecf2d948316 SHA512 6251d0a51721d18cfc1b38d4bca54173e91e8cb82f061ad83a232dfc08fa14567b6f2dc65ac07afefd8922dce7650f3fce83d4aecf1635b0a258d422ff31a6a3
MISC metadata.xml 567 BLAKE2B b4e2dc1098bc3a518b8af80dd63a9d6d000c6a62ab26e9d7792743b10955738bfccde4f6e32d46599194d8f63066913dad4b20c7a8674917d7bf9cd217a0f9bc SHA512 d9af7f4a6ca425c6ae75ac96da3b4467c62dc3baa0be04e590dc821f17e03e12279ed1faf2e66944ce0bed9ed0c9b176e7e372278062588db7adc9ed71f200c1
diff --git a/media-libs/libjpeg-turbo/libjpeg-turbo-2.1.5.1.ebuild b/media-libs/libjpeg-turbo/libjpeg-turbo-2.1.5.1.ebuild
index ef3f4d227087..2a25e037a2fc 100644
--- a/media-libs/libjpeg-turbo/libjpeg-turbo-2.1.5.1.ebuild
+++ b/media-libs/libjpeg-turbo/libjpeg-turbo-2.1.5.1.ebuild
@@ -15,7 +15,7 @@ SRC_URI="
LICENSE="BSD IJG ZLIB"
SLOT="0/0.2"
if [[ $(ver_cut 3) -lt 90 ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos ~x64-solaris"
fi
IUSE="cpu_flags_arm_neon java static-libs"
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index cb1a2db816dd..f0466aeb564b 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -5,5 +5,6 @@ AUX mlt-7.14.0-int-conversion.patch 2244 BLAKE2B f4b786fbc5ec7ba14469e63f9c42946
DIST mlt-7.14.0.tar.gz 1509786 BLAKE2B 6a590bb85f9c1f35cffce393db0ae016351ed9713d37bb22232474df27fc8f647847e9aed6ba6a8a00787a69136533fbb9f2adfb7b4743e2bdee9b146ebbe02a SHA512 9f30b06fd4a38fe41547f3b3919a6cb809f2493ef71af2c7a16029ba7b4a7b633db56c0fabafb1745b6072cd9de4db4131fe55afc66c06fd3dd016c33eb828cc
DIST mlt-7.16.0.tar.gz 1577046 BLAKE2B 810583888cbbd066a6addaf98fc0f9b9e5b7b0063f8442b8d1c26ca2454103bb199656d55348a3b325cf0ea44833296cbf61ae088631609b70c1918cfdb09e08 SHA512 35844a5fe6565ce8908c81f341fffe79e651fe1a6b05fde53338053a8dae774112f0caeb16059febba2a5a418d9674c17ddc2016899c8a24aefa501e812cc3df
EBUILD mlt-7.14.0-r1.ebuild 3667 BLAKE2B cc1af34229460f10e86d15307e7b378682d99c2f565517874f1734c0e1dbeda2a5ee8c1c3561e33a71fd952e4d63709450105e55c1851e6afefd6acdd2d2296f SHA512 71709290ffe923617e01844621b18b414c8b022b6825cf02d91c15657707121b39dc1dcd970aeef5178b1eabf7291cac1cbe135f3c3c6d824b3033664891be84
+EBUILD mlt-7.16.0-r1.ebuild 3635 BLAKE2B d4e1b20268a4109eb153532d177de365e1445fb8723be4305e9d75251f8b3de8dea67c16ad569f27f1c84b3f06d56d20411a0adf2e0e0f0e18f36ac369cf2ab6 SHA512 a21ae3f88e70c3e42b0e1303fa134bf01703058ec78337df4ee7a27be20d7696942556a45e8f95e64ece053eca8e8d1c9e2cbf1331db5d5636877608b7fb7df7
EBUILD mlt-7.16.0.ebuild 3642 BLAKE2B ab194b87b6175a4222ceaa158885533936ffdd4423c2cb2ba798f924a6e150f1ebe8f0d70b1999797caf999bc8c6df3f72062ced5bf0bd417fa6e9613f2a6b7b SHA512 b9318743094c86c3e0aad66dfd37105f2adb824f719d1b192307b644a3457d5c482f7bbe0620050d9a879389cbacb695b726a1bdb8263cdb4e280a8e548c9888
MISC metadata.xml 1412 BLAKE2B 8d4eed394f1d1e95e5559466ef1840978966e8f1f7b89fdfd2549b2a35b6ce8f114c9373374fdaefe320cc34a4dc8cbd9f6c4433740d1ae9680de54484b5e3d1 SHA512 b19c711dc3798f952e0223dc0628b25aa3c9a296d66ee2f2b7f46a55b82e71c0c583ee64517be88dcc55eb1e9c31aa782b9043eb7630a853077afb1bf8b4dedd
diff --git a/media-libs/mlt/mlt-7.16.0-r1.ebuild b/media-libs/mlt/mlt-7.16.0-r1.ebuild
new file mode 100644
index 000000000000..f33a210e4852
--- /dev/null
+++ b/media-libs/mlt/mlt-7.16.0-r1.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+inherit python-single-r1 cmake
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/7"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug ffmpeg frei0r gtk jack libsamplerate opencv opengl python qt5 rtaudio rubberband sdl test vdpau vidstab xine xml"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# Needs unpackaged 'kwalify'
+RESTRICT="test"
+
+# rtaudio will use OSS on non linux OSes
+# Qt already needs FFTW/PLUS so let's just always have it on to ensure
+# MLT is useful: bug #603168.
+DEPEND="
+ >=media-libs/libebur128-1.2.2:=
+ sci-libs/fftw:3.0=
+ ffmpeg? ( media-video/ffmpeg:0=[vdpau?] )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ virtual/jack
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ opencv? ( >=media-libs/opencv-4.5.1:=[contrib] )
+ opengl? (
+ media-libs/libglvnd
+ media-video/movit
+ )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ )
+ rtaudio? (
+ >=media-libs/rtaudio-4.1.2
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ rubberband? ( media-libs/rubberband )
+ sdl? (
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/sdl2-image
+ )
+ vidstab? ( media-libs/vidstab )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )
+"
+# java? ( >=virtual/jre-1.8:* )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# ruby? ( ${RUBY_DEPS} )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+RDEPEND="${DEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ python? ( >=dev-lang/swig-2.0 )
+"
+
+DOCS=( AUTHORS NEWS README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
+ "${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
+ "${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ # Respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ if use python; then
+ sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/python/build || die
+ python_fix_shebang src/swig/python
+ fi
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DCLANG_FORMAT=OFF
+ -DGPL=ON
+ -DGPL3=ON
+ -DBUILD_TESTING=$(usex test)
+ -DMOD_KDENLIVE=ON
+ -DMOD_SDL1=OFF
+ -DMOD_SDL2=$(usex sdl)
+ -DMOD_AVFORMAT=$(usex ffmpeg)
+ -DMOD_PLUS=ON
+ -DMOD_FREI0R=$(usex frei0r)
+ -DMOD_GDK=$(usex gtk)
+ -DMOD_JACKRACK=$(usex jack)
+ -DMOD_GLAXNIMATE=OFF
+ -DMOD_RESAMPLE=$(usex libsamplerate)
+ -DMOD_OPENCV=$(usex opencv)
+ -DMOD_MOVIT=$(usex opengl)
+ -DMOD_QT=$(usex qt5)
+ -DMOD_RTAUDIO=$(usex rtaudio)
+ -DMOD_RUBBERBAND=$(usex rubberband)
+ -DMOD_VIDSTAB=$(usex vidstab)
+ -DMOD_XINE=$(usex xine)
+ -DMOD_XML=$(usex xml)
+ -DMOD_SOX=OFF
+ )
+
+ # TODO: rework upstream CMake to allow controlling MMX/SSE/SSE2
+ # TODO: add swig language bindings?
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ if use python; then
+ mycmakeargs+=( -DSWIG_PYTHON=ON )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ #
+ # Install SWIG bindings
+ #
+
+ docinto swig
+
+ if use python; then
+ dodoc "${S}"/src/swig/python/play.py
+ python_optimize
+ fi
+}
diff --git a/media-libs/oneVPL-intel-gpu/Manifest b/media-libs/oneVPL-intel-gpu/Manifest
index bd5095de3cef..6cc83e8715c8 100644
--- a/media-libs/oneVPL-intel-gpu/Manifest
+++ b/media-libs/oneVPL-intel-gpu/Manifest
@@ -1,5 +1,5 @@
-DIST oneVPL-intel-gpu-23.2.1.tar.gz 6987103 BLAKE2B f4634aecfe3baba96b230d56915f864c1655c725fd05c72be9033406794afa7f501c42c13c442d676367a0ddbe176fcec9c1df6ec3013320fe3af2e348879ab8 SHA512 c097b0eb1879303d9138f8e92110216cd2e703ab3ad0ef2890678734b26b73037abc4724531f3ce4628993790f8de12bde82a9097df0f42e12a88b10ba5a9ae5
DIST oneVPL-intel-gpu-23.2.2.tar.gz 6989173 BLAKE2B 5e0d65f320df1b7c7bba4524b51f525a71595a33e6954b0f74e1b913e0e001e55321c93c43d18dc915fc29ae4c73d408852d993084564e74ea85a75d0e959fa9 SHA512 d419519c2369444ad0daf4ff6f12ddd57e4ffb6dcba05f686490adff65c693db563d306ab9ce76fa9d21d3c4b1b01717d0a8a1d63f595d6ceb43c11657dde7af
-EBUILD oneVPL-intel-gpu-23.2.1.ebuild 1189 BLAKE2B b18f9405ece1aaf46f2bfc3ed514eb5ccbc16489412414b8a6e612c1fd34418fd85d801d4c2a786d8d6764163cc5b2a6f82b18086022a547b6666fedaf7446b1 SHA512 0279e6caa0ef6e730314b3ed8a7a64188f883375e439fd287761fab69967038b093c21e5437c5775f8b2196fc01d75fe8c2a21e4ae9c4bd46584113ba82fd8e4
+DIST oneVPL-intel-gpu-23.2.3.tar.gz 6989464 BLAKE2B 3e58be00fec9c7c8bb296e79a8910035b3423ce2baea73f3f9b96c7b88e9df37e86f6622a97f6cbe234495f54db2b764edb5bd088168abb6e9b47f041b3f991a SHA512 45039f16116053ab4d7b0b2081f267187105ce728c15236b90b835e1f70f97c3d2905b04b42d5b7ea2147ad4a305e15c705935a93a3252afc57bafc865e425c2
EBUILD oneVPL-intel-gpu-23.2.2.ebuild 1189 BLAKE2B b18f9405ece1aaf46f2bfc3ed514eb5ccbc16489412414b8a6e612c1fd34418fd85d801d4c2a786d8d6764163cc5b2a6f82b18086022a547b6666fedaf7446b1 SHA512 0279e6caa0ef6e730314b3ed8a7a64188f883375e439fd287761fab69967038b093c21e5437c5775f8b2196fc01d75fe8c2a21e4ae9c4bd46584113ba82fd8e4
+EBUILD oneVPL-intel-gpu-23.2.3.ebuild 1189 BLAKE2B b18f9405ece1aaf46f2bfc3ed514eb5ccbc16489412414b8a6e612c1fd34418fd85d801d4c2a786d8d6764163cc5b2a6f82b18086022a547b6666fedaf7446b1 SHA512 0279e6caa0ef6e730314b3ed8a7a64188f883375e439fd287761fab69967038b093c21e5437c5775f8b2196fc01d75fe8c2a21e4ae9c4bd46584113ba82fd8e4
MISC metadata.xml 434 BLAKE2B f5f6ea2e0ebac9ba06ebdb2a8469e99171f25ad08d8e992695e7d189f5c3f8fb3e966d710fe02cbd1f590f2137e265d9bf5014f0d9e7a492574b526360d70133 SHA512 713bf6044fd4d5606568af248dc0adf1a93c5917fb7d6d79c7a033a5b52a0164769b02086caa0a4492979c586511b5a4d7b85fe603ffe80d4884786e05dc520e
diff --git a/media-libs/oneVPL-intel-gpu/oneVPL-intel-gpu-23.2.1.ebuild b/media-libs/oneVPL-intel-gpu/oneVPL-intel-gpu-23.2.3.ebuild
index 6d87d22aff64..6d87d22aff64 100644
--- a/media-libs/oneVPL-intel-gpu/oneVPL-intel-gpu-23.2.1.ebuild
+++ b/media-libs/oneVPL-intel-gpu/oneVPL-intel-gpu-23.2.3.ebuild
diff --git a/media-libs/oneVPL/Manifest b/media-libs/oneVPL/Manifest
index d736682d2c45..31c4d3dd0329 100644
--- a/media-libs/oneVPL/Manifest
+++ b/media-libs/oneVPL/Manifest
@@ -1,3 +1,5 @@
DIST oneVPL-2023.2.1.tar.gz 6315268 BLAKE2B f5b5609c27f5f2eddd4533480e053bd6868eab736b88fca5b061311374d8a4f2cadec100ad313b8a062604c6b38848d33a26a775524c250dbef7e2930204d82f SHA512 333df9fc58b9d1d0c832241420321f8cbc84d722d1453f24b7f1990ae1e3065b103940d88f84d7d339b527c4cf5fe6e72c6eaa0b2c736d1b980e09228093f279
+DIST oneVPL-2023.3.0.tar.gz 6310097 BLAKE2B 09d63cbed73a93727f770306ca4ee4b6418f87ffe2d0d6f53988569028ad8dba4226e5a4d19dedc4b5e10f037a798683e74acd456469413c9f7161c30bb5b010 SHA512 2f3b8f6b3bb26df062bf7e962ae45eb11f5a60d24f7a69e653e7afc9c0c7960b1c708a2d1c5bf18ad5e2981b01f877a08be2c7513bfc30b62574cd932ea9549b
EBUILD oneVPL-2023.2.1.ebuild 2291 BLAKE2B 7626732399eaa222ca9b8067d5a9e3f00e3e108ee5ee68482090bd9bd17e57cfa8c2b494ad618fd565232a814bf00f231e1b743134cc482a8e3c525b320a6035 SHA512 41eb1ab0d5da32801d3cbc0251131eb928a3f843e4f6f870b23a51cd41db3e57e8dcdecaf04e31221cef40755ba2aa8fa3d3ddcb830bd2374592c5d489e75fa3
+EBUILD oneVPL-2023.3.0.ebuild 2291 BLAKE2B 7626732399eaa222ca9b8067d5a9e3f00e3e108ee5ee68482090bd9bd17e57cfa8c2b494ad618fd565232a814bf00f231e1b743134cc482a8e3c525b320a6035 SHA512 41eb1ab0d5da32801d3cbc0251131eb928a3f843e4f6f870b23a51cd41db3e57e8dcdecaf04e31221cef40755ba2aa8fa3d3ddcb830bd2374592c5d489e75fa3
MISC metadata.xml 633 BLAKE2B b53305f7c1127190352b5ba25b43411455eba014b85a2305abe07571c2d95c6e1a60b1f1872895b94b7e6292178966c5b3733d7c8b5b9d1c16925f153d60e00d SHA512 a1dcf8c3fe13311bd81d48c3afd76de850b7fc395ae89e2f5973811525e56e69c12de2c83ce8e25971ab4330ed80ba4794051e5826c271f62b86116bc520d81a
diff --git a/media-libs/oneVPL/oneVPL-2023.3.0.ebuild b/media-libs/oneVPL/oneVPL-2023.3.0.ebuild
new file mode 100644
index 000000000000..0758b6389a95
--- /dev/null
+++ b/media-libs/oneVPL/oneVPL-2023.3.0.ebuild
@@ -0,0 +1,82 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib optfeature
+
+DESCRIPTION="oneAPI Video Processing Library, dispatcher, tools, and examples"
+HOMEPAGE="https://github.com/oneapi-src/oneVPL"
+SRC_URI="https://github.com/oneapi-src/oneVPL/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="dri drm examples experimental tools test vaapi wayland X"
+RESTRICT="!test? ( test )"
+# Tools fails to compile on 32-bit
+REQUIRED_USE="
+ dri? ( X drm )
+ X? ( vaapi )
+ wayland? ( drm )
+ abi_x86_32? ( !tools )
+ abi_x86_x32? ( !tools )
+"
+
+RDEPEND="
+ x11-libs/libpciaccess[${MULTILIB_USEDEP}]
+ vaapi? ( media-libs/libva[X?,wayland?,drm(+)?,${MULTILIB_USEDEP}] )
+ drm? ( x11-libs/libdrm[${MULTILIB_USEDEP}] )
+ wayland? (
+ dev-libs/wayland[${MULTILIB_USEDEP}]
+ )
+ X? (
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libxcb[${MULTILIB_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}
+ wayland? (
+ dev-libs/wayland-protocols
+ )
+"
+BDEPEND="virtual/pkgconfig"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ -DBUILD_DISPATCHER=ON
+ # Headers, cmake and pkgconfig files
+ -DBUILD_DEV=ON
+ -DBUILD_EXAMPLES="$(usex examples)"
+ -DINSTALL_EXAMPLE_CODE="$(usex examples)"
+ -DBUILD_PREVIEW="$(usex experimental)"
+ -DBUILD_DISPATCHER_ONEVPL_EXPERIMENTAL="$(usex experimental)"
+ # Fails to build with experimental tools off if tools on
+ -DBUILD_TOOLS_ONEVPL_EXPERIMENTAL="$(usex tools)"
+ -DBUILD_TESTS="$(usex test)"
+ -DBUILD_TOOLS="$(usex tools)"
+ -DENABLE_WAYLAND="$(usex wayland)"
+ -DENABLE_X11="$(usex X)"
+ -DENABLE_DRI3="$(usex dri)"
+ -DENABLE_VA="$(usex vaapi)"
+ -DENABLE_DRM="$(usex drm)"
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
+ -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc"
+ )
+ cmake_src_configure
+}
+
+multilib_src_install() {
+ cmake_src_install
+ # Remove these license files
+ rm -r "${ED}/usr/share/vpl/licensing" || die
+}
+
+pkg_postinst() {
+ optfeature_header "This package provides only the dispatcher, to use it install one or more implementations"
+ optfeature "CPUs" media-libs/oneVPL-cpu
+ optfeature "Intel GPUs newer then, and including, Intel Xe" media-libs/oneVPL-intel-gpu
+ optfeature "Intel GPUs older then Intel Xe" media-libs/intel-mediasdk
+}
diff --git a/media-libs/svt-av1/Manifest b/media-libs/svt-av1/Manifest
index ff1435b54dd0..97c5fafbd419 100644
--- a/media-libs/svt-av1/Manifest
+++ b/media-libs/svt-av1/Manifest
@@ -4,6 +4,6 @@ DIST SVT-AV1-v1.5.0.tar.bz2 9490521 BLAKE2B 6f54c1706ed65b8248bc434411cfdea58697
DIST svt-av1-1.1.0.tar.gz 9882945 BLAKE2B 2673fdbe17b36607e581cc540ca181672d16b3fbc0dd9c1a8b100ebea6b7a6872d6fa55976cb19c1c8afd50c5c09b67fbec1bcc892007ccd41e7f7ad68027d83 SHA512 87d661183de33554d228c2fa72deb9a945f2550083eb25688b4dc0676be384373a6a52af235066d85ce963ffbc7751c8afb46a2bc1c09e00f81ea0db5a232522
EBUILD svt-av1-1.1.0.ebuild 1230 BLAKE2B c052068cc58e86e6f8147b5fdadf06633dcfe6fcb4dd020783e151be6dec1f59a8e1f0fce7ce7164cf0980973dcd579b0aadbd5a063dd1b26d4db5cd427a54d6 SHA512 3be02f20fe8ad0b4990d669bea9a9e266f65c529a41dfbf833e5477fcd6534f7a515ced45612862fe8213acd577eea30699e0c84bb9e5ba60e78c743785a4bef
EBUILD svt-av1-1.4.1.ebuild 1351 BLAKE2B d9d2c3936b391ab1ca9e55a0d54f8f01211df8860cb44d9a35901e0354674a9daa483cd15bcde347d0ebcd10da110e0a7fcad592bd3634a101a0ef1a2fa8dd39 SHA512 6be3587e7fb497cddfefe28552a7a1b701f1f58c1f7bc0136daaa973736a122352c65402e62828a0a1a132a5d8ad042788ba9734b8b5193e5db92d14cc3bcb9b
-EBUILD svt-av1-1.5.0.ebuild 1424 BLAKE2B 0dbc82ef36f8de6d4a1c37dce1a1a2580e3ae1cea759b17a72ae9b2b5bb0be017e2b06b11e4a370e64d0871fb6cb57aad4a88e00de0fc2e5e7a1b9eb324e089a SHA512 f1f66fc5989b29226ff251cb8ea42b773429e697d42972a31a13ddcc33cae295220fab9966a6113dc2d7017e0f74a3d5c4d4a96428cf50a392f2c734e90ec7fb
+EBUILD svt-av1-1.5.0-r1.ebuild 1445 BLAKE2B eb7633047e5d1bc9022782337cebc27e9643eed9246bc804eefc41228e75f6452ec482b9f821903fc7990aab2cf556fd6757b97835b2bbf1723693a001a4ca75 SHA512 99dec6d830516ccdbc4c71a30aef347eac0078d6ee7b024b0dc66aac19cebec4ed4dc0ba8362b033bd6d69bd22eb15a0b2e086106cc1f07b7dc1aacc1a15b08e
EBUILD svt-av1-9999.ebuild 1424 BLAKE2B 0dbc82ef36f8de6d4a1c37dce1a1a2580e3ae1cea759b17a72ae9b2b5bb0be017e2b06b11e4a370e64d0871fb6cb57aad4a88e00de0fc2e5e7a1b9eb324e089a SHA512 f1f66fc5989b29226ff251cb8ea42b773429e697d42972a31a13ddcc33cae295220fab9966a6113dc2d7017e0f74a3d5c4d4a96428cf50a392f2c734e90ec7fb
MISC metadata.xml 561 BLAKE2B 1effb05644507ea39fe071f9de1fe4c1a4feb30f9bc429985cf464aea9f9bc1f525e0c6f5e75da47d373f0acd60394a2bcec3b71e68bc3ab031334f95717d3b8 SHA512 1042fb94a9c0b93c007843585e0ea075d187cdd6b77bb8eb94d5fcfaa7d083a98916aedcbfccd1fa3da3307ef8bbe7d623efa7e39ccc9714d23973497bec7a89
diff --git a/media-libs/svt-av1/svt-av1-1.5.0.ebuild b/media-libs/svt-av1/svt-av1-1.5.0-r1.ebuild
index 01c83e30f392..2eb0ddfd23fe 100644
--- a/media-libs/svt-av1/svt-av1-1.5.0.ebuild
+++ b/media-libs/svt-av1/svt-av1-1.5.0-r1.ebuild
@@ -37,6 +37,7 @@ multilib_src_configure() {
# .. and https://gitlab.com/AOMediaCodec/SVT-AV1/-/blob/master/.gitlab/workflows/linux/.gitlab-ci.yml implies it's all quite manual?
-DBUILD_TESTING=OFF
-DCMAKE_OUTPUT_DIRECTORY="${BUILD_DIR}"
+ -DENABLE_AVX512=ON
)
[[ ${ABI} != amd64 ]] && mycmakeargs+=( -DCOMPILE_C_ONLY=ON )
diff --git a/media-libs/svt-hevc/Manifest b/media-libs/svt-hevc/Manifest
index cc791889aef6..aad82598e1d7 100644
--- a/media-libs/svt-hevc/Manifest
+++ b/media-libs/svt-hevc/Manifest
@@ -1,4 +1,4 @@
DIST svt-hevc-1.5.1.tar.gz 1220295 BLAKE2B e70dc07f74746cb69561818b642d8ce5efd9e731b3376889556ddea0f647f8deaa4edf7a4993d86a5b1100db37d02f928d53eeaa594b7d5c582b92c30761e470 SHA512 f5b9d9a090cb04ada0a3f310522f00b619ae628b8474fe7e1c7f562a017b5a9d0c8c58ab9a35b43cb19f2568fbc59e0395dcd517b7983924b175393ad2ba4299
-EBUILD svt-hevc-1.5.1.ebuild 652 BLAKE2B 49eb43a99f00f167fad79f8737a53af54b8d76168680f1c32b84d62851e265a846a6479ede7423fa9394c6c357ac4f8aa68e3a6260837bcd27380c33e2dacb7f SHA512 05ba439d60e3c7ddca0187d4147484e410bec4b164804c9286c1f202d677dbff2d971930abcc93b02a2e2de33b36b24b694496f7c087b5c8211018b763acaa15
-EBUILD svt-hevc-9999.ebuild 652 BLAKE2B 49eb43a99f00f167fad79f8737a53af54b8d76168680f1c32b84d62851e265a846a6479ede7423fa9394c6c357ac4f8aa68e3a6260837bcd27380c33e2dacb7f SHA512 05ba439d60e3c7ddca0187d4147484e410bec4b164804c9286c1f202d677dbff2d971930abcc93b02a2e2de33b36b24b694496f7c087b5c8211018b763acaa15
+EBUILD svt-hevc-1.5.1.ebuild 648 BLAKE2B 02673e1c6187f6c88dfe5469d82657c3b0fcd1c63151464ebbe9ea14a7cf3e642203faeac14f7228fe890f58fc0388d38b4243d55ca33115928d33a90988ca37 SHA512 7f38654a9e6847d819df103d93eb344528455da41258905158c78e8a5d04791ab2ec24eed523b9a294720b8a43d3e58a61b5738b4eea3d768832cf8f77056598
+EBUILD svt-hevc-9999.ebuild 648 BLAKE2B 02673e1c6187f6c88dfe5469d82657c3b0fcd1c63151464ebbe9ea14a7cf3e642203faeac14f7228fe890f58fc0388d38b4243d55ca33115928d33a90988ca37 SHA512 7f38654a9e6847d819df103d93eb344528455da41258905158c78e8a5d04791ab2ec24eed523b9a294720b8a43d3e58a61b5738b4eea3d768832cf8f77056598
MISC metadata.xml 624 BLAKE2B 11842f1f6fe5a26ca9b8448c380082eb8a77a5a7ebc105b7d8d6a69644aa43075c64301a92563df1cd78a44711e3d7a54eaec08013efbad9641efa30edf5a754 SHA512 155b8a1daecb9cbc6e9399907ccd2016d89d8ee3aee8d4ceedeb5350531733b0997672190c1a87782312d3ea2b10a8760dfac1996a6345b4d55ee077247df693
diff --git a/media-libs/svt-hevc/svt-hevc-1.5.1.ebuild b/media-libs/svt-hevc/svt-hevc-1.5.1.ebuild
index 97889df141fc..5729a3499a49 100644
--- a/media-libs/svt-hevc/svt-hevc-1.5.1.ebuild
+++ b/media-libs/svt-hevc/svt-hevc-1.5.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2020-2022 Gentoo Authors
+# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ else
S="${WORKDIR}/SVT-HEVC-${PV}"
fi
-LICENSE="AOM BSD-2"
+LICENSE="BSD-2"
SLOT="0"
BDEPEND="dev-lang/nasm"
diff --git a/media-libs/svt-hevc/svt-hevc-9999.ebuild b/media-libs/svt-hevc/svt-hevc-9999.ebuild
index 97889df141fc..5729a3499a49 100644
--- a/media-libs/svt-hevc/svt-hevc-9999.ebuild
+++ b/media-libs/svt-hevc/svt-hevc-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2020-2022 Gentoo Authors
+# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ else
S="${WORKDIR}/SVT-HEVC-${PV}"
fi
-LICENSE="AOM BSD-2"
+LICENSE="BSD-2"
SLOT="0"
BDEPEND="dev-lang/nasm"
diff --git a/media-libs/tiff/Manifest b/media-libs/tiff/Manifest
index caeefe88256b..bb1c1377cbfa 100644
--- a/media-libs/tiff/Manifest
+++ b/media-libs/tiff/Manifest
@@ -4,5 +4,8 @@ AUX tiff-4.5.0-CVE-2023-0800-CVE-2023-0801-CVE-2023-0802-CVE-2023-0803-CVE-2023-
AUX tiff-4.5.0_rc1-skip-tools-tests-multilib.patch 1477 BLAKE2B d6daf36a65fcd2afbec2fd5e5f3b75fa4547f32079c0709e98a48b0ba28d993346dfc597ef46b37db5242f2e28c7dd87a1616fe9324ca2d9659a97040bcd23db SHA512 0c7b69ddd772d73fde800e610ed533804392d0ea4ddefa409f52abcf174cc77cd1f4160a03076043d654533e98812d642d5166030d97b273ec80f5288bf3eda3
DIST tiff-4.5.0.tar.xz 2320900 BLAKE2B c69801ba9d55b1ed27a92d31d8cd16937fe69299fbf5450efb4a6caa60245b72ddade110daae78f2198613640383623f76ec2265ba785375d0a85c7909b73fe9 SHA512 c6c866064c2dd5d1711c6ece7bafe5f011f5ce26c0aeaecbff79c05b5671f44150324bea95a0665cc43331883114de855ee1cd87ed733bff0f4d0814515b9f10
DIST tiff-4.5.0.tar.xz.sig 310 BLAKE2B bbe7f9600061416227276424eb220714a1375d3e295cb0c5b7f76074324c1a2698a5029dde3e734331e9caf02d8a086273ded2ab09285857dbbfe3ad83506912 SHA512 8cef09755f4efe68db69591967e495852cf63c2d8113a877a2254f536d38c60b6dc864c07089249cd8109a8408672a297ae9e59d8233687bc2796dc158ccfb32
+DIST tiff-4.5.1.tar.xz 2228040 BLAKE2B 793c03593c46d6f804f622f5ff7e799751ee79e87ec1575801d2238fbcd2e89ed657a5081d3651e337f1bb14603ff94a15aad878e7fdf2cf75ada38eed64d9d2 SHA512 fc6af93d36598527480c517ddc4f19fe72e9f07ef4997e5731604253c8db0b9bae816ba7a56985bf22fbbb48db1fab5ed4c2b32a5145bc9477ef24b221a61179
+DIST tiff-4.5.1.tar.xz.sig 310 BLAKE2B fd5e3ff9c55790777b9d2587910cfb47953a27925bdf8610fc5b9db05a5662b534df542e3658db7b897c8de510479d0a7f0773092ac2f71e3c7bcb4beb14594f SHA512 10e434de0140bbd7e3830860bb611796b65fff5e718a2d5fb2857959ff63149d73b4e1f3f7c4be2c27f8ca863b0e4b7731332544eba948ce10097552e1779aee
EBUILD tiff-4.5.0-r2.ebuild 2874 BLAKE2B 3b9abb9754468a62ac81523651c74affe335ff5d762891da9eff23e561ac1249a56e0142e86543d01f89f7a43a9a6ded017bcb879161378cae41f438dc8e5088 SHA512 2b40a6642953b142b10a46be652d8d561193707cc97e1f1c2a69d109691e7efa46b22898d6b2debe567724f6d3a6ecbfab36ae36e0e29e38e8e40026023ecc3c
+EBUILD tiff-4.5.1.ebuild 2499 BLAKE2B f5bc6fd305806e10c2feb98f406b7159183cb5e75002d71c99139ab56777a1a2ce6afb787ed4113974115c9261631e1fb31bca2d7ab94917973e4ab7a5c6d6a9 SHA512 7b3a7aa36e1ec3a472ae2bac0b2c22d328e427331f768d106a4ea75db3cca27f768fe2060655c3ab4dead8f3e9e70799503bfe9d69a67a1ec39b9a99ac4a6fa4
MISC metadata.xml 615 BLAKE2B b76f8c2714111fe539c2d15b56361bc3b2bc7469b3cd74cf933a9dad4ac8577b7bb1a2bc010ceb3623640778d1dbc912433988e938db7df8f8fca67c51003c2c SHA512 81b22e0e2763fbcd573d2c1fee362785c15c7c33cc00d0f7ce89eb9f95f55e64aee78eefc51de6d7270aa966102b744f070620828becbbb03012cc22e3e99469
diff --git a/media-libs/tiff/tiff-4.5.1.ebuild b/media-libs/tiff/tiff-4.5.1.ebuild
new file mode 100644
index 000000000000..7bf914077712
--- /dev/null
+++ b/media-libs/tiff/tiff-4.5.1.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+QA_PKGCONFIG_VERSION="$(ver_cut 1-3)"
+
+# Release signer can vary per version but not clear if others will be doing
+# them in future, so gone with Even Rouault for now as he does other geosci
+# stuff too like PROJ, GDAL. Previous release manager of TIFF was
+# GraphicsMagick maintainer Bob Friesenhahn. Please be careful when verifying
+# who made releases.
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/rouault.asc
+inherit libtool multilib-minimal verify-sig flag-o-matic
+
+MY_P="${P/_rc/rc}"
+DESCRIPTION="Tag Image File Format (TIFF) library"
+HOMEPAGE="http://libtiff.maptools.org"
+SRC_URI="https://download.osgeo.org/libtiff/${MY_P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://download.osgeo.org/libtiff/${MY_P}.tar.xz.sig )"
+S="${WORKDIR}/${PN}-$(ver_cut 1-3)"
+
+LICENSE="libtiff"
+SLOT="0/6"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="+cxx jbig jpeg lzma static-libs test webp zlib zstd"
+RESTRICT="!test? ( test )"
+
+# bug #483132
+REQUIRED_USE="test? ( jpeg )"
+
+RDEPEND="
+ jbig? ( >=media-libs/jbigkit-2.1:=[${MULTILIB_USEDEP}] )
+ jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
+ webp? ( media-libs/libwebp:=[${MULTILIB_USEDEP}] )
+ zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+ zstd? ( >=app-arch/zstd-1.3.7-r1:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-evenrouault )"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/tiffconf.h
+)
+
+src_prepare() {
+ default
+
+ # Added to fix cross-compilation
+ elibtoolize
+}
+
+multilib_src_configure() {
+ append-lfs-flags
+
+ local myeconfargs=(
+ --disable-sphinx
+ --without-x
+ --with-docdir="${EPREFIX}"/usr/share/doc/${PF}
+ $(use_enable cxx)
+ $(use_enable jbig)
+ $(use_enable jpeg)
+ $(use_enable lzma)
+ $(use_enable static-libs static)
+ $(use_enable test tests)
+ $(use_enable webp)
+ $(use_enable zlib)
+ $(use_enable zstd)
+
+ $(multilib_native_enable docs)
+ $(multilib_native_enable contrib)
+ $(multilib_native_enable tools)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name '*.la' -delete || die
+ rm "${ED}"/usr/share/doc/${PF}/{README*,RELEASE-DATE,TODO,VERSION} || die
+}