Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Web-Radio automatische Playlist (https://www.delphipraxis.net/143343-web-radio-automatische-playlist.html)

AlexElvers 13. Nov 2009 19:50


Web-Radio automatische Playlist
 
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

AlexII 13. Nov 2009 21:31

Re: Web-Radio automatische Playlist
 
Und wieso nimmst du kein Winamp? :gruebel:

AlexElvers 13. Nov 2009 22:21

Re: Web-Radio automatische Playlist
 
Winamp nutze ich nicht, weil die DJs über ein Webpanel die Playlist aktivieren sollen.
Oder ist das möglich?

Das Programm soll übrigens auf einem Home-Server laufen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:54 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