#ifndef _VOCODERFRAME_H #define _VOCODERFRAME_H #include "BitVector.h" //#include "GSMCommon.h" class VocoderFrame : public BitVector { public: VocoderFrame() :BitVector(264) { fillField(0,0x0d,4); } /** Construct by unpacking a char[33]. */ VocoderFrame(const unsigned char *src) :BitVector(264) { unpack(src); } BitVector payload() { return tail(4); } const BitVector payload() const { return tail(4); } }; class VocoderAMRFrame : public BitVector { public: VocoderAMRFrame() :BitVector(244+8) { fillField(0,0x3c,8); /* AMR-NB 12.2 */ } /** Construct by unpacking a char[32]. */ VocoderAMRFrame(const unsigned char *src) :BitVector(244+8) { unpack(src); } BitVector payload() { return tail(8); } const BitVector payload() const { return tail(8); } }; #endif