procedure TDM.TCPServerExecute(AContext: TIdContext);
Var AData : TIdBytes;
Status : TStatus;
begin
// AContext.Connection.IOHandler.CheckForDataOnSource(10);
if not AContext.Connection.IOHandler.InputBufferIsEmpty then
begin
AContext.Connection.IOHandler.ReadBytes(AData,VoiceBufferByteLength);
// AContext.Connection.IOHandler.ReadStream();
if AData<>Nil then
begin
Status.DataType:='recieved';
Status.ByteOut:=0;
Status.ByteIn:=Length(AData);
QueueStatus.PushItem(Status);
if Length(AData)=VoiceBufferByteLength then
begin
BytesToRaw(AData,FVoiceBuffer.Data^,VoiceBufferByteLength);
QueuePlay.PushItem(FVoiceBuffer);
end;
end;
end;
end;
Вот как то так попробуйте