2 Stimmen

Ferngesteuertes Video und Miniaturansichten - alles erforscht

Ich grüße alle,

Ich habe daran gearbeitet, Thumbnail-Bilder für eine meiner Websites zu erstellen, und habe einige recht gute Fortschritte gemacht. Ich konnte, wie erhofft, Miniaturansichten von Bildern erstellen, die lokal und auf einem Remote-Server gehostet werden.

Das Problem, das ich habe, ist, dass ich nicht in der Lage bin, dasselbe für Videos zu tun. Ich habe jede der folgenden Komponenten zusammen mit ihren Abhängigkeiten erfolgreich installiert und kann bestätigen, dass sie alle lokal funktionieren:

  1. ffmpeg (und stellvertretend ffmpeg-PHP und ffmpegthumnailer)
  2. Imagick (funktioniert derzeit für alle einfachen "Bild"-Miniaturansichten, lokal und remote)
  3. mplayer

Bisher habe ich noch keine Methode gefunden, mit der ich eine Miniaturansicht von meinen eigenen Videodateien auf einem entfernten Server erfassen könnte. Der Grund, warum ich versuche, eine Verbindung zu einer entfernten Videodatei herzustellen, ist, dass diese Videos jeweils zwischen 5 MB und 300 MB groß sein können und ich nicht den gesamten Film lokal kopieren möchte, nur um eine Miniaturansicht zu erstellen.

Ich war auf eines dieser Programme gestoßen, das "vielleicht" die Aufnahme eines Bildes aus einem rtmp-Stream ermöglicht, auf den ich praktischerweise Zugriff habe ... aber es hat nichts gebracht.

Jede Idee wäre sehr willkommen,

Ich danke Ihnen,

Silberner Tiger


Update von Silver Tiger:

Es sieht so aus, als hätte ich eine alternative Methode über eine dritte Partei. Ich habe Zendcoder verwendet, um die Videodateien im Handumdrehen in ein Standardformat zu konvertieren, das auf meinem Webprojekt zuverlässig abgespielt werden kann, und als Teil ihres Dienstes erstellen sie automatisch ein dynamisches Thumbnail und laden es zusammen mit der konvertierten Videodatei auf mein Amazon S3 hoch.

Krise abgewendet, aber auf Umwegen, und leider keine Lösung, die ich jemand anderem als "Lösung" anbieten könnte.

0voto

tlenss Punkte 2601

Wenn Sie ffmpeg installiert haben, sollte es recht einfach sein. Versuchen Sie etwas wie dies

$movie = 'somefile.avi';  // video file
$time = '00:03:34';       // time where to take the snapshot
$cmd = "ffmpeg -i '{$movie}' -an -ss {$time} -an -r 1 -vframes 1 -y thumb.jpg";

$escCmd = escapeshellcmd($cmd);
system($escCmd);

0voto

Oliver O'Neill Punkte 1229

Vielleicht könnten Sie ein Skript auf dem Remote-Server aufrufen? Auf diese Weise wird die Miniaturansicht auf dem Remote-Server generiert und dann an den Front-End-Server zurückgegeben.

Am einfachsten ist es, Apache (oder was auch immer Sie bevorzugen) zu installieren und die Skripte zur Erzeugung von Miniaturbildern dort zu hosten. Alles, was Sie dann tun müssen, ist aufzurufen:

$imageData = file_get_contents('http://remotehost/generateThunmb.php?videoid=bleh');

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X