[SCM] faac/master: Build faac against the public API exposed in <faac.h> instead of the private API defined in "libfaac/frame.h".

fabian-guest at users.alioth.debian.org fabian-guest at users.alioth.debian.org
Tue Feb 7 13:29:56 UTC 2012


The following commit has been merged in the master branch:
commit bd3aba5daf0d113f0a148c8e51b2edae7fa15a8d
Author: Fabian Greffrath <fabian at greffrath.com>
Date:   Tue Feb 7 14:27:36 2012 +0100

    Build faac against the public API exposed in <faac.h> instead of the private API defined in "libfaac/frame.h".

diff --git a/debian/patches/exposed-API.patch b/debian/patches/exposed-API.patch
new file mode 100644
index 0000000..733b48e
--- /dev/null
+++ b/debian/patches/exposed-API.patch
@@ -0,0 +1,390 @@
+Description: Build faac against the public API exposed in <faac.h>
+ instead of the private API defined in "libfaac/frame.h".
+Author: Fabian Greffrath <fabian+debian at greffrath.com>
+Forwarded: http://sourceforge.net/tracker/?func=detail&aid=3485323&group_id=704&atid=100704
+
+--- faac.orig/libfaac/aacquant.c
++++ faac/libfaac/aacquant.c
+@@ -23,7 +23,7 @@
+ #include <math.h>
+ #include <stdlib.h>
+ 
+-#include "frame.h"
++#include <faac.h>
+ #include "aacquant.h"
+ #include "coder.h"
+ #include "huffman.h"
+--- faac.orig/libfaac/backpred.c
++++ faac/libfaac/backpred.c
+@@ -34,7 +34,7 @@ Copyright (c) 1997.
+ #include "backpred.h"
+ 
+ 
+-void PredInit(faacEncHandle hEncoder)
++void PredInit(faacEncStruct* hEncoder)
+ {
+     unsigned int channel;
+ 
+--- faac.orig/libfaac/backpred.h
++++ faac/libfaac/backpred.h
+@@ -43,7 +43,7 @@ void PredCalcPrediction(double *act_spec
+                         ChannelInfo *channelInfo,
+                         int chanNum);
+ 
+-void PredInit(faacEncHandle hEncoder);
++void PredInit(faacEncStruct* hEncoder);
+ 
+ void CopyPredInfo(CoderInfo *right, CoderInfo *left);
+ 
+--- faac.orig/libfaac/bitstream.c
++++ faac/libfaac/bitstream.c
+@@ -37,12 +37,12 @@ Copyright (c) 1997.
+ #include "ltp.h"
+ #include "util.h"
+ 
+-static int CountBitstream(faacEncHandle hEncoder,
++static int CountBitstream(faacEncStruct* hEncoder,
+                           CoderInfo *coderInfo,
+                           ChannelInfo *channelInfo,
+                           BitStream *bitStream,
+                           int numChannels);
+-static int WriteADTSHeader(faacEncHandle hEncoder,
++static int WriteADTSHeader(faacEncStruct* hEncoder,
+                            BitStream *bitStream,
+                            int writeFlag);
+ static int WriteCPE(CoderInfo *coderInfoL,
+@@ -152,7 +152,7 @@ static int WriteFAACStr(BitStream *bitSt
+ }
+ 
+ 
+-int WriteBitstream(faacEncHandle hEncoder,
++int WriteBitstream(faacEncStruct* hEncoder,
+                    CoderInfo *coderInfo,
+                    ChannelInfo *channelInfo,
+                    BitStream *bitStream,
+@@ -243,7 +243,7 @@ int WriteBitstream(faacEncHandle hEncode
+     return bits;
+ }
+ 
+-static int CountBitstream(faacEncHandle hEncoder,
++static int CountBitstream(faacEncStruct* hEncoder,
+                           CoderInfo *coderInfo,
+                           ChannelInfo *channelInfo,
+                           BitStream *bitStream,
+@@ -329,7 +329,7 @@ static int CountBitstream(faacEncHandle
+     return bits;
+ }
+ 
+-static int WriteADTSHeader(faacEncHandle hEncoder,
++static int WriteADTSHeader(faacEncStruct* hEncoder,
+                            BitStream *bitStream,
+                            int writeFlag)
+ {
+--- faac.orig/libfaac/bitstream.h
++++ faac/libfaac/bitstream.h
+@@ -149,7 +149,7 @@ typedef struct
+ 
+ 
+ 
+-int WriteBitstream(faacEncHandle hEncoder,
++int WriteBitstream(faacEncStruct* hEncoder,
+                    CoderInfo *coderInfo,
+                    ChannelInfo *channelInfo,
+                    BitStream *bitStream,
+--- faac.orig/libfaac/filtbank.c
++++ faac/libfaac/filtbank.c
+@@ -51,7 +51,7 @@ static void		IMDCT				( FFT_Tables *fft_
+ 
+ 
+ 
+-void FilterBankInit(faacEncHandle hEncoder)
++void FilterBankInit(faacEncStruct* hEncoder)
+ {
+     unsigned int i, channel;
+ 
+@@ -75,7 +75,7 @@ void FilterBankInit(faacEncHandle hEncod
+     CalculateKBDWindow(hEncoder->kbd_window_short, 6, BLOCK_LEN_SHORT*2);
+ }
+ 
+-void FilterBankEnd(faacEncHandle hEncoder)
++void FilterBankEnd(faacEncStruct* hEncoder)
+ {
+     unsigned int channel;
+ 
+@@ -90,7 +90,7 @@ void FilterBankEnd(faacEncHandle hEncode
+     if (hEncoder->kbd_window_short) FreeMemory(hEncoder->kbd_window_short);
+ }
+ 
+-void FilterBank(faacEncHandle hEncoder,
++void FilterBank(faacEncStruct* hEncoder,
+                 CoderInfo *coderInfo,
+                 double *p_in_data,
+                 double *p_out_mdct,
+@@ -202,7 +202,7 @@ void FilterBank(faacEncHandle hEncoder,
+     if (transf_buf) FreeMemory(transf_buf);
+ }
+ 
+-void IFilterBank(faacEncHandle hEncoder,
++void IFilterBank(faacEncStruct* hEncoder,
+                  CoderInfo *coderInfo,
+                  double *p_in_data,
+                  double *p_out_data,
+--- faac.orig/libfaac/filtbank.h
++++ faac/libfaac/filtbank.h
+@@ -41,18 +41,18 @@ extern "C" {
+ #define SINE_WINDOW 0
+ #define KBD_WINDOW  1
+ 
+-void			FilterBankInit		( faacEncHandle hEncoder );
++void			FilterBankInit		( faacEncStruct* hEncoder );
+ 
+-void			FilterBankEnd		( faacEncHandle hEncoder );
++void			FilterBankEnd		( faacEncStruct* hEncoder );
+ 
+-void			FilterBank( faacEncHandle hEncoder,
++void			FilterBank( faacEncStruct* hEncoder,
+ 						CoderInfo *coderInfo,
+ 						double *p_in_data,
+ 						double *p_out_mdct,
+ 						double *p_overlap,
+ 						int overlap_select );
+ 
+-void			IFilterBank( faacEncHandle hEncoder,
++void			IFilterBank( faacEncStruct* hEncoder,
+ 						CoderInfo *coderInfo,
+ 						double *p_in_data,
+ 						double *p_out_mdct,
+--- faac.orig/libfaac/frame.c
++++ faac/libfaac/frame.c
+@@ -87,8 +87,9 @@ int FAACAPI faacEncGetVersion( char **fa
+ }
+ 
+ 
+-int FAACAPI faacEncGetDecoderSpecificInfo(faacEncHandle hEncoder,unsigned char** ppBuffer,unsigned long* pSizeOfDecoderSpecificInfo)
++int FAACAPI faacEncGetDecoderSpecificInfo(faacEncHandle hpEncoder,unsigned char** ppBuffer,unsigned long* pSizeOfDecoderSpecificInfo)
+ {
++    faacEncStruct* hEncoder = (faacEncStruct*)hpEncoder;
+     BitStream* pBitStream = NULL;
+ 
+     if((hEncoder == NULL) || (ppBuffer == NULL) || (pSizeOfDecoderSpecificInfo == NULL)) {
+@@ -118,16 +119,18 @@ int FAACAPI faacEncGetDecoderSpecificInf
+ }
+ 
+ 
+-faacEncConfigurationPtr FAACAPI faacEncGetCurrentConfiguration(faacEncHandle hEncoder)
++faacEncConfigurationPtr FAACAPI faacEncGetCurrentConfiguration(faacEncHandle hpEncoder)
+ {
++    faacEncStruct* hEncoder = (faacEncStruct*)hpEncoder;
+     faacEncConfigurationPtr config = &(hEncoder->config);
+ 
+     return config;
+ }
+ 
+-int FAACAPI faacEncSetConfiguration(faacEncHandle hEncoder,
++int FAACAPI faacEncSetConfiguration(faacEncHandle hpEncoder,
+                                     faacEncConfigurationPtr config)
+ {
++    faacEncStruct* hEncoder = (faacEncStruct*)hpEncoder;
+ 	int i;
+ 
+     hEncoder->config.allowMidside = config->allowMidside;
+@@ -277,7 +280,7 @@ int FAACAPI faacEncSetConfiguration(faac
+ 		config->psymodelidx = (sizeof(psymodellist) / sizeof(psymodellist[0])) - 2;
+ 
+     hEncoder->config.psymodelidx = config->psymodelidx;
+-    hEncoder->psymodel = psymodellist[hEncoder->config.psymodelidx].model;
++    hEncoder->psymodel = (psymodel_t *)psymodellist[hEncoder->config.psymodelidx].ptr;
+     hEncoder->psymodel->PsyInit(&hEncoder->gpsyInfo, hEncoder->psyInfo, hEncoder->numChannels,
+ 			hEncoder->sampleRate, hEncoder->srInfo->cb_width_long,
+ 			hEncoder->srInfo->num_cb_long, hEncoder->srInfo->cb_width_short,
+@@ -297,7 +300,7 @@ faacEncHandle FAACAPI faacEncOpen(unsign
+                                   unsigned long *maxOutputBytes)
+ {
+     unsigned int channel;
+-    faacEncHandle hEncoder;
++    faacEncStruct* hEncoder;
+ 
+     *inputSamples = FRAME_LEN*numChannels;
+     *maxOutputBytes = (6144/8)*numChannels;
+@@ -334,7 +337,7 @@ faacEncHandle FAACAPI faacEncOpen(unsign
+     hEncoder->config.psymodellist = (psymodellist_t *)psymodellist;
+     hEncoder->config.psymodelidx = 0;
+     hEncoder->psymodel =
+-      hEncoder->config.psymodellist[hEncoder->config.psymodelidx].model;
++      (psymodel_t *)hEncoder->config.psymodellist[hEncoder->config.psymodelidx].ptr;
+     hEncoder->config.shortctl = SHORTCTL_NORMAL;
+ 
+ 	/* default channel map is straight-through */
+@@ -401,8 +404,9 @@ faacEncHandle FAACAPI faacEncOpen(unsign
+     return hEncoder;
+ }
+ 
+-int FAACAPI faacEncClose(faacEncHandle hEncoder)
++int FAACAPI faacEncClose(faacEncHandle hpEncoder)
+ {
++    faacEncStruct* hEncoder = (faacEncStruct*)hpEncoder;
+     unsigned int channel;
+ 
+     /* Deinitialize coder functions */
+@@ -441,13 +445,14 @@ int FAACAPI faacEncClose(faacEncHandle h
+     return 0;
+ }
+ 
+-int FAACAPI faacEncEncode(faacEncHandle hEncoder,
++int FAACAPI faacEncEncode(faacEncHandle hpEncoder,
+                           int32_t *inputBuffer,
+                           unsigned int samplesInput,
+                           unsigned char *outputBuffer,
+                           unsigned int bufferSize
+                           )
+ {
++    faacEncStruct* hEncoder = (faacEncStruct*)hpEncoder;
+     unsigned int channel, i;
+     int sb, frameBytes;
+     unsigned int offset;
+--- faac.orig/libfaac/frame.h
++++ faac/libfaac/frame.h
+@@ -36,6 +36,8 @@
+ # include <stdint.h>
+ #endif
+ 
++#include <faac.h>
++
+ #ifndef HAVE_INT32_T
+ typedef signed int int32_t;
+ #endif
+@@ -50,23 +52,8 @@ extern "C" {
+ #include "aacquant.h"
+ #include "fft.h"
+ 
+-#if defined(_WIN32) && !defined(__MINGW32__)
+-  #ifndef FAACAPI
+-    #define FAACAPI __stdcall
+-  #endif
+-#else
+-  #ifndef FAACAPI
+-    #define FAACAPI
+-  #endif
+-#endif
+-
+ #pragma pack(push, 1)
+ 
+-typedef struct {
+-  psymodel_t *model;
+-  char *name;
+-} psymodellist_t;
+-
+ #include <faaccfg.h>
+ 
+ typedef struct {
+@@ -124,32 +111,7 @@ typedef struct {
+ 
+     /* output bits difference in average bitrate mode */
+     int bitDiff;
+-} faacEncStruct, *faacEncHandle;
+-
+-int FAACAPI faacEncGetVersion(char **faac_id_string,
+-			      char **faac_copyright_string);
+-
+-int FAACAPI faacEncGetDecoderSpecificInfo(faacEncHandle hEncoder,
+-                                          unsigned char** ppBuffer,
+-                                          unsigned long* pSizeOfDecoderSpecificInfo);
+-
+-faacEncConfigurationPtr FAACAPI faacEncGetCurrentConfiguration(faacEncHandle hEncoder);
+-int FAACAPI faacEncSetConfiguration (faacEncHandle hEncoder, faacEncConfigurationPtr config);
+-
+-faacEncHandle FAACAPI faacEncOpen(unsigned long sampleRate,
+-                                  unsigned int numChannels,
+-                                  unsigned long *inputSamples,
+-                                  unsigned long *maxOutputBytes);
+-
+-int FAACAPI faacEncEncode(faacEncHandle hEncoder,
+-                          int32_t *inputBuffer,
+-                          unsigned int samplesInput,
+-                          unsigned char *outputBuffer,
+-                          unsigned int bufferSize
+-                          );
+-
+-int FAACAPI faacEncClose(faacEncHandle hEncoder);
+-
++} faacEncStruct;
+ 
+ #pragma pack(pop)
+ 
+--- faac.orig/libfaac/huffman.h
++++ faac/libfaac/huffman.h
+@@ -47,7 +47,7 @@ extern "C" {
+ 
+ #define ABS(A) ((A) < 0 ? (-A) : (A))
+ 
+-#include "frame.h"
++#include <faac.h>
+ 
+ void HuffmanInit(CoderInfo *coderInfo, unsigned int numChannels);
+ void HuffmanEnd(CoderInfo *coderInfo, unsigned int numChannels);
+--- faac.orig/libfaac/ltp.c
++++ faac/libfaac/ltp.c
+@@ -275,7 +275,7 @@ static double ltp_enc_tf(faacEncHandle h
+     return (bit_gain);
+ }
+ 
+-void LtpInit(faacEncHandle hEncoder)
++void LtpInit(faacEncStruct* hEncoder)
+ {
+     int i;
+     unsigned int channel;
+@@ -306,7 +306,7 @@ void LtpInit(faacEncHandle hEncoder)
+ 	}
+ }
+ 
+-void LtpEnd(faacEncHandle hEncoder)
++void LtpEnd(faacEncStruct* hEncoder)
+ {
+     unsigned int channel;
+ 
+--- faac.orig/libfaac/ltp.h
++++ faac/libfaac/ltp.h
+@@ -26,8 +26,8 @@
+ 
+ 
+ 
+-void LtpInit(faacEncHandle hEncoder);
+-void LtpEnd(faacEncHandle hEncoder);
++void LtpInit(faacEncStruct* hEncoder);
++void LtpEnd(faacEncStruct* hEncoder);
+ int LtpEncode(faacEncHandle hEncoder,
+                 CoderInfo *coderInfo,
+                 LtpInfo *ltpInfo,
+--- faac.orig/libfaac/psychkni.c
++++ faac/libfaac/psychkni.c
+@@ -26,7 +26,7 @@
+ #include "coder.h"
+ #include "fft.h"
+ #include "util.h"
+-#include "frame.h"
++#include <faac.h>
+ 
+ typedef float psyfloat;
+ 
+--- faac.orig/libfaac/tns.c
++++ faac/libfaac/tns.c
+@@ -84,7 +84,7 @@ static void TnsInvFilter(int length,doub
+ /*****************************************************/
+ /* InitTns:                                          */
+ /*****************************************************/
+-void TnsInit(faacEncHandle hEncoder)
++void TnsInit(faacEncStruct* hEncoder)
+ {
+     unsigned int channel;
+     int fsIndex = hEncoder->sampleRateIdx;
+--- faac.orig/libfaac/tns.h
++++ faac/libfaac/tns.h
+@@ -35,7 +35,7 @@ extern "C" {
+ #endif /* __cplusplus */
+ 
+ 
+-void TnsInit(faacEncHandle hEncoder);
++void TnsInit(faacEncStruct* hEncoder);
+ void TnsEncode(TnsInfo* tnsInfo, int numberOfBands,int maxSfb,enum WINDOW_TYPE blockType,
+                int* sfbOffsetTable,double* spec);
+ void TnsEncodeFilterOnly(TnsInfo* tnsInfo, int numberOfBands, int maxSfb,
diff --git a/debian/patches/series b/debian/patches/series
index 6eddf4a..ce96dc2 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
 build-fix.patch
 symbol-visibility.patch
 format-security.patch
+exposed-API.patch

-- 
faac packaging



More information about the pkg-multimedia-commits mailing list