Q&A

  • DeAudio에서 UDP음성 전송.
안녕하세요
acmcomponenet 1.6으로 시도하다가 다알로그를 컨트롤 하지 못해서.
deAudio라는 사용라이브럴리를 가지고 그거와 같이 시도를 해보는데요.
둘다 비슷합니다. 거의 같은 구조를 가지고 있구요.

UDP 서버 클라이언트를 이용해서
Audio IN에 있는 버퍼내용을 소켓으로 전송해서 Out버퍼에 넣고 출력하는 예인데요.
G723.1 GSM ADPCM으로 해봐도 데이터가 전송이 되는데 음이 깨지네요~~
코덱에 대한 지식이 별로 없어서 잘 모르겠지만 혹시
블럭별로 전송을 해야 재생시 문제가 없는건지요? 지정된 음에 블럭이라던가 말이죵.


//전송부.
procedure TSendFrm.deAudioConvertor1AudioConverted(Sender: TObject;
    AudioData: Pointer; AudioDataSize: Integer; var Abort: Boolean);
begin
    // send AudioData via UDP to UDP Server...
    Sock.SendBuffer(AudioData^, AudioDataSize);
    Bytes := Bytes + AudioDataSize;
    BytesLbl.Caption := Format('%u', [Bytes]);
    UpDate;
end;

//수신부.
procedure TRecvFrm.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
    ABinding: TIdSocketHandle);
var
  AudioDataSize: Integer;
  AudioData: Pointer;
begin
    deAudioConvertor1.ConvertAudio(Addr(AData), AData.Size);
    Bytes := Bytes + aData.Size;
    BytesLbl.Caption := Format('%u', [Bytes]);
    UpDate;
end;
1  COMMENTS
  • Profile
    박상윤 2005.02.18 00:55
    UDP 라는 프로토콜은 기본적으로...
    데이터의 완벽한 전송을 .. 보장 하지않습니다.
    다시말하자면... 손실을 감수하면서 .. 속도를 높이 겠다는
    이야기 입니다.

    그러니...음이 깨진다구 해도..
    어절수 없는 일이 겠지여.

    TCP , RTP(2000이상에서는 지원하는 걸루 아라고 있습니다)  를 쓰셔야 할것 같군여

    컴포를.. 써본적이 없어서.. 다른 부분은 글쎄여..^^;

    그럼 즐프 하세여
    • 김영창
    • 2005.02.04 02:57
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김영석
    • 2005.02.04 02:21
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2005.02.04 03:20
      안녕하세요. 최용일입니다. 객체를 생성하면 모든 값들은 0으로 초기화 됩니다. 때문에 특별히 초기화를...
    • 아폴론
      2005.02.04 18:19
      procedure TForm1.BitBtn1Click(Sender: TObject); var u : integer;      ...
    • 이중철
      2005.02.04 19:11
      최용일씨 말씀이 맞습니다. 객체는 생성시 멤버변수들이 있는 메모리 영역을 0으로 초기화 하고 생성됩니...
    • 김영석
      2005.02.04 18:09
      그래서 그랬던거군요.. 델파이 초보라 아직 배울게 많네요..^^ 감사합니다.. 즐코하세요~
    • 김시아
    • 2005.02.04 01:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 오익환
      2005.02.04 19:19
      [Fatal Error] Project1.dpr(6): File not found: 'ExceptionLog.dcu' ExceptionLog.dcu는 ObjectPrinter...
    • 주재환
    • 2005.02.04 00:36
    • 0 COMMENTS
    • /
    • 0 LIKES
    • kivalan
    • 2005.02.03 20:32
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박상윤
      2005.02.18 00:55
      UDP 라는 프로토콜은 기본적으로... 데이터의 완벽한 전송을 .. 보장 하지않습니다. 다시말하자면... 손...
    • 락락여인
      2005.02.04 01:57
      출력이 끝난후에 AdvStringGrid1.autosize := true; 를 사용사시면 자동으로  맞춰 줍니다....
    • 오익환
      2005.02.03 18:49
      접근을 잘 못하고 계신것 같습니다. length(Cells[x,y])를 하면 Cells[x,y]의 문자길이가 Return됩니다....
    • BINU
    • 2005.02.03 10:26
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 덜렁이
    • 2005.02.03 08:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박지용
      2005.02.23 20:38
      음.  Packet처리는 변화가 없을꺼고. 다만 Com Port 에서 Socket 핸들링하는 부분만 처...
    • 쁜지아빠
      2005.02.04 19:12
      안녕하세요 쁜지 아빠입니다. 제 짧은 이해력으로 보건데 2개의 프로그램이 떠 있는 상태에서 상호간에(...
    • 이중철
      2005.02.03 21:53
      목적하시는 바가 소스의 큰 수정없이 단지 프로그램2가 실행된 후 끝나는 시점을 알고자 하는것으로 보입니...
    • 구창민
      2005.02.03 21:29
      안녕하세요.. 말씀하시는 리턴코드가 어떤 것을 말씀하시는지 잘 모르겟지만, 어플리케이션간 통신이...
    • 우소
    • 2005.02.03 04:26
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2005.02.03 21:32
      안녕하세요.. 일전에 제다이(http://www.delphi-jedi.org/) 에서 관련된 내용을 본적이 있습니다. MAPI ...
    • 박노팔
      2007.04.11 09:47
      { Outlook E-Mail Sender! -- by Jimmy Tharpe         &nb...
    • whatlee
    • 2005.02.03 03:16
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 모영철
      2005.02.03 20:19
      varOlestr와 VarVarient의차이.....를 말하기전에.. 먼저 이 답변은 저의 짧은 지식으로 쓰는것이니 절...
    • 전영구
    • 2005.02.03 01:56
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2005.02.03 20:00
      안녕하세요. 최용일입니다. 아마도 GSM 6.10코덱인거 같은데... CbSize가 2인것에서 알 수 있듯이 뒤...
    • kivalan
      2005.02.03 20:11
      그럼 말씀하신대로 자료 타입 만 맞추어 주면 WaveInOpen할때 에러가 없어진다는 말씀이시겠네요. 뒤에 2...
    • 최용일
      2005.02.03 21:00
      안녕하세요. 최용일입니다. 뒤에 2바이트정보를 더 써주시면 오픈할때 에러는 안날거구요... 그러니...
    • 박연준
    • 2005.02.02 22:48
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 이진수
      2005.02.02 22:58
      다음까페 게시판에 있는 html 컨트롤은 IE 설치시 같이 설치되는(물론 거의 대부분의  Windows ...
    • 박연준
      2005.02.02 23:06
      DHTML Edit Control 컨트롤을 사용하려면 어떻게 해야 하는거죠..? 잘되있고 정말 좋던데...
    • 이진수
      2005.02.03 03:14
      Delphi를 사용하신다면 Component 메뉴의 ActiveX Import 를 실행하면, 설치된 ActiveX의 리스트를 확인할 ...
    • ziniii
    • 2005.02.02 22:17
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이중철
      2005.02.02 22:27
      http://www.torry.net/quicksearchd.php?String=EBCDIC&Title=Yes 여기에 있는듯 하네요 소스까지 오픈...
    • ziniii
      2005.02.03 00:42
      음...덕분에 많은 도움이... 감사합니다...
    • 정근호
    • 2005.02.02 22:11
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 채팅
      2005.02.02 23:01
      클라이언트쪽에서 설정하는 것을 말하는 것이라면 IE나 FireFox에서 그런 옵션이 있는 지 모르겠네요.. ...
    • 송인화
    • 2005.02.02 21:07
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이중철
      2005.02.02 22:17
        Form1.Caption := 'Connect  ' + AThread.Connection.Socket.Binding.PeerIP + '&nb...
    • 손희관
    • 2005.02.02 20:48
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박상윤
      2005.02.18 00:47
      버퍼링은. 어쩔수 없는 부분입니다. 아무리 버퍼링을 한다구하더라도 실시간 형식을 원하시면 버퍼링 속...