mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Sa 20.04.2024 18:20 Benutzername: Passwort: Auto-Login

Thema: Prinzip youtube, myvideo und co. vom 22.06.2007


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Prinzip youtube, myvideo und co.
Autor Nachricht
Flextone
Threadersteller

Dabei seit: 29.06.2005
Ort: -
Alter: 42
Geschlecht: Männlich
Verfasst Fr 22.06.2007 16:52
Titel

Prinzip youtube, myvideo und co.

Antworten mit Zitat Zum Seitenanfang

Hi

ich bin derzeit auf der Suche nach Informationen wie ich das Prinzip youtube-Video hochladen realisieren kann.
Für ein kleines Projekt würd ich gerne die Funktion erstellen kleine avi's oder mpegs hochzuladen die dann als FlashVideo ausgegeben werden.

Mit PHP und SQL bin ich firm. Das Flashmäßige nicht so.

Wichtig ist mir eigentlich auch erstmla die allgemeine Funktion, wie muss was ablaufen etc.

Kann mir dazu wer was sagen!?

Danke!
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
l'Audiophile

Dabei seit: 16.09.2004
Ort: Berlin
Alter: 43
Geschlecht: Männlich
Verfasst Fr 22.06.2007 17:20
Titel

Antworten mit Zitat Zum Seitenanfang

Dass hat mit Flash wenig zu tun. *zwinker*

http://www.blue-pacific.com/products/turbinevideosdk/default.htm
http://www.on2.com/products/flix/
http://ffmpeg.mplayerhq.hu/


Zuletzt bearbeitet von l'Audiophile am Fr 22.06.2007 17:24, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Flextone
Threadersteller

Dabei seit: 29.06.2005
Ort: -
Alter: 42
Geschlecht: Männlich
Verfasst Fr 22.06.2007 17:36
Titel

Antworten mit Zitat Zum Seitenanfang

Danke erstmal für die Links.

Aber kannst du das Prinzip irgendwie näher erläutern?

Ich meine ist das ne Extension oder kommt das auf meinem Server....

Ich fang bei 0 an. Würd gerne die Funktionsweise verstehen.

Danke!
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
l'Audiophile

Dabei seit: 16.09.2004
Ort: Berlin
Alter: 43
Geschlecht: Männlich
Verfasst Fr 22.06.2007 17:45
Titel

Antworten mit Zitat Zum Seitenanfang

Das sind ganz einfach serverseitige Encoder. Nen SDK, welches auf deinem Server Videofiles in flv-Dateien konvertiert.

Zuletzt bearbeitet von l'Audiophile am Fr 22.06.2007 17:48, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Fr 22.06.2007 18:03
Titel

Flash-Video (FLV) serverseitig mit PHP

Antworten mit Zitat Zum Seitenanfang

Zitat:
Mit PHP und SQL bin ich firm.

Dann weißt du, wie du einen Dateiupload über ein HTML-Formular realisierst?

Der Dateiupload wäre allerdings auch schon das erste Problem.
Standardmäßig ist PHP so konfiguriert, daß man keine Files größer als 2 MB hochladen kann.
Du brauchst dann also erstmal einen Hoster, der den Upload größerer Files zuläßt.

Wenn du dann dein File auf dem Server hast, dann brauchst du einen Encoder, um das Video umzuwandeln.
Das heißt, du brauchst einen Hoster, der einen Encoder auf dem Server installiert hat.
Das Umwandeln verbraucht dann eine Menge an Speicherkapazität und Rechenleistung.

PHP ist bei den meisten Hostern so konfiguriert, daß die Scripte nicht allzuviel Speicher verbrauchen dürfen.
Hier hast du also schon wieder ein Problem.
Wenn ich mit den Grafikfunktionen von PHP gearbeitet habe, um beispielsweise serverseitig Bilder zu resizen, dann bin ich desöfteren schon an die Speichergrenze gestoßen.
Bei meinen Bildern handelte es sich um nicht besonders große JPEGs. Aber JPEG ist ja ein komprimiertes Format und zur Bearbeitung müssen die Bilder dekomprimiert werden.
Kleine JPEGs können dann also recht schnell den Speicher füllen...

Für dein Vorhaben wirst du sicherlich einen eigenen Server brauchen.
Wenn du nur Webspace auf einem normalen Shared-Server hast, dann werden dir eine Menge Beschränkungen dein Vorhaben unmöglich machen:
- Größe der hochzuladenen Dateien (max_upload_size)
- maximale Laufzeit des Scriptes (max_execution_time)
- maximaler Speicherverbrauch des Scriptes (memory_limit)
- die maximale Zeit, die das Script brauchen darf, um Eingabedaten zu empfangen (max_input_time)
- maximale Größe von POST-Daten (post_max_size)
Das wären fünf Einstellungen in der php.ini, die für dein Vorhaben wichtig wären.
Ich denke, das sind alle, aber vielleicht habe ich auch noch was vergessen.

Auch wenn du einen Hoster findest, der dort höhere Werte als normal erlaubt, wird das trotzdem nicht ausreichen, wenn du einen Shared-Server hast.
Du brauchst in jedem Fall einen eigenen Server, wo du dein PHP selbst konfigurieren kannst und wo du auch eigene Software installieren kannst.

Aber nun weiter...

Du brauchst einen FLV-Encoder, der auf deinem Server läuft.
Dazu müßte man natürlich wissen, um was für einen Server es sich handelt.
Dementsprechend müßtest du entweder einen Encoder für Windows auf der Kiste installieren oder halt ein Linux-Programm.

Es gibt da einiges an kommerzieller Software.
Es gibt aber auch freie Software, womit du arbeiten kannst.
Vielleicht kennst du für Windows den kostenlosen "Riva FLV Encoder"?
Der basiert auf der OpenSource-Software FFmpeg.
Mit FFmpeg wäre es möglich, so gut wie jedes Format in so gut wie jedes andere Format zu konvertieren.
Damit könntest du dann auch FlashVideo-Files erstellen.

Du kannst FFmpeg dann auch über PHP ansprechen.
Dazu fällt mir dann noch ein Punkt ein, der bei vielen Hostern problematisch werden würde.
Viele Hoster haben einige PHP-Funktionen wie system() oder exec() deaktiviert, so daß du gar keine externen Programme ausführen kannst.
Auch könnte es Beschränkungen durch den Safe-Mode geben.

Ich habe so etwas mit serverseitiger Videokonvertierung noch nie gemacht, aber ich denke, ich würde es mit FFmpeg versuchen.
Am besten installierst du erstmal bei dir lokal einen Webserver und PHP, sofern du das nicht schon längst getan hast.
Dann besorgst du dir FFmpeg. Das gibt es auch für Windows oder Mac OS X (ich weiß ja nicht, womit du arbeitest).
Danach bearbeitest du deine php.ini.
Die fünf Einstellungen, die ich dir genannt habe, solltest du weit hoch setzen.
Welche Werte du den einzelnen Einstellungspunkten zuweisen mußt (z.B. Größe in Bytes oder Kilobyte) kannst du dem PHP-Handbuch entnehmen.
Wie du FFmpeg einsetzt und welche Kommandozeilen-Parameter du benötigst, entnimmst du der Dokumentation.
(Die Konvertierung dauert dann natürlich ein wenig... Das kommt auch die Rechenpower und die Länge des Videos an...)

Und wenn das dann alles wie gewünscht funktioniert, dann kannst du dir einen eigenen Server mieten.
Da gibt es mehrere Möglichkeiten. Du mußt nicht alles selber machen.
Wenn du dich nicht mit Linux auskennst, dann solltest du dir einen Server mieten, der von jemandem betreut wird und der für dich die gewünschte Software installiert und den Server wartet.


Zuletzt bearbeitet von rob am Fr 22.06.2007 21:10, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Fr 22.06.2007 21:06
Titel

Streaming und progressiver Download, HTTP-Pseudostreaming

Antworten mit Zitat Zum Seitenanfang

Und noch etwas zu deinem Video. (Neuer Post, da andere Thematik)

Also du weiß, was Streaming und progressiver Download ist?

Es gibt einige Videoformate (bzw. Containerformate), die streamingfähig sind.
Wenn du auf deiner Website jetzt AVI-Files bereitstellst, dann müßte der User erst warten bis die Datei komplett runtergeladen ist, um diese abspielen zu können.
Das liegt u.a. daran, daß Bildindex und Zeitinformation am Ende des AVI-Containers untergebracht sind.
Bei FLV ist das aber anders.

Sicherlich möchtest du aber, daß deine Video direkt abgespielt werden können, bevor sie komplett runtergeladen sind.
Da gibt es zwei Möglichkeiten.

Das eine wäre richtiges Video-Streaming. Die Wiedergabe der Daten findet gleichzeitig mit dem Empfang statt.
Der User kann mit dem Schieberegler des Mediaplayers jeden Teil des Videos ansteuern und der wird dann sofort gespielt.

Zum Streaming ist das HTTP-Protokoll aber eigentlich unbrauchbar, zumindest für's Live-Streaming.
Du bräuchtest einen richtigen Streaming Server. Die meisten sind kommerziell und ziemlich teuer (Real Networks, Quicktime/Apple stellen beispielsweise teure Software zur her).
In deinem Fall wäre eher ein Flash Media-Server von Bedeutung.
Aber schätzungsweise willst und brauchst du sowas gar nicht...

Jetzt kommt der "progressive Download".
Das bedeutet, daß ein kleiner Teil vom Video runtergeladen und dann abgespielt wird. Während gespielt wird, wird im Hintergrund schon weiter geladen.
Es muß also auch nicht erst gewartet werden bis das komplette Video vollständig da ist.
Der User kann mit dem Schieberegler in seinem Player allerdings nicht zu jedem beliebigen Punkt navigieren, sondern nur in dem Teil, der schon runtergeladen wurde.
Bei Google Video geht genau dies aber trotzdem (bei YouTube nicht).
Das liegt an einem Trick, so daß Pseudo-Streaming per HTTP möglich wird. Per FlashVideo-Metadaten werden Startpositionen und Timecodes mitgereicht.
Und das geht auch mit PHP.
Siehe Flashcomguru: 'Streaming' flv video via PHP, take two


Und falls du dir wirklich einen eigenen Server holen solltest, dann könntest du das auch ohne PHP machen und vom Server erledigen lassen.
Schau dir dann mal die folgenden Module an.
Apache-Modul: mod_flvx
lighttpd-Modul: mod_flv_streaming

Ich habe damit selbst noch nicht gearbeitet, aber ich wollte das eigentlich schon immer mal ausprobieren.
Wenn ich denn mal die Zeit dazu finde...


(Mann! Wqas hab ich jetzt hier alles geschrieben... Vielleicht sollte ich da mal ein FLV-FAQ draus machen...)


Zuletzt bearbeitet von rob am Fr 22.06.2007 21:10, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Flextone
Threadersteller

Dabei seit: 29.06.2005
Ort: -
Alter: 42
Geschlecht: Männlich
Verfasst Mo 25.06.2007 11:51
Titel

Antworten mit Zitat Zum Seitenanfang

Hi

ich bin beeindruckt und danke für deine Hilfe.

Ich selber habe einen vServer mit kompletten Zugriff bei HE mit ca. 1 GB Ram.

Diverse Sachen hier verstehe ich wohl und sind mir auch hinsichtlich der Problematik bekannt.
Wenn es nun aber an das installieren einer Software auf dem Server geht bzw. das Ändern der php.ini bin ich sehr schnell an meinen Grenzen.
Ich werde mich am besten mit der vorgeschlagenen Software auseinander setzten und wenn es ok ist dich einfach ggfs. einmal kontaktieren.

Aber ich speicher mir definitiv deinen Beitrag ab und nutze den als roten Faden.

Sehr aufschlussreich.

Nochmal danke.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Mo 25.06.2007 12:55
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
Ich selber habe einen vServer mit kompletten Zugriff bei HE mit ca. 1 GB Ram.

Das ist ja schon mal gut. Damit läßt sich arbeiten.
Zitat:
Wenn es nun aber an das installieren einer Software auf dem Server geht bzw. das Ändern der php.ini bin ich sehr schnell an meinen Grenzen.

Wieso hast du einen eigenen Server, kennst dich damit aber gar nicht aus?
Das sehe ich als ziemlich gefährlich an. Es gibt eine ganze Menge an Dingen, worauf man achten müßte, wenn es um die Sicherheit geht.
Wenn man nicht mal weiß, wie man Änderungen an der php.ini vornimmt, wie soll man dann wissen, wie man Software installiert und einen Server als daemon laufen läßt?
Vielleicht wäre es besser, wenn du dir einen Server gemietet hättest, der von jemandem verwaltet wird, der sich damit auskennt..?
Wenn es sich um einen Linux/Unix-Server handelt, was ich mal vermute, dann könnte ich dir zwar sagen, wie man Änderungen an Konfigurationsdateien vornimmt oder bestimmte Software installiert, aber es gibt soviele Dinge, die man in Bezug auf die Sicherheit beachten müßte, daß man das nicht alles so schnell über ein Board erklären kann.
Dafür brauchst du mehr als nur Grundlagenwissen.
Zitat:
Ich werde mich am besten mit der vorgeschlagenen Software auseinander setzten und wenn es ok ist dich einfach ggfs. einmal kontaktieren.

Dann schreib mir aber keine PN, sondern stell deine Frage hier im Board.
Wenn jemand ein ähnliches Problem hat, kann er dann mit der Suchfunktion die Lösung finden...
  View user's profile Private Nachricht senden
 
Ähnliche Themen YouTube (oder Myvideo) Video automatisch starten
Vimeo / Youtube in PDF
YouTube einbindung
Youtube DataAPI
youtube API verweigert zugriff
Youtube Video Background
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.