Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi VoIP mit Delphi? (https://www.delphipraxis.net/130912-voip-mit-delphi.html)

user47511 15. Mär 2009 16:56


VoIP mit Delphi?
 
Hallöle...
Wollte mal Fragen ob es möglich ist, mit Delphi ein Voice over IP Programm zu programmieren.
Das stell ich mir vom Aufbau einfach vor... Es soll einen "Raum" geben in dem alle reden können,
ausserdem noch ein Settings Menü in dem man alles mögliche einstellen kann (Lautstärke, Mikrofon-Empfindlichkeit...)

toms 15. Mär 2009 16:58

Re: VoIP mit Delphi?
 
Zitat:

Zitat von .Bartipapi
Wollte mal Fragen ob es möglich ist, mit Delphi ein Voice over IP Programm zu programmieren.

VoIP+Delphi

user47511 15. Mär 2009 17:00

Re: VoIP mit Delphi?
 
Danke
Hab vorhin schon gegooglet aber nicht auf die Ergebnisse geachtet

DeddyH 15. Mär 2009 17:09

Re: VoIP mit Delphi?
 
Zitat:

Zitat von .Bartipapi
Danke
Hab vorhin schon gegooglet aber nicht auf die Ergebnisse geachtet

Sehr sinnig :lol:

Die Muhkuh 15. Mär 2009 17:40

Re: VoIP mit Delphi?
 
Skype wäre eins ;)

blablab 18. Mär 2009 23:54

Re: VoIP mit Delphi?
 
skype ist in delphi geschrieben???

Dunkel 19. Mär 2009 05:04

Re: VoIP mit Delphi?
 
Zitat:

Zitat von blablab
skype ist in delphi geschrieben???

Ja.

generic 19. Mär 2009 08:49

Re: VoIP mit Delphi?
 
Teamspeak ist auch in Delphi und die Linux Variante in Kylix.

MSSSSM 20. Mär 2009 15:56

Re: VoIP mit Delphi?
 
MediaMonkey ist auch in Delphi geschrieben.

Und ich habe mich letztens gewundert, warum in den Teamspeak HTTP-Headern stand:

...
Server: Indy 9.0.27
...

Es sind mehr Programme in Delphi geschrieben als man denkt :D

Marius

danu1104 26. Mär 2009 03:27

Re: VoIP mit Delphi?
 
Ich würde dafür die Bass kompo nehmen und die Indy.

Player1:
Mit der Bass dem Stream erstellen oder aufnehmen und den stream dann mit Indy TCP /UDP versenden.

Player2:
Stream Empfangen und abspielen.


Versucht mal mehr nicht - kommerzielle wege zu gehn, so lernt man einfach besser mit der IDE
umzugehen. Probiern geht ÜBER studiern.

Also einfach IDE öffnen und versuchen.

Von VoIP komponente halte ich persönlich nicht viel da es meisten demos sind oder fertige ActiveX kompos die schweine geld kosten. Und in der sache bin ich sowieso sehr eigen.

Erstell einfach mal zum Test einen Bass Stream also mit ner MP3 und versuch den einfach zu senden und auf dem anderen (PC) zu empfangen.

Die antworten vonwegen es gibt doch skype oder TS2 finde ich net so toll, die leute fragen ja nicht ob es sowas gibt um einen Link zu erhalten, sonder sie möchtn evtl mal selber sowas baun, und suchen einen weg.



Delphi-Quellcode:
// Server (Port 11)
procedure TForm1.EmpfaengerExecute(AContext: TIdContext);
Var Stream:hStream;

    FStream:TFileStream;
    InetVoIStream:TIDStreamVCL;

begin

Delmtext.Delimiter:=',';
if ACOntext.Connection.Connected then
   begin
 
  DelmText.DelimitedText:=ACOntext.Connection.IOHandler.ReadLn;
  if DelmText.Strings[0] = 'GetVoice' then
  begin
   fStream := TFileStream.Create(DelmText.Strings[1],fmopenwrite or fmCreate);
   InetVoIStream:=TIDStreamVCL.Create(fStream);
   try

     ACOntext.Connection.IOHandler.ReadStream(InetVoIStream);
     FreeAndNil(fStream);
     FreeAndNil(InetVoIStream);
   finally
     
     ACOntext.Connection.Disconnect;
     
   try
     stream:=bass.BASS_StreamCreateFile(false,Pchar(DelmText.Strings[1]), 0 ,0, BASS_SAMPLE_SOFTWARE);
    finally
     if not(stream =0) then
     Bass_channelPlay(stream,false);
     end;
   end;
  end;
 end;


end;
// Client (Port 10)
procedure TForm1.Button1Click(Sender: TObject);
Var
    fStream:TFileStream;
    InetVoIStream:TIDStreamVCL;
    Path:String;
begin
if not Sender0.Connected then Sender0.Connect('localhost',11);
  if OpenDialog1.Execute then
    With Sender0.IOHandler do
     begin

      WriteLn('GetVoice,'+'test.mp3');
      Path := OpenDialog1.FileName;
      fStream := TFileStream.Create(Path, fmOpenRead or fmShareDenyNone);

      InetVoIStream:=TIDStreamVCL.Create(fStream);
        WriteBufferOpen;
          Write(InetVoIStream);
        WriteBufferClose;
      FreeAndNil(fStream);
    end;
 end;

procedure TForm1.EmpfaengerStatus(ASender: TObject;
  const AStatus: TIdStatus; const AStatusText: String);
begin
  Memo1.Lines.Add(AStatusText)
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 DelmText:=TStringlist.Create;
end;
So wie da funktioniert es, was ich leider nicht geschaft habe ist den Stream wieder freizugeben um ihn sofort abzuspielen, Das Prinziep ansich funzt. Ich bin auch kein Pro habe es mal ungeniert mal hingeklatscht.

Wie gesagt, die datei (stream) wird versendet und kommt auch an, nur ich krieg den Stream nicht frei ...

blablab 26. Mär 2009 05:05

Re: VoIP mit Delphi?
 
Wow! Das hätte ich nicht gedacht... Wobei das jetzt nicht heißen soll ich dachte Delphi wäre zu schlecht oder so. Mein absolutes Lieblingsprogramm ist nämlich auch in Delphi programmiert: TotalCommander

Also die Frage ob es möglich ist, mit Delphi ein Voice over IP Programm zu programmieren kann man klar mit JA beantworten.

Viel interessanter find ich die Frage: "Was kann man nicht mit Delphi programmieren?"
Die einzige einschränkung die ich bis jetzt kenne ist die Beschränkung auf Windows (bzw Linux)...

Tyrael Y. 26. Mär 2009 06:38

Re: VoIP mit Delphi?
 
Zitat:

Zitat von blablab
Viel interessanter find ich die Frage: "Was kann man nicht mit Delphi programmieren?"

Treiber.

danu1104 26. Mär 2009 06:39

Re: VoIP mit Delphi?
 
Zitat:

Zitat von Tyrael Y.
Zitat:

Zitat von blablab
Viel interessanter find ich die Frage: "Was kann man nicht mit Delphi programmieren?"

Treiber.

Falsch.

Ralf Kaiser 26. Mär 2009 07:14

Re: VoIP mit Delphi?
 
Zitat:

Zitat von danu1104
Zitat:

Zitat von Tyrael Y.
Zitat:

Zitat von blablab
Viel interessanter find ich die Frage: "Was kann man nicht mit Delphi programmieren?"

Treiber.

Falsch.

Seit wann??

Sherlock 26. Mär 2009 07:53

Re: VoIP mit Delphi?
 
Ich denke die Frage sollte man ein kleines bisschen umformulieren:
Was kann man mit Delphi nicht programmieren, ohne sich dabei beide Ohren zu brechen?

Dann lautet die Antwort ganz klar und ohne wenn und aber: Treiber :P

Such doch einfach hier mal Hier im Forum suchenDelphi Treiber Die schiere Fülle an Ergebnisse könnte Mut machen. ;)

Sherlock

Ralf Kaiser 26. Mär 2009 10:47

Re: VoIP mit Delphi?
 
Zitat:

Zitat von Sherlock
Such doch einfach hier mal Hier im Forum suchenDelphi Treiber Die schiere Fülle an Ergebnisse könnte Mut machen. ;)

Zumindest beim groben drübersehen habe ich dort nichts über Treiberprogrammierung gesehen. Ich vermute mal, dass darum bei dir ein Smiley am Ende steht??

Grundsätzlich muss man natürlich definieren, WAS man mit "Treiber" meint! So lassen sich z.B. Datenbanktriber (z.B. DBX oder wie sich das schimpft) sehr wohl mit Delphi programmieren.

Hardwaretreiber allerdings definitiv nicht (die laufen nämlich normalerweise im Kernelmode)!

Tyrael Y. 26. Mär 2009 13:56

Re: VoIP mit Delphi?
 
Zitat:

Zitat von Alfi001
...Hardwaretreiber...

Genau davon hab ich gesprochen. ;)

Ok ein letztes Wort noch dazu. Theoretisch wäre es sogar möglich.

Klick mich für mehr!

..praktisch ist es Unsinn.

Mann kann alles mit Delphi, man sollte auf gar keinen Fall versuchen Hardwaretreiber damit zu schreiben.Punkt....ausser um sich selbst zu beweisen, daß man mit viel Hirnschmalz das eigene System ganz elegant zum Absturz bringen kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz