Accepting request 1002525 from home:iznogood:branches:multimedia:libs
New upstream release OBS-URL: https://build.opensuse.org/request/show/1002525 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/flac?expand=0&rev=62
This commit is contained in:
parent
8c4eefbc37
commit
d447108c5c
@ -1,48 +0,0 @@
|
|||||||
From 2834dd4eb51a1847a424a3d7ea799b38a62487e9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Takashi Iwai <tiwai@suse.de>
|
|
||||||
Date: Tue, 1 Mar 2022 08:16:45 +0100
|
|
||||||
Subject: [PATCH] Revert "libFLAC/stream_decoder.c: Use current position as
|
|
||||||
bound when seeking"
|
|
||||||
|
|
||||||
This reverts commit 159cd6c41a6ec17b36d74043c45a3aa64de90d5e.
|
|
||||||
---
|
|
||||||
src/libFLAC/stream_decoder.c | 17 +++--------------
|
|
||||||
1 file changed, 3 insertions(+), 14 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/libFLAC/stream_decoder.c b/src/libFLAC/stream_decoder.c
|
|
||||||
index 4380b486fd5f..0e7264809dbf 100644
|
|
||||||
--- a/src/libFLAC/stream_decoder.c
|
|
||||||
+++ b/src/libFLAC/stream_decoder.c
|
|
||||||
@@ -3067,26 +3067,15 @@ FLAC__bool seek_to_absolute_sample_(FLAC__StreamDecoder *decoder, FLAC__uint64 s
|
|
||||||
|
|
||||||
/*
|
|
||||||
* First, we set an upper and lower bound on where in the
|
|
||||||
- * stream we will search. For now we take the current position
|
|
||||||
- * as one bound and, depending on where the target position lies,
|
|
||||||
- * the beginning of the first frame or the end of the stream as
|
|
||||||
- * the other bound.
|
|
||||||
+ * stream we will search. For now we assume the worst case
|
|
||||||
+ * scenario, which is our best guess at the beginning of
|
|
||||||
+ * the first frame and end of the stream.
|
|
||||||
*/
|
|
||||||
lower_bound = first_frame_offset;
|
|
||||||
lower_bound_sample = 0;
|
|
||||||
upper_bound = stream_length;
|
|
||||||
upper_bound_sample = total_samples > 0 ? total_samples : target_sample /*estimate it*/;
|
|
||||||
|
|
||||||
- if(decoder->protected_->state == FLAC__STREAM_DECODER_READ_FRAME) {
|
|
||||||
- if(target_sample < decoder->private_->samples_decoded) {
|
|
||||||
- if(FLAC__stream_decoder_get_decode_position(decoder, &upper_bound))
|
|
||||||
- upper_bound_sample = decoder->private_->samples_decoded;
|
|
||||||
- } else {
|
|
||||||
- if(FLAC__stream_decoder_get_decode_position(decoder, &lower_bound))
|
|
||||||
- lower_bound_sample = decoder->private_->samples_decoded;
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
/*
|
|
||||||
* Now we refine the bounds if we have a seektable with
|
|
||||||
* suitable points. Note that according to the spec they
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
libFLAC8
|
libFLAC12
|
||||||
obsoletes "flac-<targettype> <= <version>"
|
obsoletes "flac-<targettype> <= <version>"
|
||||||
obsoletes "libflac-<targettype> <= <version>"
|
obsoletes "libflac-<targettype> <= <version>"
|
||||||
libFLAC++6
|
libFLAC++10
|
||||||
flac-devel
|
flac-devel
|
||||||
requires -flac-<targettype>
|
requires -flac-<targettype>
|
||||||
requires "libFLAC8-<targettype> = <version>"
|
requires "libFLAC12-<targettype> = <version>"
|
||||||
requires "libFLAC++6-<targettype> = <version>"
|
requires "libFLAC++10-<targettype> = <version>"
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:8ff0607e75a322dd7cd6ec48f4f225471404ae2730d0ea945127b1355155e737
|
|
||||||
size 1038356
|
|
3
flac-1.4.0.tar.xz
Normal file
3
flac-1.4.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:af41c0733c93c237c3e52f64dd87e3b0d9af38259f1c7d11e8cbf583c48c2506
|
||||||
|
size 783372
|
@ -2,11 +2,11 @@
|
|||||||
configure.ac | 4 ----
|
configure.ac | 4 ----
|
||||||
1 file changed, 4 deletions(-)
|
1 file changed, 4 deletions(-)
|
||||||
|
|
||||||
Index: flac-1.3.3/configure.ac
|
Index: flac-1.4.0/configure.ac
|
||||||
===================================================================
|
===================================================================
|
||||||
--- flac-1.3.3.orig/configure.ac
|
--- flac-1.4.0.orig/configure.ac
|
||||||
+++ flac-1.3.3/configure.ac
|
+++ flac-1.4.0/configure.ac
|
||||||
@@ -468,10 +468,6 @@ if test x$ac_cv_c_compiler_gnu = xyes ;
|
@@ -550,10 +550,6 @@ if test x$ac_cv_c_compiler_gnu = xyes -o
|
||||||
XIPH_ADD_CFLAGS([-fno-inline-small-functions])
|
XIPH_ADD_CFLAGS([-fno-inline-small-functions])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
143
flac.changes
143
flac.changes
@ -1,3 +1,146 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Sep 11 16:31:56 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com>
|
||||||
|
|
||||||
|
- Update to version 1.4.0:
|
||||||
|
+ General:
|
||||||
|
* It is now possible to limit the minimum bitrate of a FLAC
|
||||||
|
file generated by libFLAC and with the flac tool to 1
|
||||||
|
bit/sample. This function can be used to aid live streaming,
|
||||||
|
for example for internet radio
|
||||||
|
* Encoding files with sample rates up to 1'048'575Hz is now
|
||||||
|
possible.
|
||||||
|
* Compression of preset -3 through -8 was slightly improved at
|
||||||
|
the cost of a small decrease in encoding speed by increasing
|
||||||
|
the precision with which autocorrelation was calculated
|
||||||
|
* Encoding speed of preset -0, -1 and -2 was slightly improved
|
||||||
|
* Compression of presets -1 and -4 was slighly improved on
|
||||||
|
certain material by changing the adaptive mid-side heuristics
|
||||||
|
* Speedups specifically targeting 64-bit ARMv8 devices using
|
||||||
|
NEON were integrated
|
||||||
|
* Speedups for x86_64 CPUs having the FMA instruction set
|
||||||
|
extention are added
|
||||||
|
* Encoding and decoding of 32-bit PCM is now possible
|
||||||
|
+ (Ogg) FLAC format:
|
||||||
|
* The FLAC format document is being rewritten by the IETF
|
||||||
|
CELLAR working group. The latest draft can be found on
|
||||||
|
https://datatracker.ietf.org/doc/draft-ietf-cellar-flac/
|
||||||
|
* The FLAC format document specifies no bounds for the
|
||||||
|
residual. In other to match current decoder implementations,
|
||||||
|
it is proposed to bound the residual to the range provided by
|
||||||
|
a 32-bit int signed two's complement. This limit must be
|
||||||
|
checked by FLAC encoders as to keep FLAC decoders free from
|
||||||
|
the complexity of being to decode a residual exceeding a
|
||||||
|
32-bit int.
|
||||||
|
* There is now a set of files available to test whether a FLAC
|
||||||
|
decoder implements the format correctly. This FLAC decoder
|
||||||
|
testbench can be found at
|
||||||
|
https://github.com/ietf-wg-cellar/flac-test-files. Also,
|
||||||
|
results of testing hard- and software can be found here at
|
||||||
|
https://wiki.hydrogenaud.io/index.php?title=FLAC_decoder_testbench.
|
||||||
|
+ flac:
|
||||||
|
* The option --limit-min-bitrate was added to aid streaming,
|
||||||
|
see github #264
|
||||||
|
* The option --keep-foreign-metadata-if-present is added. This
|
||||||
|
option works the same as --keep-foreign-metadata, but does
|
||||||
|
return a warning instead of an error if no foreign metadata
|
||||||
|
was found to store or restore
|
||||||
|
* The warning returned by the foreign metadata handling is now
|
||||||
|
clearer in case a user tries to restore foreign metadata of
|
||||||
|
the wrong type, for example decoding a FLAC file containing
|
||||||
|
AIFF foreign metadata to a WAV file
|
||||||
|
* A problem when using the analyse function causing the first
|
||||||
|
frame to have a wrong size and offset was fixed
|
||||||
|
* Fix bug where channel mask of a file is unintentionally
|
||||||
|
reused when several files are processed with one command
|
||||||
|
* The order of compression-related commands is no longer
|
||||||
|
important, i.e. -8ep gives the same result as -ep8.
|
||||||
|
Previously, a compression level (like -8) would override a
|
||||||
|
more specific setting (like -e or -p). This is no longer the
|
||||||
|
case
|
||||||
|
* flac now checks the block-align property of WAV files to
|
||||||
|
ensure non-standard WAV files (for which flac has no
|
||||||
|
handling) are not mangled
|
||||||
|
+ build system:
|
||||||
|
* MSVC and Makefile.lite build system files have been removed.
|
||||||
|
Building with MSVC (Visual Studio) can be done by using CMake
|
||||||
|
* Various CMake improvements, especially for creating MSVC
|
||||||
|
build files
|
||||||
|
* Various fixes for MinGW
|
||||||
|
* Removed obsolete autotools macro's to silence warnings
|
||||||
|
* Fixes for FreeBSD PowerPC
|
||||||
|
* Fixed some compiler warnings
|
||||||
|
* Fix building with uclibc
|
||||||
|
+ testing/validation:
|
||||||
|
* Addition of new encoder fuzzer, adding fuzzing for 8, 24 and
|
||||||
|
32-bit inputs
|
||||||
|
* Addition of new decoder fuzzer, adding coverage of seeking
|
||||||
|
code
|
||||||
|
* Addition of metadata fuzzer, adding coverage of metadata APIs
|
||||||
|
* Various improvements to fuzzers to improve code coverage,
|
||||||
|
fuzzing speed and stability
|
||||||
|
* Many changes to test suite to improve cross-platform
|
||||||
|
compatibility
|
||||||
|
* Windows CI now also builds the whole test suite
|
||||||
|
* Clang-format file added
|
||||||
|
* Add warning on using v141_xp platform toolset with /MT
|
||||||
|
+ libraries:
|
||||||
|
* Various seeking fixes
|
||||||
|
* Various bugs fixed found by fuzzing
|
||||||
|
* On decoding, it is now checked whether residuals can be
|
||||||
|
contained by a 32-bit int, preventing integer overflow
|
||||||
|
* Add check that samples supplied to libFLAC actually fall
|
||||||
|
within the bps set
|
||||||
|
* Add checks when parsing metadata blocks to not allocate
|
||||||
|
excessive amounts of memory and not overread
|
||||||
|
* Undocumented Windows-only utf8 functions are no longer
|
||||||
|
exported to the DLL interface
|
||||||
|
* Removed all assembler and intrinsics code from the decoder to
|
||||||
|
improve fuzzing, as they provided only a small speed benefit
|
||||||
|
* The bitwriter buffer is limited in size to 2^24 bytes, so it
|
||||||
|
cannot write excessively large files. This is a backup in
|
||||||
|
case another bug in this area creeps (back) in.
|
||||||
|
* The metadata iterations should now never return a
|
||||||
|
vorbiscomment entry with NULL as an entry, now always at
|
||||||
|
least an empty string is returned
|
||||||
|
+ documentation: Removed html documentation and generate man
|
||||||
|
pages from markdown
|
||||||
|
+ Interface changes:
|
||||||
|
* libFLAC:
|
||||||
|
. Addition of FLAC__stream_encoder_set_limit_min_bitrate()
|
||||||
|
and FLAC__stream_encoder_get_limit_min_bitrate(), see
|
||||||
|
github #264
|
||||||
|
. get_client_data_from_decoder is renamed
|
||||||
|
FLAC__get_decoder_client_data(), see github #124
|
||||||
|
. All API functions taking a filename as an argument now take
|
||||||
|
UTF-8 filenames on Windows, and no longer accept filenames
|
||||||
|
using the current codepage
|
||||||
|
. FLAC__Frame struct has changed: warmup samples are now
|
||||||
|
stored in FLAC__int64 instead of FLAC__int32 types, and
|
||||||
|
verbatim samples can now be stored in either FLAC__int32 or
|
||||||
|
FLAC__int64 depending on whether samples fix the former or
|
||||||
|
latter
|
||||||
|
. The FLAC__StreamMetadata struct now has a tag, so it can be
|
||||||
|
forward declared
|
||||||
|
* libFLAC++:
|
||||||
|
. Addition of ::set_limit_min_bitrate() and
|
||||||
|
::get_limit_min_bitrate(), see github #264
|
||||||
|
. All API functions taking a filename as an argument now take
|
||||||
|
UTF-8 filenames on Windows, and no longer accept filenames
|
||||||
|
using the current codepage
|
||||||
|
. The ::FLAC__Frame struct has changed, see the libFLAC
|
||||||
|
interface change.
|
||||||
|
- Rebase flac-cflags.patch with quilt.
|
||||||
|
- Drop patch fixed differently upstream, see github #329
|
||||||
|
+ 0001-Revert-libFLAC-stream_decoder.c-Use-current-position.patch
|
||||||
|
- Bump sonames following upstream changes (also in baselibs.conf).
|
||||||
|
- Add sover and sover_plus defines, ease future soname bumps.
|
||||||
|
- Use ldconfig_scriptlets macro for post(un) handling.
|
||||||
|
- Use make_build macro.
|
||||||
|
- Update Git-Web and Git-Clone urls to new home on github.
|
||||||
|
- Replace gcc-c++ BuildRequires with generic c++_compiler and
|
||||||
|
c_compiler BuildRequires: Package needs a c and c++ compiler, not
|
||||||
|
explicitly gcc-c++.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Mar 1 08:18:11 CET 2022 - tiwai@suse.de
|
Tue Mar 1 08:18:11 CET 2022 - tiwai@suse.de
|
||||||
|
|
||||||
|
50
flac.spec
50
flac.spec
@ -16,23 +16,27 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%define sover 12
|
||||||
|
%define sover_plus 10
|
||||||
|
|
||||||
Name: flac
|
Name: flac
|
||||||
Version: 1.3.4
|
Version: 1.4.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Free Lossless Audio Codec
|
Summary: Free Lossless Audio Codec
|
||||||
License: BSD-3-Clause AND GPL-2.0-or-later AND GFDL-1.2-only
|
License: BSD-3-Clause AND GPL-2.0-or-later AND GFDL-1.2-only
|
||||||
Group: Productivity/Multimedia/Sound/Utilities
|
Group: Productivity/Multimedia/Sound/Utilities
|
||||||
URL: https://xiph.org/flac/
|
URL: https://xiph.org/flac/
|
||||||
#Git-Web: https://git.xiph.org/?p=flac.git
|
#Git-Web: https://github.com/xiph/flac
|
||||||
#Git-Clone: git://git.xiph.org/flac
|
#Git-Clone: https://github.com/xiph/flac.git
|
||||||
#Changelog: https://xiph.org/flac/changelog.html
|
#Changelog: https://xiph.org/flac/changelog.html
|
||||||
Source: https://downloads.xiph.org/releases/flac/%{name}-%{version}.tar.xz
|
Source: https://downloads.xiph.org/releases/flac/%{name}-%{version}.tar.xz
|
||||||
Source2: baselibs.conf
|
Source2: baselibs.conf
|
||||||
Patch0: flac-cflags.patch
|
Patch0: flac-cflags.patch
|
||||||
Patch1: 0001-Revert-libFLAC-stream_decoder.c-Use-current-position.patch
|
|
||||||
BuildRequires: autoconf >= 2.60
|
BuildRequires: autoconf >= 2.60
|
||||||
BuildRequires: automake >= 1.11
|
BuildRequires: automake >= 1.11
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: c++_compiler
|
||||||
|
BuildRequires: c_compiler
|
||||||
BuildRequires: libtool
|
BuildRequires: libtool
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
BuildRequires: xz
|
BuildRequires: xz
|
||||||
@ -50,24 +54,24 @@ algorithm can typically be reduced to between 50 and 70 percent of
|
|||||||
its original size, and decompresses to an identical copy of the
|
its original size, and decompresses to an identical copy of the
|
||||||
original audio data.
|
original audio data.
|
||||||
|
|
||||||
%package -n libFLAC8
|
%package -n libFLAC%{sover}
|
||||||
Summary: Free Lossless Audio Codec Library
|
Summary: Free Lossless Audio Codec Library
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Obsoletes: libflac < %{version}
|
Obsoletes: libflac < %{version}
|
||||||
Provides: libflac = %{version}
|
Provides: libflac = %{version}
|
||||||
|
|
||||||
%description -n libFLAC8
|
%description -n libFLAC%{sover}
|
||||||
FLAC is an audio coding format for lossless compression of digital
|
FLAC is an audio coding format for lossless compression of digital
|
||||||
audio, and is also the name of the reference software package that
|
audio, and is also the name of the reference software package that
|
||||||
includes a codec implementation.
|
includes a codec implementation.
|
||||||
|
|
||||||
This package contains the C API library for FLAC.
|
This package contains the C API library for FLAC.
|
||||||
|
|
||||||
%package -n libFLAC++6
|
%package -n libFLAC++%{sover_plus}
|
||||||
Summary: Free Lossless Audio Codec Library
|
Summary: Free Lossless Audio Codec Library
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
|
|
||||||
%description -n libFLAC++6
|
%description -n libFLAC++%{sover_plus}
|
||||||
FLAC is an audio coding format for lossless compression of digital
|
FLAC is an audio coding format for lossless compression of digital
|
||||||
audio, and is also the name of the reference software package that
|
audio, and is also the name of the reference software package that
|
||||||
includes a codec implementation.
|
includes a codec implementation.
|
||||||
@ -78,13 +82,13 @@ This package contains the C++ API library for FLAC.
|
|||||||
Summary: FLAC Library Development Package
|
Summary: FLAC Library Development Package
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Requires: glibc-devel
|
Requires: glibc-devel
|
||||||
Requires: libFLAC++6 = %{version}
|
Requires: libFLAC%{sover} = %{version}
|
||||||
Requires: libFLAC8 = %{version}
|
Requires: libFLAC++%{sover_plus} = %{version}
|
||||||
Requires: libstdc++-devel
|
Requires: libstdc++-devel
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
This package contains the files needed to compile programs that use the
|
This package contains the files needed to compile programs that use
|
||||||
FLAC library.
|
the FLAC library.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -p1
|
%autosetup -p1
|
||||||
@ -98,7 +102,7 @@ autoreconf -fvi
|
|||||||
--disable-static \
|
--disable-static \
|
||||||
--disable-rpath \
|
--disable-rpath \
|
||||||
--enable-sse
|
--enable-sse
|
||||||
make %{?_smp_mflags}
|
%make_build
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install docdir="%{_docdir}/%{name}"
|
%make_install docdir="%{_docdir}/%{name}"
|
||||||
@ -109,23 +113,21 @@ rm -rf %{buildroot}%{_datadir}/doc/%{name}-%{version}/
|
|||||||
%check
|
%check
|
||||||
make check %{?_smp_mflags}
|
make check %{?_smp_mflags}
|
||||||
|
|
||||||
%post -n libFLAC8 -p /sbin/ldconfig
|
%ldconfig_scriptlets -n libFLAC%{sover}
|
||||||
%postun -n libFLAC8 -p /sbin/ldconfig
|
%ldconfig_scriptlets -n libFLAC++%{sover_plus}
|
||||||
%post -n libFLAC++6 -p /sbin/ldconfig
|
|
||||||
%postun -n libFLAC++6 -p /sbin/ldconfig
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README
|
%doc README.md
|
||||||
%{_bindir}/*
|
%{_bindir}/*
|
||||||
%{_mandir}/man*/*
|
%{_mandir}/man*/*
|
||||||
|
|
||||||
%files -n libFLAC8
|
%files -n libFLAC%{sover}
|
||||||
%license COPYING*
|
%license COPYING*
|
||||||
%{_libdir}/libFLAC.so.8*
|
%{_libdir}/libFLAC.so.%{sover}*
|
||||||
|
|
||||||
%files -n libFLAC++6
|
%files -n libFLAC++%{sover_plus}
|
||||||
%license COPYING*
|
%license COPYING*
|
||||||
%{_libdir}/libFLAC++.so.6*
|
%{_libdir}/libFLAC++.so.%{sover_plus}*
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%{_libdir}/lib*.so
|
%{_libdir}/lib*.so
|
||||||
@ -133,6 +135,6 @@ make check %{?_smp_mflags}
|
|||||||
%{_libdir}/pkgconfig/*.pc
|
%{_libdir}/pkgconfig/*.pc
|
||||||
%{_datadir}/aclocal/*.m4
|
%{_datadir}/aclocal/*.m4
|
||||||
%{_docdir}/%{name}/
|
%{_docdir}/%{name}/
|
||||||
%exclude %{_docdir}/%{name}/README
|
%exclude %{_docdir}/%{name}/README.md
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
Loading…
x
Reference in New Issue
Block a user