| Description | Hierarchy | Fields | Methods | Properties | 
type unaGSMcoder = class(unaObject)
Base class for all objects defined in this unit.
|  | constructor create(isWav49: bool = false); | 
|  | destructor Destroy(); override; | 
|  | function write(data: pointer; len: int): int; | 
|  | procedure initCoder(); virtual; abstract; | 
|  | procedure onNewData(sender: unaObject; data: pointer; len: int); virtual; | 
|  | procedure processFrames(data: pointer; len: int); virtual; abstract; | 
|  | property frameSizeIn: int read f_frameSizeIn; | 
|  | property frameSizeOut: int read f_frameSizeOut; | 
|  | property gsmOpt[opt:int32]: int32 read getOpt write setOpt; | 
|  | constructor create(isWav49: bool = false); | 
|  | destructor Destroy(); override; | 
|  | function write(data: pointer; len: int): int; | 
| Pass new portion of data to encoder/decoder. Output frames will be notified via onNewData() mehtod Returnsnumber of bytes processed in this write | |
|  | procedure initCoder(); virtual; abstract; | 
| There is stuff we must know for sure, like frame sizes. | |
|  | procedure onNewData(sender: unaObject; data: pointer; len: int); virtual; | 
| Override to be notified of new data from coder. | |
|  | procedure processFrames(data: pointer; len: int); virtual; abstract; | 
| Each processing is specific and thus must be overrided. Parameters
 | |
|  | property frameSizeIn: int read f_frameSizeIn; | 
| Size of input frame in bytes. For encoder it should be 160*2 = 320 bytes For WAV49 encoder it should be 160*2*2 = 640 bytes // For decoder it should be 33 For WAV49 encoder it should be 65 | |
|  | property frameSizeOut: int read f_frameSizeOut; | 
| Size of output frame in bytes. For encoder it should be 33 For WAV49 encoder it should be 65 // For decoder it should be 160*2 = 320 bytes For WAV49 encoder it should be 160*2*2 = 640 bytes | |
|  | property gsmOpt[opt:int32]: int32 read getOpt write setOpt; | 
| GSM options, see GSM_OPT_XXX for index values | |
(c) 2012 Lake of Soft