- cleanup namespace usage
This commit is contained in:
parent
5232d33f6e
commit
51780413af
|
|
@ -16,89 +16,87 @@
|
||||||
|
|
||||||
namespace Audio
|
namespace Audio
|
||||||
{
|
{
|
||||||
class SpeexResampler
|
class SpeexResampler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
SpeexResampler();
|
SpeexResampler();
|
||||||
~SpeexResampler();
|
~SpeexResampler();
|
||||||
|
|
||||||
void start(int channels, int sourceRate, int destRate);
|
void start(int channels, int sourceRate, int destRate);
|
||||||
void stop();
|
void stop();
|
||||||
size_t processBuffer(const void* source, size_t sourceLength, size_t& sourceProcessed,
|
int processBuffer(const void* source, int sourceLength, int& sourceProcessed, void* dest, int destCapacity);
|
||||||
void* dest, size_t destCapacity);
|
|
||||||
int sourceRate();
|
int sourceRate();
|
||||||
int destRate();
|
int destRate();
|
||||||
size_t getDestLength(size_t sourceLen);
|
int getDestLength(int sourceLen);
|
||||||
size_t getSourceLength(size_t destLen);
|
int getSourceLength(int destLen);
|
||||||
|
|
||||||
// Returns instance + speex encoder size in bytes
|
// Returns instance + speex encoder size in bytes
|
||||||
size_t getSize() const;
|
int getSize() const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void* mContext;
|
void* mContext;
|
||||||
int mErrorCode;
|
int mErrorCode;
|
||||||
int mSourceRate,
|
int mSourceRate,
|
||||||
mDestRate,
|
mDestRate,
|
||||||
mChannels;
|
mChannels;
|
||||||
short mLastSample;
|
short mLastSample;
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef SpeexResampler Resampler;
|
typedef SpeexResampler Resampler;
|
||||||
typedef std::shared_ptr<Resampler> PResampler;
|
typedef std::shared_ptr<Resampler> PResampler;
|
||||||
|
|
||||||
class ChannelConverter
|
class ChannelConverter
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
static int stereoToMono(const void* source, int sourceLength, void* dest, int destLength);
|
static int stereoToMono(const void* source, int sourceLength, void* dest, int destLength);
|
||||||
static int monoToStereo(const void* source, int sourceLength, void* dest, int destLength);
|
static int monoToStereo(const void* source, int sourceLength, void* dest, int destLength);
|
||||||
};
|
};
|
||||||
|
|
||||||
// Operates with AUDIO_CHANNELS number of channels
|
// Operates with AUDIO_CHANNELS number of channels
|
||||||
class UniversalResampler
|
class UniversalResampler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
UniversalResampler();
|
UniversalResampler();
|
||||||
~UniversalResampler();
|
~UniversalResampler();
|
||||||
|
|
||||||
size_t resample(int sourceRate, const void* sourceBuffer, size_t sourceLength, size_t& sourceProcessed,
|
int resample(int sourceRate, const void* sourceBuffer, int sourceLength, int& sourceProcessed, int destRate, void* destBuffer, int destCapacity);
|
||||||
int destRate, void* destBuffer, size_t destCapacity);
|
int getDestLength(int sourceRate, int destRate, int sourceLength);
|
||||||
size_t getDestLength(int sourceRate, int destRate, size_t sourceLength);
|
int getSourceLength(int sourceRate, int destRate, int destLength);
|
||||||
size_t getSourceLength(int sourceRate, int destRate, size_t destLength);
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
typedef std::pair<int, int> RatePair;
|
typedef std::pair<int, int> RatePair;
|
||||||
typedef std::map<RatePair, PResampler> ResamplerMap;
|
typedef std::map<RatePair, PResampler> ResamplerMap;
|
||||||
ResamplerMap mResamplerMap;
|
ResamplerMap mResamplerMap;
|
||||||
PResampler findResampler(int sourceRate, int destRate);
|
PResampler findResampler(int sourceRate, int destRate);
|
||||||
|
|
||||||
void preload();
|
void preload();
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef USE_WEBRTC_RESAMPLER
|
#ifdef USE_WEBRTC_RESAMPLER
|
||||||
// n*10 milliseconds buffers required!
|
// n*10 milliseconds buffers required!
|
||||||
class Resampler48kTo16k
|
class Resampler48kTo16k
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Resampler48kTo16k();
|
Resampler48kTo16k();
|
||||||
~Resampler48kTo16k();
|
~Resampler48kTo16k();
|
||||||
int process(const void* source, int sourceLen, void* dest, int destLen);
|
int process(const void* source, int sourceLen, void* dest, int destLen);
|
||||||
protected:
|
protected:
|
||||||
WebRtc_Word32 mTemp[496];
|
WebRtc_Word32 mTemp[496];
|
||||||
WebRtcSpl_State48khzTo16khz mContext;
|
WebRtcSpl_State48khzTo16khz mContext;
|
||||||
};
|
};
|
||||||
|
|
||||||
class Resampler16kto48k
|
class Resampler16kto48k
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Resampler16kto48k();
|
Resampler16kto48k();
|
||||||
~Resampler16kto48k();
|
~Resampler16kto48k();
|
||||||
int process(const void* source, int sourceLen, void* dest, int destLen);
|
int process(const void* source, int sourceLen, void* dest, int destLen);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
WebRtc_Word32 mTemp[336];
|
WebRtc_Word32 mTemp[336];
|
||||||
WebRtcSpl_State16khzTo48khz mContext;
|
WebRtcSpl_State16khzTo48khz mContext;
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
}
|
} // end of namespace
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue