mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-09-13 00:13:37 +02:00
add libFLAC for use with audioplayer (enable with --enable-flac)
git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@1540 e54a6e83-5905-42d5-8d5c-058d10e6a962
Origin commit data
------------------
Branch: ni/coolstream
Commit: bfb705ef5c
Author: Stefan Seyfried <seife@tuxbox-git.slipkontur.de>
Date: 2011-06-13 (Mon, 13 Jun 2011)
------------------
This commit was generated by Migit
This commit is contained in:
11
configure.ac
11
configure.ac
@@ -80,6 +80,17 @@ AC_ARG_ENABLE(freesatepg,
|
|||||||
[ --enable-freesatepg enable Freesat EPG code (experimental)],
|
[ --enable-freesatepg enable Freesat EPG code (experimental)],
|
||||||
[AC_DEFINE(ENABLE_FREESATEPG,1,[enable Freesat EPG code])])
|
[AC_DEFINE(ENABLE_FREESATEPG,1,[enable Freesat EPG code])])
|
||||||
|
|
||||||
|
# FLAC - Free Lossless Audio Codec
|
||||||
|
AC_ARG_ENABLE(flac,
|
||||||
|
AS_HELP_STRING(--enable-flac,include FLAC support),
|
||||||
|
,[enable_flac=no])
|
||||||
|
|
||||||
|
AM_CONDITIONAL(ENABLE_FLAC,test "$enable_flac" = "yes")
|
||||||
|
if test "$enable_flac" = "yes"; then
|
||||||
|
AC_DEFINE(ENABLE_FLAC,1,[include FLAC support])
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Check for libtdservicedb - the new one - for testing only
|
# Check for libtdservicedb - the new one - for testing only
|
||||||
#
|
#
|
||||||
|
@@ -41,6 +41,16 @@ bin_PROGRAMS = neutrino
|
|||||||
|
|
||||||
neutrino_SOURCES = neutrino_menue.cpp neutrino.cpp
|
neutrino_SOURCES = neutrino_menue.cpp neutrino.cpp
|
||||||
|
|
||||||
|
AM_CPPFLAGS =
|
||||||
|
|
||||||
|
if ENABLE_FLAC
|
||||||
|
#FLACLIBS = -lFLAC
|
||||||
|
FLACLIBS = $(DESTDIR)/lib/libFLAC.a
|
||||||
|
AM_CPPFLAGS += -DENABLE_FLAC
|
||||||
|
else
|
||||||
|
FLACLIBS =
|
||||||
|
endif
|
||||||
|
|
||||||
neutrino_LDADD = \
|
neutrino_LDADD = \
|
||||||
daemonc/libneutrino_daemonc.a \
|
daemonc/libneutrino_daemonc.a \
|
||||||
gui/bedit/libneutrino_gui_bedit.a \
|
gui/bedit/libneutrino_gui_bedit.a \
|
||||||
@@ -82,6 +92,7 @@ neutrino_LDADD = \
|
|||||||
@LIBCS_LIBS@ \
|
@LIBCS_LIBS@ \
|
||||||
@AVFORMAT_LIBS@ \
|
@AVFORMAT_LIBS@ \
|
||||||
@AVUTIL_LIBS@ \
|
@AVUTIL_LIBS@ \
|
||||||
|
$(FLACLIBS) \
|
||||||
$(VORBISLIBS) \
|
$(VORBISLIBS) \
|
||||||
-lungif \
|
-lungif \
|
||||||
-ljpeg \
|
-ljpeg \
|
||||||
|
@@ -17,12 +17,17 @@ endif
|
|||||||
|
|
||||||
noinst_LIBRARIES = libneutrino_driver_audiodec.a
|
noinst_LIBRARIES = libneutrino_driver_audiodec.a
|
||||||
|
|
||||||
|
if ENABLE_FLAC
|
||||||
|
FLACdec= flacdec.cpp
|
||||||
|
endif
|
||||||
|
|
||||||
libneutrino_driver_audiodec_a_SOURCES = \
|
libneutrino_driver_audiodec_a_SOURCES = \
|
||||||
basedec.cpp \
|
basedec.cpp \
|
||||||
cdrdec.cpp \
|
cdrdec.cpp \
|
||||||
mp3dec.cpp \
|
mp3dec.cpp \
|
||||||
oggdec.cpp \
|
oggdec.cpp \
|
||||||
wavdec.cpp \
|
wavdec.cpp \
|
||||||
|
$(FLACdec) \
|
||||||
tag.c \
|
tag.c \
|
||||||
crc.c \
|
crc.c \
|
||||||
vis.cpp
|
vis.cpp
|
||||||
|
@@ -33,6 +33,9 @@
|
|||||||
#include <mp3dec.h>
|
#include <mp3dec.h>
|
||||||
#include <oggdec.h>
|
#include <oggdec.h>
|
||||||
#include <wavdec.h>
|
#include <wavdec.h>
|
||||||
|
#ifdef ENABLE_FLAC
|
||||||
|
#include <flacdec.h>
|
||||||
|
#endif
|
||||||
#include <linux/soundcard.h>
|
#include <linux/soundcard.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
@@ -120,6 +123,14 @@ CBaseDec::RetCode CBaseDec::DecoderBase(CAudiofile* const in,
|
|||||||
&in->MetaData, t,
|
&in->MetaData, t,
|
||||||
secondsToSkip );
|
secondsToSkip );
|
||||||
}
|
}
|
||||||
|
#ifdef ENABLE_FLAC
|
||||||
|
else if (in->FileType == CFile::FILE_FLAC)
|
||||||
|
{
|
||||||
|
Status = CFlacDec::getInstance()->Decoder(fp, OutputFd, state,
|
||||||
|
&in->MetaData, t,
|
||||||
|
secondsToSkip );
|
||||||
|
}
|
||||||
|
#endif
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fprintf( stderr, "DecoderBase: Supplied filetype is not " );
|
fprintf( stderr, "DecoderBase: Supplied filetype is not " );
|
||||||
@@ -141,8 +152,12 @@ bool CBaseDec::GetMetaDataBase(CAudiofile* const in, const bool nice)
|
|||||||
{
|
{
|
||||||
bool Status = true;
|
bool Status = true;
|
||||||
|
|
||||||
if ( in->FileType == CFile::FILE_MP3 || in->FileType == CFile::FILE_OGG ||
|
if (in->FileType == CFile::FILE_MP3 || in->FileType == CFile::FILE_OGG
|
||||||
in->FileType == CFile::FILE_WAV || in->FileType == CFile::FILE_CDR )
|
|| in->FileType == CFile::FILE_WAV || in->FileType == CFile::FILE_CDR
|
||||||
|
#ifdef ENABLE_FLAC
|
||||||
|
|| in->FileType == CFile::FILE_FLAC
|
||||||
|
#endif
|
||||||
|
)
|
||||||
{
|
{
|
||||||
FILE* fp = fopen( in->Filename.c_str(), "r" );
|
FILE* fp = fopen( in->Filename.c_str(), "r" );
|
||||||
if ( fp == NULL )
|
if ( fp == NULL )
|
||||||
@@ -173,7 +188,12 @@ bool CBaseDec::GetMetaDataBase(CAudiofile* const in, const bool nice)
|
|||||||
Status = CCdrDec::getInstance()->GetMetaData(fp, nice,
|
Status = CCdrDec::getInstance()->GetMetaData(fp, nice,
|
||||||
&in->MetaData);
|
&in->MetaData);
|
||||||
}
|
}
|
||||||
|
#ifdef ENABLE_FLAC
|
||||||
|
else if (in->FileType == CFile::FILE_FLAC)
|
||||||
|
{
|
||||||
|
Status = CFlacDec::getInstance()->GetMetaData(fp, nice, &in->MetaData);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if ( fclose( fp ) == EOF )
|
if ( fclose( fp ) == EOF )
|
||||||
{
|
{
|
||||||
fprintf( stderr, "Could not close file %s.\n",
|
fprintf( stderr, "Could not close file %s.\n",
|
||||||
|
@@ -56,7 +56,8 @@ public:
|
|||||||
CDR,
|
CDR,
|
||||||
MP3,
|
MP3,
|
||||||
OGG,
|
OGG,
|
||||||
WAV
|
WAV,
|
||||||
|
FLAC
|
||||||
};
|
};
|
||||||
AudioType type;
|
AudioType type;
|
||||||
std::string type_info;
|
std::string type_info;
|
||||||
|
Reference in New Issue
Block a user