audio/lastfm: Fixed for the newer ffmpeg.

Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
This commit is contained in:
Willy Sudiarto Raharjo 2017-02-13 16:46:39 +01:00
parent ed4f3ed134
commit 26cf71ba2d
3 changed files with 42 additions and 15 deletions

View file

@ -0,0 +1,40 @@
--- app/fingerprinter/LAV_Source.cpp
+++ app/fingerprinter/LAV_Source.cpp
@@ -23,6 +23,10 @@
#define __STDC_CONSTANT_MACROS 1
#endif
+#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000
+#endif
+
extern "C" {
#include <libavformat/avformat.h>
#include <libavutil/mathematics.h>
@@ -113,7 +117,7 @@
{
char buf[256];
AVPacket packet;
- AVFrame *decodedFrame = avcodec_alloc_frame();
+ AVFrame *decodedFrame = av_frame_alloc();
av_init_packet(&packet);
int frameFinished = 0;
@@ -288,7 +292,7 @@
av_free_packet(&packet);
}
timestamp += (double)nSamples / decodedFrame->sample_rate;
- avcodec_free_frame(&decodedFrame);
+ av_frame_free(&decodedFrame);
return outBuffer;
}
@@ -405,7 +409,7 @@
void LAV_Source::release()
{
- if ( d->inCodecContext && d->inCodecContext->codec_id != CODEC_ID_NONE )
+ if ( d->inCodecContext && d->inCodecContext->codec_id != AV_CODEC_ID_NONE )
{
avcodec_close(d->inCodecContext);
}

View file

@ -1,13 +0,0 @@
diff -Naur lastfm-desktop-2.1.36.orig/app/fingerprinter/LAV_Source.cpp lastfm-desktop-2.1.36/app/fingerprinter/LAV_Source.cpp
--- lastfm-desktop-2.1.36.orig/app/fingerprinter/LAV_Source.cpp 2013-09-03 12:19:10.000000000 +0000
+++ lastfm-desktop-2.1.36/app/fingerprinter/LAV_Source.cpp 2014-01-01 02:15:23.422896266 +0000
@@ -34,6 +34,9 @@
# include <libavresample/avresample.h>
# include <libavutil/opt.h>
#endif
+#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
+#endif
}
#include <iostream>

View file

@ -72,13 +72,13 @@ find -L . \
# Fix paths.
cat $CWD/package-paths.patch | sed -e "s|@LIBDIRSUFFIX@|$LIBDIRSUFFIX|" \
| patch -p1
# Fix for ffmpeg 2.x.
patch -p1 < $CWD/ffmpeg-2.0.patch
# Fix for "ambiguous overload for operator<<" in gcc-4.9
# thanks to Spiek on github (https://github.com/lastfm/lastfm-desktop/pull/44)
patch -p1 < $CWD/github-192b979c57a.patch
# Turn on verbose compile output.
sed -i 's|^CONFIG.*|#&|' admin/include.qmake
# Fix for ffmpeg 3.x
patch -p0 < $CWD/LAV_Source_fix.patch
qmake PREFIX="/usr" QMAKE_CFLAGS+="$SLKCFLAGS" QMAKE_CXXFLAGS+="$SLKCFLAGS" \
CONFIG+="release" LIBS+="-L/usr/lib${LIBDIRSUFFIX}" -o Makefile Last.fm.pro