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 "libflac-<targettype> <= <version>"
|
||||
libFLAC++6
|
||||
libFLAC++10
|
||||
flac-devel
|
||||
requires -flac-<targettype>
|
||||
requires "libFLAC8-<targettype> = <version>"
|
||||
requires "libFLAC++6-<targettype> = <version>"
|
||||
requires "libFLAC12-<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 ----
|
||||
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.3.3/configure.ac
|
||||
@@ -468,10 +468,6 @@ if test x$ac_cv_c_compiler_gnu = xyes ;
|
||||
--- flac-1.4.0.orig/configure.ac
|
||||
+++ flac-1.4.0/configure.ac
|
||||
@@ -550,10 +550,6 @@ if test x$ac_cv_c_compiler_gnu = xyes -o
|
||||
XIPH_ADD_CFLAGS([-fno-inline-small-functions])
|
||||
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
|
||||
|
||||
|
50
flac.spec
50
flac.spec
@ -16,23 +16,27 @@
|
||||
#
|
||||
|
||||
|
||||
%define sover 12
|
||||
%define sover_plus 10
|
||||
|
||||
Name: flac
|
||||
Version: 1.3.4
|
||||
Version: 1.4.0
|
||||
Release: 0
|
||||
Summary: Free Lossless Audio Codec
|
||||
License: BSD-3-Clause AND GPL-2.0-or-later AND GFDL-1.2-only
|
||||
Group: Productivity/Multimedia/Sound/Utilities
|
||||
URL: https://xiph.org/flac/
|
||||
#Git-Web: https://git.xiph.org/?p=flac.git
|
||||
#Git-Clone: git://git.xiph.org/flac
|
||||
#Git-Web: https://github.com/xiph/flac
|
||||
#Git-Clone: https://github.com/xiph/flac.git
|
||||
#Changelog: https://xiph.org/flac/changelog.html
|
||||
Source: https://downloads.xiph.org/releases/flac/%{name}-%{version}.tar.xz
|
||||
Source2: baselibs.conf
|
||||
Patch0: flac-cflags.patch
|
||||
Patch1: 0001-Revert-libFLAC-stream_decoder.c-Use-current-position.patch
|
||||
|
||||
BuildRequires: autoconf >= 2.60
|
||||
BuildRequires: automake >= 1.11
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: c++_compiler
|
||||
BuildRequires: c_compiler
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkgconfig
|
||||
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
|
||||
original audio data.
|
||||
|
||||
%package -n libFLAC8
|
||||
%package -n libFLAC%{sover}
|
||||
Summary: Free Lossless Audio Codec Library
|
||||
Group: System/Libraries
|
||||
Obsoletes: libflac < %{version}
|
||||
Provides: libflac = %{version}
|
||||
|
||||
%description -n libFLAC8
|
||||
%description -n libFLAC%{sover}
|
||||
FLAC is an audio coding format for lossless compression of digital
|
||||
audio, and is also the name of the reference software package that
|
||||
includes a codec implementation.
|
||||
|
||||
This package contains the C API library for FLAC.
|
||||
|
||||
%package -n libFLAC++6
|
||||
%package -n libFLAC++%{sover_plus}
|
||||
Summary: Free Lossless Audio Codec Library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libFLAC++6
|
||||
%description -n libFLAC++%{sover_plus}
|
||||
FLAC is an audio coding format for lossless compression of digital
|
||||
audio, and is also the name of the reference software package that
|
||||
includes a codec implementation.
|
||||
@ -78,13 +82,13 @@ This package contains the C++ API library for FLAC.
|
||||
Summary: FLAC Library Development Package
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: glibc-devel
|
||||
Requires: libFLAC++6 = %{version}
|
||||
Requires: libFLAC8 = %{version}
|
||||
Requires: libFLAC%{sover} = %{version}
|
||||
Requires: libFLAC++%{sover_plus} = %{version}
|
||||
Requires: libstdc++-devel
|
||||
|
||||
%description devel
|
||||
This package contains the files needed to compile programs that use the
|
||||
FLAC library.
|
||||
This package contains the files needed to compile programs that use
|
||||
the FLAC library.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
@ -98,7 +102,7 @@ autoreconf -fvi
|
||||
--disable-static \
|
||||
--disable-rpath \
|
||||
--enable-sse
|
||||
make %{?_smp_mflags}
|
||||
%make_build
|
||||
|
||||
%install
|
||||
%make_install docdir="%{_docdir}/%{name}"
|
||||
@ -109,23 +113,21 @@ rm -rf %{buildroot}%{_datadir}/doc/%{name}-%{version}/
|
||||
%check
|
||||
make check %{?_smp_mflags}
|
||||
|
||||
%post -n libFLAC8 -p /sbin/ldconfig
|
||||
%postun -n libFLAC8 -p /sbin/ldconfig
|
||||
%post -n libFLAC++6 -p /sbin/ldconfig
|
||||
%postun -n libFLAC++6 -p /sbin/ldconfig
|
||||
%ldconfig_scriptlets -n libFLAC%{sover}
|
||||
%ldconfig_scriptlets -n libFLAC++%{sover_plus}
|
||||
|
||||
%files
|
||||
%doc README
|
||||
%doc README.md
|
||||
%{_bindir}/*
|
||||
%{_mandir}/man*/*
|
||||
|
||||
%files -n libFLAC8
|
||||
%files -n libFLAC%{sover}
|
||||
%license COPYING*
|
||||
%{_libdir}/libFLAC.so.8*
|
||||
%{_libdir}/libFLAC.so.%{sover}*
|
||||
|
||||
%files -n libFLAC++6
|
||||
%files -n libFLAC++%{sover_plus}
|
||||
%license COPYING*
|
||||
%{_libdir}/libFLAC++.so.6*
|
||||
%{_libdir}/libFLAC++.so.%{sover_plus}*
|
||||
|
||||
%files devel
|
||||
%{_libdir}/lib*.so
|
||||
@ -133,6 +135,6 @@ make check %{?_smp_mflags}
|
||||
%{_libdir}/pkgconfig/*.pc
|
||||
%{_datadir}/aclocal/*.m4
|
||||
%{_docdir}/%{name}/
|
||||
%exclude %{_docdir}/%{name}/README
|
||||
%exclude %{_docdir}/%{name}/README.md
|
||||
|
||||
%changelog
|
||||
|
Loading…
x
Reference in New Issue
Block a user