Sync from SUSE:SLFO:Main SVT-AV1 revision a491db8ae48170a68c8e95ed0061496f

This commit is contained in:
Adrian Schröter 2024-05-03 10:48:43 +02:00
commit 81a047d2be
4 changed files with 375 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

BIN
SVT-AV1-v1.7.0.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

226
SVT-AV1.changes Normal file
View File

@ -0,0 +1,226 @@
-------------------------------------------------------------------
Fri Nov 3 09:31:24 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
- Update to release 1.7.0
* Encoder:
* Improve the tradeoffs for the random access mode across
presets MR-M13
* Quality improvements across all presets and metrics ranging
from 0.3% to 4.5% in BD-rate
* Added an experimental tune SSIM mode yielding ~3-4%
additional SSIM BD-rate gains
-------------------------------------------------------------------
Mon Jun 26 08:53:46 UTC 2023 - Andreas Schwab <schwab@suse.de>
- Enable build on riscv64
-------------------------------------------------------------------
Mon Jun 19 23:25:45 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
- Update to release 1.6.0
* Improved the tradeoffs for the random access mode across
presets M1-M13:
* Speeding up the higher quality presets by 30-40%
* Improving the BD-rate by 1-4% for the faster presets
* Improved the tradeoffs for the low delay mode for both screen
content and non-screen content encoding modes
* Added a toggle to remove the legacy one-frame buffer at the
input of the pipeline allowing the low delay mode to operate
at sub-frame processing latencies
* Added a new API allowing the user to specify quantization
offsets for a region of interest per frame
-------------------------------------------------------------------
Thu Mar 30 09:10:48 UTC 2023 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Enable build on aarch64
-------------------------------------------------------------------
Mon Jan 2 21:17:48 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 1.4.1:
* Fix CRF with maxrate bug causing bitrate to be significantly limited for
CRF encodings
* Fix command line parsing forcing 1-pass in a 2-pass encoding mode when
the --keyint=`x`s format is used
* Fix decoder segfault due to assuming aligned buffers in the inverse
transform assembly
-------------------------------------------------------------------
Mon Dec 5 19:55:53 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.4.0:
* Adopted the 6L / 32-picture mini-GOP configuraion as default and
adjusted MD feature levels accordingly yielding higher compression
efficiency gains
* Update the TPL model to account for the larger mini-gop size
* Re-tune presets M0-M12 using the gained coding efficiency for improved
quality vs cycles tradeoffs
* Allow duplicate commandline parameters to be parsed and take into
consideration the latter to allow AWCY integration
* Build, Cleanup and Documentation
* Make include and lib paths friendly to abs and rel paths
* Update preset and API documentation
* Various functional bug fixes
* Remove manual prediction structure support
-------------------------------------------------------------------
Thu Oct 20 11:51:11 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to release 1.3.0:
* Encoder:
- Port SIMD optimizations from libDav1D making the conformant
path (Inv. Transform) faster
- Enabling smaller mini-GOP size configurations and tuning it
for the low delay mode
- Tuning the low-latency mode in random access targeting
latencies from 250ms to 1s
- Adding GOP-constrained Rate Control targeting low-latency
streaming applications
- Optimize mode decision features levels for depth
partitioning, RDOQ, MD stage0 pruning in-loop filtering
temporal filtering and TPL adding more granularity and
gaining further quality
- Preset tuning M0-M13 to smooth the spacing and utilize the
quality improvements towards better tradeoffs
* Build, Cleanup and Documentation:
- Update preset and API documentation
- Various functional bug fixes
- Remove the use of GLOB in cmake and use file names
- Changes from release 1.2.1:
* Encoder: Fix a crash at the end of the encode that may occur
when an invalid metadata packet is sent with the EOS packet
* Build, Cleanup:
- y4m header pasring code cleanup
- API cleanup and enhancements adding string options for RC
mode
- Added option to build without app / dec / enc using the
build.sh / build.bat scripts
-------------------------------------------------------------------
Wed Aug 3 15:07:11 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
- Update to release 1.2.0
* TPL tradeoff optimizations for 4L pred structure
* Quality-vs-cycles tradeoff improvements across all presets
* Add ability to force key_frame positions through ffmpeg for
CRF mode
* Minimize the quality impact of fast-decode while maintaining
the decoder speedup
* AVX2 optimizations for low delay mode
* Improve CRF preset tradeoffs for both the default and
fast-decode modes
* Improve the SSIM-based tradeoffs of the presets without
impacting those of PSNR / VMAF
* Improve CBR mode by enhancing the bit-distribution within the
GOP
* Added support for reference frame scaling
* Added support for quantization matrices
* AVX2 optimizations for low-delay mode
* TPL-based VBR mode improvements
* Improved Chroma RDOQ
* Improve TPL QP Scaling
* Add length info to ivf header
* Fix support for metadata pass-through
* Add ability to specify Chroma and Luma qindex offsets
independently on top of CRF qp assignments
-------------------------------------------------------------------
Fri Apr 22 21:47:04 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
- Update to release 1.0.0
* Added S-frames support
* Added CBR Rate control mode for low delay
* Added support for chroma position signaling
* Added support for skipping denoising pictures after film
grain synthesis
* Extend fast-decode support to cover presets M0-M10
-------------------------------------------------------------------
Wed Feb 16 10:01:52 UTC 2022 - Mia Herkt <mia@0x0.st>
- Disable forced realtime scheduler priority
By default, the encoder library will attempt to set realtime
scheduler priority. Disable this behavior, as it serves no
practical purpose (video encoding does not benefit from reduced
process latency) and will only make the system unresponsive.
(Additionally, it is arguably not a video encoder librarys job
to manage scheduler priorities for the calling process.)
See https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/1714
-------------------------------------------------------------------
Wed Jan 26 08:27:06 UTC 2022 - Enrico Belleri <idesmi@protonmail.com>
- Update to 0.9.0
* New faster presets M9-M12, M12 reaching similar complexity level to that of x264 veryfast
* New multi-pass and single pass VBR implementation minimizing the quality difference vs CRF while reducing the cycle overhead
* Quality vs density tradeoffs improvements across all presets in CRF mode
* Added support for CRF with capped bitrate
* Added support for overlay frames and super resolution
* Fixed film grain synthesis bugs
* Added experimental support for > 4k resolutions
* Added experimental support for the low delay prediction structure
* Significant memory reduction especially for faster presets in a multi-threaded environment
* API configuration structure cleanup removing all invalid or out of date parameters
* Speedup legacy CPUs for faster development by adding SSE code for corresponding C-kernels
* Updated the code license from BSD 2-clause to BSD 3-clause clear
-------------------------------------------------------------------
Fri May 28 09:52:23 UTC 2021 - Jan Engelhardt <jengelh@inai.de>
- Update to release 0.8.7
* Feature optimizations: creating new mode decision /
encode-decode feature levels allowing better speed / quality
trade-off granularity.
* Preset repositioning after adopting new levels.
* Preset 8 achieving similar speed levels to that of x265
medium in the VOD (shot-based encoding) use-case while
maintaining quality gains.
* New 1-pass and 2-pass VBR implementation ported from libaom
and adapted to the SVT architecture.
- Drop 1568-backport.patch (no longer applies)
- Remove wrong Obsoletes/Provides
-------------------------------------------------------------------
Tue Nov 10 11:04:19 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.8.5
* https://github.com/AOMediaCodec/SVT-AV1/blob/v0.8.5/CHANGELOG.md
- Added 1568-backport.patch
- Added manpages
-------------------------------------------------------------------
Wed May 1 09:09:48 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Go back to tar_scm; obs_scm does not work with quilt.
- Bump SO version for change from Apr 25/29 2019.
-------------------------------------------------------------------
Tue Apr 30 20:56:41 UTC 2019 - Hans-Peter Jansen <hpj@urpla.net>
- fix missing parts for decode lib
-------------------------------------------------------------------
Thu Apr 25 08:47:09 UTC 2019 - Adrian Schröter <adrian@suse.de>
- update to b4ca700d36c9655e37e9f091bfe983a23ec0c1bd
* new decode sub package
- use obs_scm again (it is on purpose for git snapshots)
-------------------------------------------------------------------
Mon Feb 18 11:59:38 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Use %cmake macro
-------------------------------------------------------------------
Sat Feb 16 12:18:45 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Update descriptions, make it fit for Factory.
- Use the same macro style everywhere.
- Edit fix-build.patch to conform to SLPP.
-------------------------------------------------------------------
Tue Feb 5 08:58:20 UTC 2019 - Adrian Schröter <adrian@suse.de>
- initial package of current git master (no tags yet)

123
SVT-AV1.spec Normal file
View File

@ -0,0 +1,123 @@
#
# spec file for package SVT-AV1
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: SVT-AV1
Version: 1.7.0
Release: 0
Summary: An AV1 decoder/encoder for video streams
License: BSD-3-Clause-Clear
Group: Productivity/Multimedia/Other
URL: https://gitlab.com/AOMediaCodec/SVT-AV1
Source: https://gitlab.com/AOMediaCodec/SVT-AV1/-/archive/v%version/SVT-AV1-v%version.tar.gz
BuildRequires: cmake >= 3.5.1
BuildRequires: fdupes
BuildRequires: gcc-c++ >= 5.4.0
BuildRequires: help2man
BuildRequires: pkgconfig
BuildRequires: yasm >= 1.2.0
ExclusiveArch: x86_64 aarch64 riscv64
%description
The Scalable Video Technology for AV1 (SVT-AV1 Encoder and Decoder) is an
AV1-compliant encoder/decoder library core. The SVT-AV1 encoder development is
a work-in-progress targeting performance levels applicable to both VOD and Live
encoding / transcoding video applications. The SVT-AV1 decoder implementation
is targeting future codec research activities.
%package -n libSvtAv1Dec0
Summary: An AV1 decoder/encoder for video streams
Group: System/Libraries
%description -n libSvtAv1Dec0
The Scalable Video Technology for AV1 (SVT-AV1 Encoder and Decoder) is an
AV1-compliant encoder/decoder library core. The SVT-AV1 encoder development is
a work-in-progress targeting performance levels applicable to both VOD and Live
encoding / transcoding video applications. The SVT-AV1 decoder implementation
is targeting future codec research activities.
%package -n libSvtAv1Enc1
Summary: An AV1 decoder/encoder for video streams
Group: System/Libraries
%description -n libSvtAv1Enc1
The Scalable Video Technology for AV1 (SVT-AV1 Encoder and Decoder) is an
AV1-compliant encoder/decoder library core. The SVT-AV1 encoder development is
a work-in-progress targeting performance levels applicable to both VOD and Live
encoding / transcoding video applications. The SVT-AV1 decoder implementation
is targeting future codec research activities.
%package devel
Summary: Development files for %name
Group: Development/Libraries/C and C++
Requires: libSvtAv1Dec0 = %version
Requires: libSvtAv1Enc1 = %version
%description devel
An AV1 encoder for video streams from Intel.
This package contains the header files for svt-av1.
%prep
%autosetup -p1 -n %name-v%version
%build
%cmake
%cmake_build
%install
%cmake_install
# Generate manpages
install -d -m0755 %buildroot/%_mandir/man1
LD_LIBRARY_PATH="%buildroot%_libdir" \
help2man -N --help-option=-help --version-string=%version %buildroot%_bindir/SvtAv1DecApp > %buildroot%_mandir/man1/SvtAv1DecApp.1
LD_LIBRARY_PATH="%buildroot%_libdir" \
help2man -N --help-option=-help --version-string=%version --no-discard-stderr %buildroot%_bindir/SvtAv1EncApp > %buildroot%_mandir/man1/SvtAv1EncApp.1
b="%buildroot/%_defaultdocdir/%name"
mkdir -p "$b"
cp -a Docs README.md "$b/"
%fdupes %buildroot/%_prefix
%post -n libSvtAv1Dec0 -p /sbin/ldconfig
%postun -n libSvtAv1Dec0 -p /sbin/ldconfig
%post -n libSvtAv1Enc1 -p /sbin/ldconfig
%postun -n libSvtAv1Enc1 -p /sbin/ldconfig
%files -n libSvtAv1Dec0
%license LICENSE.md PATENTS.md
%_libdir/libSvtAv1Dec.so.*
%files -n libSvtAv1Enc1
%license LICENSE.md PATENTS.md
%_libdir/libSvtAv1Enc.so.*
%files
%_bindir/Svt*
%_mandir/man1/Svt*
%doc %_defaultdocdir/%name/
%files devel
%_libdir/libSvtAv1Dec.so
%_libdir/libSvtAv1Enc.so
%_libdir/pkgconfig/*.pc
%_includedir/svt-av1/
%changelog