从他们的例子http://www.delphiarea.com/products/delphi-packages/waveaudio/ (TLiveAudioRecorder)
//sender
procedure TMainForm.LiveAudioRecorderData(Sender: TObject;
const Buffer: Pointer; BufferSize: Cardinal; var FreeIt: Boolean);
var
I: Integer;
begin
FreeIt := True;
for I := tcpServer.Socket.ActiveConnections - 1 downto 0 do
with tcpServer.Socket.Connections[I] do
if Data = Self then // the client is ready
SendBuf(Buffer^, BufferSize);
end;如何使用TCP indy10发送音频流?有点像Connection.IOHandler.Write(Buffer, 0, true);
发布于 2013-12-29 16:38:09
你可以:
RawToBytes()将缓冲区数据复制到TIdBytes,然后将其传递给TIdIOHandler.Write(TIdBytes):
( Connection.IOHandler.Write(RawToBytes(Buffer^,BufferSize);TIdMemoryBufferStream将缓冲区包装在TStream中,并将其传递给TIdIOHandler.Write(TStream):
:= TIdMemoryBufferStream.Create(缓冲液,BufferSize);Connection.IOHandler.Write( Strm );Strm.Free;https://stackoverflow.com/questions/20823048
复制相似问题