Einzelnen Beitrag anzeigen

AlexElvers
(Gast)

n/a Beiträge
 
#1

Web-Radio automatische Playlist

  Alt 13. Nov 2009, 19:50
Hallo,

ich habe auf meiner Homepage ein Webradio, jedoch können die DJ meistens nur abends.
Deswegen habe ich mir überlegt, ein Programm laufen zu lassen, wenn niemand streamt.
Dieses soll automatisch eine Liste von Liedern nacheinander abspielen.
Als Streamingserver nutze ich Shoutcast.

Ich stelle mir die Technik vom Streamen so vor:
Das Programm sendet per Socket eine mp3 zum Shoutcast-Server und wartet, bis dies vollständig gespielt ist, dann wird das nächste Lied hochgeladen.

Zu meinen Versuchen:
Zuerst hatte ich versucht, das Projekt mit Lazarus zu realisieren, schaffte es jedoch nicht, die Sockets zu integrieren.
Somit will ich es nun mit Delphi 2005 Personal machen und habe es bisher nur mit Indy 10 TCPClient versucht.
Leider weiß ich nun nicht, ob mein zusammengesuchter Code richtig ist, und wie man ein Server-Passwort da mit einbaut.

Delphi-Quellcode:
var gr:integer;

procedure TForm2.Button1Click(Sender: TObject);
var
  FStream: TFileStream;
  IDS: TidStreamVCL;

begin
  TCP.Host := HostEdit.text;
  if not (DateiOpenDialog.Execute) then
    exit;

  FStream := TFileStream.Create(DateiOpenDialog.FileName, fmOpenRead);
  try
    IDS := TidStreamVCL.Create(FStream);
    try
      with TCP do
      begin
        Connect;
        try
          Socket.Write(IDS, 0, true);
        finally
          Disconnect;
        end;
      end;
    finally
      FreeAndNil(IDS);
    end;
  finally
    FreeAndNil(FStream);
  end;
end;

procedure TForm2.TCPWork(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCount: Integer);
begin
  ProgressBar.Position := Round((AWorkCount / gr) * 100);
  Application.ProcessMessages;
end;

procedure TForm2.TCPWorkBegin(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCountMax: Integer);
begin
  gr := AWorkCountMax;
  ProgressBar.Position := 0;
end;
Falls jemand eine komplett andere Lösung hat, wäre ich auch sehr dankbar.

MfG Alex
  Mit Zitat antworten Zitat