[faac] Update to 1.29.9.2
by Leigh Scott
commit d61caa683fecc391892525c23f75057566990991
Author: leigh123linux <leigh123linux(a)googlemail.com>
Date: Sun Apr 15 09:04:10 2018 +0100
Update to 1.29.9.2
.gitignore | 1 +
faac.spec | 17 ++++++++++-------
sources | 2 +-
3 files changed, 12 insertions(+), 8 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 4c291c1..ada72a8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
faac-1.28.tar.bz2
/faac-1.29.3.tar.gz
+/faac-1.29.9.2.tar.gz
diff --git a/faac.spec b/faac.spec
index a1d2835..05ff033 100644
--- a/faac.spec
+++ b/faac.spec
@@ -1,6 +1,6 @@
Name: faac
-Version: 1.29.3
-Release: 3%{?dist}
+Version: 1.29.9.2
+Release: 1%{?dist}
Summary: Encoder and encoding library for MPEG2/4 AAC
Group: Applications/Multimedia
@@ -33,11 +33,11 @@ This package contains development files and documentation for libfaac.
#fix encoding
/usr/bin/iconv -f iso8859-1 -t utf-8 AUTHORS > AUTHORS.conv && touch -r AUTHORS AUTHORS.conv && /bin/mv -f AUTHORS.conv AUTHORS
-./bootstrap
-
%build
%configure --disable-static
+sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
+sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%make_build
@@ -48,9 +48,7 @@ This package contains development files and documentation for libfaac.
find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f
-%post -p /sbin/ldconfig
-
-%postun -p /sbin/ldconfig
+%ldconfig_scriptlets
%files
@@ -65,6 +63,11 @@ find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f
%{_includedir}/*.h
%changelog
+* Sun Apr 15 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 1.29.9.2-1
+- Update to 1.29.9.2
+- Fix rpath
+- Update scriptlets
+
* Fri Mar 02 2018 RPM Fusion Release Engineering <leigh123linux(a)googlemail.com> - 1.29.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
diff --git a/sources b/sources
index d6629b6..2516908 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-20108ccff238813937ae1fec6eb80e7c faac-1.29.3.tar.gz
+2b58d621fad8fda879f07b7cad8bfe10 faac-1.29.9.2.tar.gz
6 years, 7 months
[mednafen/f26] Updated to 1.21.2 Switched to SDL2 Added placeholders for system libs to be enabled once dependencie
by Julian Sikorski
commit 8fdd94be26d3e3585b1cdf3d5cf463757b0bdf7b
Author: Julian Sikorski <belegdol(a)fedoraproject.org>
Date: Sun Apr 15 09:09:02 2018 +0200
Updated to 1.21.2
Switched to SDL2
Added placeholders for system libs to be enabled once dependencies become available
mednafen.spec | 20 +++++++++++++++++---
sources | 2 +-
2 files changed, 18 insertions(+), 4 deletions(-)
---
diff --git a/mednafen.spec b/mednafen.spec
index b77e5a6..8b30089 100644
--- a/mednafen.spec
+++ b/mednafen.spec
@@ -1,7 +1,7 @@
%undefine _hardened_build
Name: mednafen
-Version: 0.9.48
+Version: 1.21.2
Release: 1%{?dist}
Summary: A multi-system emulator utilizing OpenGL and SDL
#mednafen is a monstrosity build out of many emulators hence the colourful licensing
@@ -9,10 +9,14 @@ License: GPLv2+ and BSD and ISC and LGPLv2+ and MIT and zlib
URL: https://mednafen.github.io/
Source0: https://mednafen.github.io/releases/files/%{name}-%{version}.tar.xz
BuildRequires: gettext
-BuildRequires: SDL-devel >= 1.2.0
+#1.3.0 is required
+#BuildRequires: libmpcdec-devel
+#2.09 is required
+#BuildRequires: lzo-devel
BuildRequires: pkgconfig(jack) => 1.0.2
+BuildRequires: pkgconfig(sdl2) => 2.0.5
BuildRequires: pkgconfig(sndfile) => 1.0.2
-BuildRequires: zlib-devel
+BuildRequires: pkgconfig(zlib)
%description
A portable, utilizing OpenGL and SDL, argument(command-line)-driven multi-system
@@ -64,6 +68,11 @@ export CFLAGS
export CXXFLAGS
%configure --disable-rpath
+#to be added once dependencies become available
+# --with-external-lzo
+# --with-external-mpcdec
+# --with-external-tremor
+# --with-external-trio
%make_build
@@ -83,6 +92,11 @@ rm -rf Documentation/*.def Documentation/*.php Documentation/generate.sh \
%changelog
+* Sun Apr 15 2018 Julian Sikorski <belegdol(a)fedoraproject.org> - 1.21.2-1
+- Updated to 1.21.2
+- Switched to SDL2
+- Added placeholders for system libs to be enabled once dependencies become available
+
* Sat Oct 07 2017 Julian Sikorski <belegdol(a)fedoraproject.org> - 0.9.48-1
- Updated to 0.9.48
diff --git a/sources b/sources
index c1c40cb..0fbd3bf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d741f013a05adb72928493b12c4933ff mednafen-0.9.48.tar.xz
+8e6cd5cd58ab9841667cfcb17ff009d6 mednafen-1.21.2.tar.xz
6 years, 7 months
[mednafen/f27] Updated to 1.21.2 Switched to SDL2 Added placeholders for system libs to be enabled once dependencie
by Julian Sikorski
commit d79bca60e09d63190d5981884933b6b3a9bae0d9
Author: Julian Sikorski <belegdol(a)fedoraproject.org>
Date: Sun Apr 15 09:09:02 2018 +0200
Updated to 1.21.2
Switched to SDL2
Added placeholders for system libs to be enabled once dependencies become available
mednafen.spec | 20 +++++++++++++++++---
sources | 2 +-
2 files changed, 18 insertions(+), 4 deletions(-)
---
diff --git a/mednafen.spec b/mednafen.spec
index 2d7cd6d..bcfd97a 100644
--- a/mednafen.spec
+++ b/mednafen.spec
@@ -1,7 +1,7 @@
%undefine _hardened_build
Name: mednafen
-Version: 0.9.48
+Version: 1.21.2
Release: 1%{?dist}
Summary: A multi-system emulator utilizing OpenGL and SDL
#mednafen is a monstrosity build out of many emulators hence the colourful licensing
@@ -9,10 +9,14 @@ License: GPLv2+ and BSD and ISC and LGPLv2+ and MIT and zlib
URL: https://mednafen.github.io/
Source0: https://mednafen.github.io/releases/files/%{name}-%{version}.tar.xz
BuildRequires: gettext
-BuildRequires: SDL-devel >= 1.2.0
+#1.3.0 is required
+#BuildRequires: libmpcdec-devel
+#2.09 is required
+#BuildRequires: lzo-devel
BuildRequires: pkgconfig(jack) => 1.0.2
+BuildRequires: pkgconfig(sdl2) => 2.0.5
BuildRequires: pkgconfig(sndfile) => 1.0.2
-BuildRequires: zlib-devel
+BuildRequires: pkgconfig(zlib)
%description
A portable, utilizing OpenGL and SDL, argument(command-line)-driven multi-system
@@ -64,6 +68,11 @@ export CFLAGS
export CXXFLAGS
%configure --disable-rpath
+#to be added once dependencies become available
+# --with-external-lzo
+# --with-external-mpcdec
+# --with-external-tremor
+# --with-external-trio
%make_build
@@ -83,6 +92,11 @@ rm -rf Documentation/*.def Documentation/*.php Documentation/generate.sh \
%changelog
+* Sun Apr 15 2018 Julian Sikorski <belegdol(a)fedoraproject.org> - 1.21.2-1
+- Updated to 1.21.2
+- Switched to SDL2
+- Added placeholders for system libs to be enabled once dependencies become available
+
* Sat Oct 07 2017 Julian Sikorski <belegdol(a)fedoraproject.org> - 0.9.48-1
- Updated to 0.9.48
diff --git a/sources b/sources
index c1c40cb..0fbd3bf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d741f013a05adb72928493b12c4933ff mednafen-0.9.48.tar.xz
+8e6cd5cd58ab9841667cfcb17ff009d6 mednafen-1.21.2.tar.xz
6 years, 7 months
[mednafen] Updated to 1.21.2 Switched to SDL2 Added placeholders for system libs to be enabled once dependencie
by Julian Sikorski
commit 998db0ce01d3b7ef0dd01d1775431294923f1e89
Author: Julian Sikorski <belegdol(a)fedoraproject.org>
Date: Sun Apr 15 09:05:01 2018 +0200
Updated to 1.21.2
Switched to SDL2
Added placeholders for system libs to be enabled once dependencies become available
mednafen.spec | 22 ++++++++++++++++++----
sources | 2 +-
2 files changed, 19 insertions(+), 5 deletions(-)
---
diff --git a/mednafen.spec b/mednafen.spec
index 8a6caa9..1bc4e8c 100644
--- a/mednafen.spec
+++ b/mednafen.spec
@@ -1,18 +1,22 @@
%undefine _hardened_build
Name: mednafen
-Version: 0.9.48
-Release: 2%{?dist}
+Version: 1.21.2
+Release: 1%{?dist}
Summary: A multi-system emulator utilizing OpenGL and SDL
#mednafen is a monstrosity build out of many emulators hence the colourful licensing
License: GPLv2+ and BSD and ISC and LGPLv2+ and MIT and zlib
URL: https://mednafen.github.io/
Source0: https://mednafen.github.io/releases/files/%{name}-%{version}.tar.xz
BuildRequires: gettext
-BuildRequires: SDL-devel >= 1.2.0
+#1.3.0 is required
+#BuildRequires: libmpcdec-devel
+#2.09 is required
+#BuildRequires: lzo-devel
BuildRequires: pkgconfig(jack) => 1.0.2
+BuildRequires: pkgconfig(sdl2) => 2.0.5
BuildRequires: pkgconfig(sndfile) => 1.0.2
-BuildRequires: zlib-devel
+BuildRequires: pkgconfig(zlib)
%description
A portable, utilizing OpenGL and SDL, argument(command-line)-driven multi-system
@@ -64,6 +68,11 @@ export CFLAGS
export CXXFLAGS
%configure --disable-rpath
+#to be added once dependencies become available
+# --with-external-lzo
+# --with-external-mpcdec
+# --with-external-tremor
+# --with-external-trio
%make_build
@@ -83,6 +92,11 @@ rm -rf Documentation/*.def Documentation/*.php Documentation/generate.sh \
%changelog
+* Sun Apr 15 2018 Julian Sikorski <belegdol(a)fedoraproject.org> - 1.21.2-1
+- Updated to 1.21.2
+- Switched to SDL2
+- Added placeholders for system libs to be enabled once dependencies become available
+
* Fri Mar 02 2018 RPM Fusion Release Engineering <leigh123linux(a)googlemail.com> - 0.9.48-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
diff --git a/sources b/sources
index c1c40cb..0fbd3bf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d741f013a05adb72928493b12c4933ff mednafen-0.9.48.tar.xz
+8e6cd5cd58ab9841667cfcb17ff009d6 mednafen-1.21.2.tar.xz
6 years, 7 months
[alsa-plugins-freeworld/f28] Fix build
by Leigh Scott
commit 877d014d9a4a93d019c6a4445ceab2058fb7de51
Author: leigh123linux <leigh123linux(a)googlemail.com>
Date: Sat Apr 14 13:32:15 2018 +0100
Fix build
alsa-plugins-freeworld.spec | 8 +-
ffmpeg35_buildfix.patch | 256 ++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 263 insertions(+), 1 deletion(-)
---
diff --git a/alsa-plugins-freeworld.spec b/alsa-plugins-freeworld.spec
index fe8b6ed..380ac91 100644
--- a/alsa-plugins-freeworld.spec
+++ b/alsa-plugins-freeworld.spec
@@ -1,12 +1,14 @@
Name: alsa-plugins-freeworld
Version: 1.1.6
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: The ALSA Plugins - freeworld version
# All packages are LGPLv2+ with the exception of samplerate which is GPLv2+
License: LGPLv2+
URL: http://www.alsa-project.org/
Source0: ftp://ftp.alsa-project.org/pub/plugins/alsa-plugins-%{version}.tar.bz2
Patch0: plugin-config.patch
+# Based on https://patchwork.kernel.org/patch/9753853/
+Patch1: ffmpeg35_buildfix.patch
BuildRequires: autoconf automake libtool
BuildRequires: alsa-lib-devel >= 1.1.6
@@ -43,6 +45,7 @@ libavcodec's resampler.
%prep
%setup -q -n alsa-plugins-%{version}%{?prever}
%patch0 -p1 -b .plugin-config
+%patch1 -p1 -b .ffmpeg35_buildfix
%build
autoreconf -vif
@@ -86,6 +89,9 @@ find $RPM_BUILD_ROOT -name "*.la" -exec rm {} \;
%changelog
+* Sat Apr 14 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 1.1.6-3
+- Fix build
+
* Fri Apr 13 2018 Jaroslav Kysela <perex(a)perex.cz> - 1.1.6-2
- Use plugin config files from upstream, spec cleanups
diff --git a/ffmpeg35_buildfix.patch b/ffmpeg35_buildfix.patch
new file mode 100644
index 0000000..982794f
--- /dev/null
+++ b/ffmpeg35_buildfix.patch
@@ -0,0 +1,256 @@
+--- a/rate-lavc/Makefile.am
++++ b/rate-lavc/Makefile.am
+@@ -7,7 +7,7 @@
+ AM_LDFLAGS = -module -avoid-version -export-dynamic -no-undefined $(LDFLAGS_NOUNDEFINED)
+
+ libasound_module_rate_lavcrate_la_SOURCES = rate_lavcrate.c
+-libasound_module_rate_lavcrate_la_LIBADD = @ALSA_LIBS@ @AVCODEC_LIBS@
++libasound_module_rate_lavcrate_la_LIBADD = @ALSA_LIBS@ -lavresample -lavutil
+
+ noinst_HEADERS = gcd.h
+
+
+--- a/rate-lavc/rate_lavcrate.c
++++ b/rate-lavr/rate_lavcrate.c
+@@ -1,9 +1,6 @@
+ /*
+- * Rate converter plugin using libavcodec's resampler
+- * Copyright (c) 2007 by Nicholas Kain <njkain(a)gmail.com>
+- *
+- * based on rate converter that uses libsamplerate
+- * Copyright (c) 2006 by Takashi Iwai <tiwai(a)suse.de>
++ * Rate converter plugin using libavresample
++ * Copyright (c) 2014 by Anton Khirnov
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -19,21 +16,23 @@
+ #include <stdio.h>
+ #include <alsa/asoundlib.h>
+ #include <alsa/pcm_rate.h>
+-#include AVCODEC_HEADER
+-#include "gcd.h"
++
++#include <libavresample/avresample.h>
++#include <libavutil/channel_layout.h>
++#include <libavutil/opt.h>
++#include <libavutil/mathematics.h>
++#include <libavutil/samplefmt.h>
++
+
+ static int filter_size = 16;
+ static int phase_shift = 10; /* auto-adjusts */
+ static double cutoff = 0; /* auto-adjusts */
+
+ struct rate_src {
+- struct AVResampleContext *context;
++ AVAudioResampleContext *avr;
++
+ int in_rate;
+ int out_rate;
+- int stored;
+- int point;
+- int16_t **out;
+- int16_t **in;
+ unsigned int channels;
+ };
+
+@@ -50,26 +49,7 @@ static snd_pcm_uframes_t output_frames(void *obj, snd_pcm_uframes_t frames)
+ static void pcm_src_free(void *obj)
+ {
+ struct rate_src *rate = obj;
+- int i;
+-
+- if (rate->out) {
+- for (i=0; i<rate->channels; i++) {
+- free(rate->out[i]);
+- }
+- free(rate->out);
+- }
+- if (rate->in) {
+- for (i=0; i<rate->channels; i++) {
+- free(rate->in[i]);
+- }
+- free(rate->in);
+- }
+- rate->out = rate->in = NULL;
+-
+- if (rate->context) {
+- av_resample_close(rate->context);
+- rate->context = NULL;
+- }
++ avresample_free(&rate->avr);
+ }
+
+ static int pcm_src_init(void *obj, snd_pcm_rate_info_t *info)
+@@ -77,12 +57,14 @@ static int pcm_src_init(void *obj, snd_pcm_rate_info_t *info)
+ struct rate_src *rate = obj;
+ int i, ir, or;
+
+- if (! rate->context || rate->channels != info->channels) {
++ if (!rate->avr || rate->channels != info->channels) {
++ int ret;
++
+ pcm_src_free(rate);
+ rate->channels = info->channels;
+ ir = rate->in_rate = info->in.rate;
+ or = rate->out_rate = info->out.rate;
+- i = gcd(or, ir);
++ i = av_gcd(or, ir);
+ if (or > ir) {
+ phase_shift = or/i;
+ } else {
+@@ -93,25 +75,27 @@ static int pcm_src_init(void *obj, snd_pcm_rate_info_t *info)
+ if (cutoff < 0.80)
+ cutoff = 0.80;
+ }
+- rate->context = av_resample_init(info->out.rate, info->in.rate,
+- filter_size, phase_shift,
+- (info->out.rate >= info->in.rate ? 0 : 1), cutoff);
+- if (!rate->context)
+- return -EINVAL;
+- }
+
+- rate->out = malloc(rate->channels * sizeof(int16_t *));
+- rate->in = malloc(rate->channels * sizeof(int16_t *));
+- for (i=0; i<rate->channels; i++) {
+- rate->out[i] = calloc(info->out.period_size * 2,
+- sizeof(int16_t));
+- rate->in[i] = calloc(info->in.period_size * 2,
+- sizeof(int16_t));
+- }
+- rate->point = info->in.period_size / 2;
+- if (!rate->out || !rate->in) {
+- pcm_src_free(rate);
+- return -ENOMEM;
++ rate->avr = avresample_alloc_context();
++ if (!rate->avr)
++ return -ENOMEM;
++
++ av_opt_set_int(rate->avr, "in_sample_rate", info->in.rate, 0);
++ av_opt_set_int(rate->avr, "out_sample_rate", info->out.rate, 0);
++ av_opt_set_int(rate->avr, "in_sample_format", AV_SAMPLE_FMT_S16, 0);
++ av_opt_set_int(rate->avr, "out_sample_format", AV_SAMPLE_FMT_S16, 0);
++ av_opt_set_int(rate->avr, "in_channel_layout", av_get_default_channel_layout(rate->channels), 0);
++ av_opt_set_int(rate->avr, "out_channel_layout", av_get_default_channel_layout(rate->channels), 0);
++
++ av_opt_set_int(rate->avr, "filter_size", filter_size, 0);
++ av_opt_set_int(rate->avr, "phase_shift", phase_shift, 0);
++ av_opt_set_double(rate->avr, "cutoff", cutoff, 0);
++
++ ret = avresample_open(rate->avr);
++ if (ret < 0) {
++ avresample_free(&rate->avr);
++ return -EINVAL;
++ }
+ }
+
+ return 0;
+@@ -129,48 +113,10 @@ static int pcm_src_adjust_pitch(void *obj, snd_pcm_rate_info_t *info)
+ static void pcm_src_reset(void *obj)
+ {
+ struct rate_src *rate = obj;
+- rate->stored = 0;
+-}
+
+-static void deinterleave(const int16_t *src, int16_t **dst, unsigned int frames,
+- unsigned int chans, int overflow)
+-{
+- int i, j;
+-
+- if (chans == 1) {
+- memcpy(dst + overflow, src, frames*sizeof(int16_t));
+- } else if (chans == 2) {
+- for (j=overflow; j<(frames + overflow); j++) {
+- dst[0][j] = *(src++);
+- dst[1][j] = *(src++);
+- }
+- } else {
+- for (j=overflow; j<(frames + overflow); j++) {
+- for (i=0; i<chans; i++) {
+- dst[i][j] = *(src++);
+- }
+- }
+- }
+-}
+-
+-static void reinterleave(int16_t **src, int16_t *dst, unsigned int frames,
+- unsigned int chans)
+-{
+- int i, j;
+-
+- if (chans == 1) {
+- memcpy(dst, src, frames*sizeof(int16_t));
+- } else if (chans == 2) {
+- for (j=0; j<frames; j++) {
+- *(dst++) = src[0][j];
+- *(dst++) = src[1][j];
+- }
+- } else {
+- for (j=0; j<frames; j++) {
+- for (i=0; i<chans; i++) {
+- *(dst++) = src[i][j];
+- }
+- }
++ if (rate->avr) {
++ avresample_close(rate->avr);
++ avresample_open(rate->avr);
+ }
+ }
+
+@@ -179,22 +125,13 @@ static void pcm_src_convert_s16(void *obj, int16_t *dst, unsigned int
+ {
+ struct rate_src *rate = obj;
+ int consumed = 0, chans=rate->channels, ret=0, i;
+- int total_in = rate->stored + src_frames, new_stored;
+-
+- deinterleave(src, rate->in, src_frames, chans, rate->point);
+- for (i=0; i<chans; ++i) {
+- ret = av_resample(rate->context, rate->out[i],
+- rate->in[i]+rate->point-rate->stored, &consumed,
+- total_in, dst_frames, i == (chans - 1));
+- new_stored = total_in-consumed;
+- memmove(rate->in[i]+rate->point-new_stored,
+- rate->in[i]+rate->point-rate->stored+consumed,
+- new_stored*sizeof(int16_t));
+- }
+- av_resample_compensate(rate->context,
+- total_in-src_frames>filter_size?0:1, src_frames);
+- reinterleave(rate->out, dst, ret, chans);
+- rate->stored = total_in-consumed;
++ int total_in = avresample_get_delay(rate->avr) + src_frames;
++
++ ret = avresample_convert(rate->avr, &dst, dst_frames * chans * 2, dst_frames,
++ &src, src_frames * chans * 2, src_frames);
++
++ avresample_set_compensation(rate->avr,
++ total_in - src_frames > filter_size ? 0 : 1, src_frames);
+ }
+
+ static void pcm_src_close(void *obj)
+@@ -212,7 +149,7 @@ static int get_supported_rates(void *obj, unsigned int *rate_min,
+
+ static void dump(void *obj, snd_output_t *out)
+ {
+- snd_output_printf(out, "Converter: liblavc\n");
++ snd_output_printf(out, "Converter: libavr\n");
+ }
+ #endif
+
+@@ -220,7 +157,6 @@ static snd_pcm_rate_ops_t pcm_src_ops = {
+ .close = pcm_src_close,
+ .init = pcm_src_init,
+ .free = pcm_src_free,
+- .reset = pcm_src_reset,
+ .adjust_pitch = pcm_src_adjust_pitch,
+ .convert_s16 = pcm_src_convert_s16,
+ .input_frames = input_frames,
+@@ -248,7 +184,7 @@ int pcm_src_open(unsigned int version, void **objp, snd_pcm_rate_ops_t *ops)
+ return -ENOMEM;
+
+ *objp = rate;
+- rate->context = NULL;
++ rate->avr = NULL;
+ #if SND_PCM_RATE_PLUGIN_VERSION >= 0x010002
+ if (version == 0x010001)
+ memcpy(ops, &pcm_src_ops, sizeof(snd_pcm_rate_old_ops_t));
6 years, 7 months
[alsa-plugins-freeworld] Fix build
by Leigh Scott
commit 2b88547bb354945d743af96344d73d96b47738c2
Author: leigh123linux <leigh123linux(a)googlemail.com>
Date: Sat Apr 14 13:32:15 2018 +0100
Fix build
alsa-plugins-freeworld.spec | 8 +-
ffmpeg35_buildfix.patch | 256 ++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 263 insertions(+), 1 deletion(-)
---
diff --git a/alsa-plugins-freeworld.spec b/alsa-plugins-freeworld.spec
index fe8b6ed..380ac91 100644
--- a/alsa-plugins-freeworld.spec
+++ b/alsa-plugins-freeworld.spec
@@ -1,12 +1,14 @@
Name: alsa-plugins-freeworld
Version: 1.1.6
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: The ALSA Plugins - freeworld version
# All packages are LGPLv2+ with the exception of samplerate which is GPLv2+
License: LGPLv2+
URL: http://www.alsa-project.org/
Source0: ftp://ftp.alsa-project.org/pub/plugins/alsa-plugins-%{version}.tar.bz2
Patch0: plugin-config.patch
+# Based on https://patchwork.kernel.org/patch/9753853/
+Patch1: ffmpeg35_buildfix.patch
BuildRequires: autoconf automake libtool
BuildRequires: alsa-lib-devel >= 1.1.6
@@ -43,6 +45,7 @@ libavcodec's resampler.
%prep
%setup -q -n alsa-plugins-%{version}%{?prever}
%patch0 -p1 -b .plugin-config
+%patch1 -p1 -b .ffmpeg35_buildfix
%build
autoreconf -vif
@@ -86,6 +89,9 @@ find $RPM_BUILD_ROOT -name "*.la" -exec rm {} \;
%changelog
+* Sat Apr 14 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 1.1.6-3
+- Fix build
+
* Fri Apr 13 2018 Jaroslav Kysela <perex(a)perex.cz> - 1.1.6-2
- Use plugin config files from upstream, spec cleanups
diff --git a/ffmpeg35_buildfix.patch b/ffmpeg35_buildfix.patch
new file mode 100644
index 0000000..982794f
--- /dev/null
+++ b/ffmpeg35_buildfix.patch
@@ -0,0 +1,256 @@
+--- a/rate-lavc/Makefile.am
++++ b/rate-lavc/Makefile.am
+@@ -7,7 +7,7 @@
+ AM_LDFLAGS = -module -avoid-version -export-dynamic -no-undefined $(LDFLAGS_NOUNDEFINED)
+
+ libasound_module_rate_lavcrate_la_SOURCES = rate_lavcrate.c
+-libasound_module_rate_lavcrate_la_LIBADD = @ALSA_LIBS@ @AVCODEC_LIBS@
++libasound_module_rate_lavcrate_la_LIBADD = @ALSA_LIBS@ -lavresample -lavutil
+
+ noinst_HEADERS = gcd.h
+
+
+--- a/rate-lavc/rate_lavcrate.c
++++ b/rate-lavr/rate_lavcrate.c
+@@ -1,9 +1,6 @@
+ /*
+- * Rate converter plugin using libavcodec's resampler
+- * Copyright (c) 2007 by Nicholas Kain <njkain(a)gmail.com>
+- *
+- * based on rate converter that uses libsamplerate
+- * Copyright (c) 2006 by Takashi Iwai <tiwai(a)suse.de>
++ * Rate converter plugin using libavresample
++ * Copyright (c) 2014 by Anton Khirnov
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -19,21 +16,23 @@
+ #include <stdio.h>
+ #include <alsa/asoundlib.h>
+ #include <alsa/pcm_rate.h>
+-#include AVCODEC_HEADER
+-#include "gcd.h"
++
++#include <libavresample/avresample.h>
++#include <libavutil/channel_layout.h>
++#include <libavutil/opt.h>
++#include <libavutil/mathematics.h>
++#include <libavutil/samplefmt.h>
++
+
+ static int filter_size = 16;
+ static int phase_shift = 10; /* auto-adjusts */
+ static double cutoff = 0; /* auto-adjusts */
+
+ struct rate_src {
+- struct AVResampleContext *context;
++ AVAudioResampleContext *avr;
++
+ int in_rate;
+ int out_rate;
+- int stored;
+- int point;
+- int16_t **out;
+- int16_t **in;
+ unsigned int channels;
+ };
+
+@@ -50,26 +49,7 @@ static snd_pcm_uframes_t output_frames(void *obj, snd_pcm_uframes_t frames)
+ static void pcm_src_free(void *obj)
+ {
+ struct rate_src *rate = obj;
+- int i;
+-
+- if (rate->out) {
+- for (i=0; i<rate->channels; i++) {
+- free(rate->out[i]);
+- }
+- free(rate->out);
+- }
+- if (rate->in) {
+- for (i=0; i<rate->channels; i++) {
+- free(rate->in[i]);
+- }
+- free(rate->in);
+- }
+- rate->out = rate->in = NULL;
+-
+- if (rate->context) {
+- av_resample_close(rate->context);
+- rate->context = NULL;
+- }
++ avresample_free(&rate->avr);
+ }
+
+ static int pcm_src_init(void *obj, snd_pcm_rate_info_t *info)
+@@ -77,12 +57,14 @@ static int pcm_src_init(void *obj, snd_pcm_rate_info_t *info)
+ struct rate_src *rate = obj;
+ int i, ir, or;
+
+- if (! rate->context || rate->channels != info->channels) {
++ if (!rate->avr || rate->channels != info->channels) {
++ int ret;
++
+ pcm_src_free(rate);
+ rate->channels = info->channels;
+ ir = rate->in_rate = info->in.rate;
+ or = rate->out_rate = info->out.rate;
+- i = gcd(or, ir);
++ i = av_gcd(or, ir);
+ if (or > ir) {
+ phase_shift = or/i;
+ } else {
+@@ -93,25 +75,27 @@ static int pcm_src_init(void *obj, snd_pcm_rate_info_t *info)
+ if (cutoff < 0.80)
+ cutoff = 0.80;
+ }
+- rate->context = av_resample_init(info->out.rate, info->in.rate,
+- filter_size, phase_shift,
+- (info->out.rate >= info->in.rate ? 0 : 1), cutoff);
+- if (!rate->context)
+- return -EINVAL;
+- }
+
+- rate->out = malloc(rate->channels * sizeof(int16_t *));
+- rate->in = malloc(rate->channels * sizeof(int16_t *));
+- for (i=0; i<rate->channels; i++) {
+- rate->out[i] = calloc(info->out.period_size * 2,
+- sizeof(int16_t));
+- rate->in[i] = calloc(info->in.period_size * 2,
+- sizeof(int16_t));
+- }
+- rate->point = info->in.period_size / 2;
+- if (!rate->out || !rate->in) {
+- pcm_src_free(rate);
+- return -ENOMEM;
++ rate->avr = avresample_alloc_context();
++ if (!rate->avr)
++ return -ENOMEM;
++
++ av_opt_set_int(rate->avr, "in_sample_rate", info->in.rate, 0);
++ av_opt_set_int(rate->avr, "out_sample_rate", info->out.rate, 0);
++ av_opt_set_int(rate->avr, "in_sample_format", AV_SAMPLE_FMT_S16, 0);
++ av_opt_set_int(rate->avr, "out_sample_format", AV_SAMPLE_FMT_S16, 0);
++ av_opt_set_int(rate->avr, "in_channel_layout", av_get_default_channel_layout(rate->channels), 0);
++ av_opt_set_int(rate->avr, "out_channel_layout", av_get_default_channel_layout(rate->channels), 0);
++
++ av_opt_set_int(rate->avr, "filter_size", filter_size, 0);
++ av_opt_set_int(rate->avr, "phase_shift", phase_shift, 0);
++ av_opt_set_double(rate->avr, "cutoff", cutoff, 0);
++
++ ret = avresample_open(rate->avr);
++ if (ret < 0) {
++ avresample_free(&rate->avr);
++ return -EINVAL;
++ }
+ }
+
+ return 0;
+@@ -129,48 +113,10 @@ static int pcm_src_adjust_pitch(void *obj, snd_pcm_rate_info_t *info)
+ static void pcm_src_reset(void *obj)
+ {
+ struct rate_src *rate = obj;
+- rate->stored = 0;
+-}
+
+-static void deinterleave(const int16_t *src, int16_t **dst, unsigned int frames,
+- unsigned int chans, int overflow)
+-{
+- int i, j;
+-
+- if (chans == 1) {
+- memcpy(dst + overflow, src, frames*sizeof(int16_t));
+- } else if (chans == 2) {
+- for (j=overflow; j<(frames + overflow); j++) {
+- dst[0][j] = *(src++);
+- dst[1][j] = *(src++);
+- }
+- } else {
+- for (j=overflow; j<(frames + overflow); j++) {
+- for (i=0; i<chans; i++) {
+- dst[i][j] = *(src++);
+- }
+- }
+- }
+-}
+-
+-static void reinterleave(int16_t **src, int16_t *dst, unsigned int frames,
+- unsigned int chans)
+-{
+- int i, j;
+-
+- if (chans == 1) {
+- memcpy(dst, src, frames*sizeof(int16_t));
+- } else if (chans == 2) {
+- for (j=0; j<frames; j++) {
+- *(dst++) = src[0][j];
+- *(dst++) = src[1][j];
+- }
+- } else {
+- for (j=0; j<frames; j++) {
+- for (i=0; i<chans; i++) {
+- *(dst++) = src[i][j];
+- }
+- }
++ if (rate->avr) {
++ avresample_close(rate->avr);
++ avresample_open(rate->avr);
+ }
+ }
+
+@@ -179,22 +125,13 @@ static void pcm_src_convert_s16(void *obj, int16_t *dst, unsigned int
+ {
+ struct rate_src *rate = obj;
+ int consumed = 0, chans=rate->channels, ret=0, i;
+- int total_in = rate->stored + src_frames, new_stored;
+-
+- deinterleave(src, rate->in, src_frames, chans, rate->point);
+- for (i=0; i<chans; ++i) {
+- ret = av_resample(rate->context, rate->out[i],
+- rate->in[i]+rate->point-rate->stored, &consumed,
+- total_in, dst_frames, i == (chans - 1));
+- new_stored = total_in-consumed;
+- memmove(rate->in[i]+rate->point-new_stored,
+- rate->in[i]+rate->point-rate->stored+consumed,
+- new_stored*sizeof(int16_t));
+- }
+- av_resample_compensate(rate->context,
+- total_in-src_frames>filter_size?0:1, src_frames);
+- reinterleave(rate->out, dst, ret, chans);
+- rate->stored = total_in-consumed;
++ int total_in = avresample_get_delay(rate->avr) + src_frames;
++
++ ret = avresample_convert(rate->avr, &dst, dst_frames * chans * 2, dst_frames,
++ &src, src_frames * chans * 2, src_frames);
++
++ avresample_set_compensation(rate->avr,
++ total_in - src_frames > filter_size ? 0 : 1, src_frames);
+ }
+
+ static void pcm_src_close(void *obj)
+@@ -212,7 +149,7 @@ static int get_supported_rates(void *obj, unsigned int *rate_min,
+
+ static void dump(void *obj, snd_output_t *out)
+ {
+- snd_output_printf(out, "Converter: liblavc\n");
++ snd_output_printf(out, "Converter: libavr\n");
+ }
+ #endif
+
+@@ -220,7 +157,6 @@ static snd_pcm_rate_ops_t pcm_src_ops = {
+ .close = pcm_src_close,
+ .init = pcm_src_init,
+ .free = pcm_src_free,
+- .reset = pcm_src_reset,
+ .adjust_pitch = pcm_src_adjust_pitch,
+ .convert_s16 = pcm_src_convert_s16,
+ .input_frames = input_frames,
+@@ -248,7 +184,7 @@ int pcm_src_open(unsigned int version, void **objp, snd_pcm_rate_ops_t *ops)
+ return -ENOMEM;
+
+ *objp = rate;
+- rate->context = NULL;
++ rate->avr = NULL;
+ #if SND_PCM_RATE_PLUGIN_VERSION >= 0x010002
+ if (version == 0x010001)
+ memcpy(ops, &pcm_src_ops, sizeof(snd_pcm_rate_old_ops_t));
6 years, 7 months
[faad2/f28] Update to 2.8.8
by Leigh Scott
Summary of changes:
b6c001c... Update to 2.8.8 (*)
(*) This commit already existed in another branch; no separate mail sent
6 years, 7 months
[faad2] Update to 2.8.8
by Leigh Scott
commit b6c001c7849806e081e65ca005511e8958e5386c
Author: leigh123linux <leigh123linux(a)googlemail.com>
Date: Sat Apr 14 10:20:25 2018 +0100
Update to 2.8.8
.gitignore | 1 +
faad2.spec | 16 +++++++++-------
fix_undefined_version.patch | 8 ++++----
sources | 2 +-
4 files changed, 15 insertions(+), 12 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 840c8d1..ed693f7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
faad2-2.7.tar.bz2
/faad2-2.8.1.tar.bz2
+/faad2-2.8.8.tar.gz
diff --git a/faad2.spec b/faad2.spec
index 5c46081..7b24544 100644
--- a/faad2.spec
+++ b/faad2.spec
@@ -3,12 +3,12 @@
Summary: Library and frontend for decoding MPEG2/4 AAC
Name: faad2
Epoch: 1
-Version: 2.8.1
-Release: 3%{?dist}
+Version: 2.8.8
+Release: 1%{?dist}
License: GPLv2+
Group: Applications/Multimedia
URL: http://www.audiocoding.com/faad2.html
-Source: http://downloads.sourceforge.net/faac/%{name}-%{version}.tar.bz2
+Source: http://downloads.sourceforge.net/sourceforge/faac/%{name}-%{version}.tar.gz
# fix non-PIC objects in libmp4ff.a
Patch0: %{name}-pic.patch
Patch1: fix_undefined_version.patch
@@ -62,7 +62,7 @@ This package contains an input plugin for xmms.
%prep
%autosetup -p1
-./bootstrap
+autoreconf -fiv
%build
%configure \
@@ -78,9 +78,8 @@ This package contains an input plugin for xmms.
find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f
-%post libs -p /sbin/ldconfig
+%ldconfig_scriptlets libs
-%postun libs -p /sbin/ldconfig
%files
%doc AUTHORS ChangeLog NEWS README*
@@ -92,7 +91,7 @@ find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f
%{_libdir}/libfaad*.so.*
%files devel
-%doc TODO docs/Ahead?AAC?Decoder?library?documentation.pdf
+%doc TODO
%{_includedir}/faad.h
%{_includedir}/neaacdec.h
%{_libdir}/libfaad*.so
@@ -102,6 +101,9 @@ find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f
%{xmmsinputplugindir}/libmp4.so
%changelog
+* Sat Apr 14 2018 Leigh Scott <leigh123linux(a)googlemail.com> - 1:2.8.8-1
+- Update to 2.8.8
+
* Wed Feb 28 2018 RPM Fusion Release Engineering <leigh123linux(a)googlemail.com> - 1:2.8.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
diff --git a/fix_undefined_version.patch b/fix_undefined_version.patch
index f75c054..d90c290 100644
--- a/fix_undefined_version.patch
+++ b/fix_undefined_version.patch
@@ -1,11 +1,11 @@
--- a/include/neaacdec.h
+++ b/include/neaacdec.h
-@@ -73,7 +73,7 @@
- #endif
+@@ -67,7 +67,7 @@
+ #define NEAACDECAPI
#endif
--#define FAAD2_VERSION PACKAGE_VERSION
-+#define FAAD2_VERSION "2.8.1"
+-#define FAAD2_VERSION "unknown"
++#define FAAD2_VERSION "2.8.8"
/* object types for AAC */
#define MAIN 1
diff --git a/sources b/sources
index 7763807..a367e32 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c0c0d1e6d66de38c40ae56a1981321f9 faad2-2.8.1.tar.bz2
+28f6116efdbe9378269f8a6221767d1f faad2-2.8.8.tar.gz
6 years, 7 months