AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Server für video stream clients ( pinnacle showcenter etc..)

Server für video stream clients ( pinnacle showcenter etc..)

Ein Thema von Arnulf · begonnen am 5. Feb 2007 · letzter Beitrag vom 5. Feb 2007
 
Arnulf

Registriert seit: 28. Okt 2004
Ort: Wien
271 Beiträge
 
#2

Re: Server für video stream clients ( pinnacle showcenter et

  Alt 5. Feb 2007, 14:25
ums präziser anzugeben.
ich kenn mich mit dem http protokoll nicht gut aus
wie soll ich einen stream zerlegen?

ich schick jetzt einmal 1 mb weg über den stream.
da http aber ein zustandsloses protokoll ist, würde ich ja bei jedem mb den stream unterbrechen.
wenn jetzt der client keine erneute anfrage schickt bekommt er ja den rest nicht.

mir ist also nicht ganz klar wie ich solche multipart messages verschicken soll.
wenn ich große files gleich in den stream schick und der client noch garnicht auf file akzeptieren geklickt hat würde mir der server abstürzen.
wenn ich langsam schicke weiß ich nicht wie langsam...

multipart messages funktionieren über ein boundary also der client könnte das schon wieder zusammensetzen - nur wie mach ich das verschicken richtig.
also wann muss ich die verbindung trennen und wann muß ich den stream fortsetzen??

hier noch meine kläglichen versuche mit dem mime types und den multipart messages klar zu kommen:

Delphi-Quellcode:
           socket.SendText('HTTP/1.1 200 OK' + #13#10);
           socket.SendText('Content-Type: multipart/digest; boundary="------------477C7EB42750E7F146A4CFA4"' + #13#10);
           socket.SendText(#13#10);

           socket.SendText('------------477C7EB42750E7F146A4CFA4"' + #13#10);
           clsocket.SendText('Content-Type: video/octet-stream' + #13#10);
           socket.SendText(#13#10);

            // Stream Schicken....
            AStream := TfileStream.Create(income, fmOpenRead or fmShareDenyWrite );
            try

               buffer := AllocMem(AStream.Size);
               AStream.Read(buffer^,Package);
               with Socket do
                    SendBuf(buffer^, Package);
               finally
                      FreeMem(buffer);
                      FreeAndNil(AStream);
               end;
           socket.SendText('------------477C7EB42750E7F146A4CFA4"' + #13#10);
           socket.SendText(#13#10);
      end
thx
Arnulf
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz