Ich möchte ein Miniaturbild für Videos von Vimeo erhalten.
Wenn ich Bilder von Youtube bekomme, mag ich das einfach so:
http://img.youtube.com/vi/HwP5NG-3e8I/2.jpg
Irgendeine Idee, wie man es für Vimeo macht?
html
thumbnails
vimeo
Johan
quelle
quelle
Antworten:
Aus den Vimeo Simple API-Dokumenten :
Eine Videoanfrage stellen
Erhalten Sie also diese URL http://vimeo.com/api/v2/video/6271487.xml
Analysieren Sie dies für jedes Video, um die Miniaturansicht zu erhalten
Hier ist der ungefähre Code in PHP
quelle
xml
. Wie kann ichthumbnail_small
mitphp
?thumbnail_large
von i.vimeocdn.com/video/23566238_640.webp in i.vimeocdn.com/video/23566238_640.png oder i.vimeocdn.com/video/23566238_320.jpg ändernIn Javascript (verwendet jQuery):
So zeigen Sie es an:
quelle
$(id_img).before
und$(id_img).attr
fürcreateElement
und ein grundlegenderes ausgetauschtgetElementById(id_img).src
, hätte es aber ohne Ihr Beispiel überhaupt nicht bekommen.Sie sollten die Antwort der Vimeo-API analysieren. Bei URL-Aufrufen (wie Dailymotion oder Youtube) gibt es keine Möglichkeit dazu.
Hier ist meine PHP-Lösung:
quelle
Verwenden der jQuery-Jsonp-Anforderung:
quelle
<div id='12345678' class='vimeo_thumb'></div>
- und das würde mit dem Miniaturbild img gefüllt werden.$.getJSON('http://vimeo.com/api/v2/video/' + video_id + '.json?callback=?', function (data) {...
Mit Ruby können Sie Folgendes tun, wenn Sie beispielsweise Folgendes haben:
quelle
require 'open-uri'
das Öffnen zulassen, um URIs und Dateien zu analysieren.Hier ist ein Beispiel, wie Sie dasselbe in ASP.NET mit C # tun können. Fühlen Sie sich frei, ein anderes Fehlerfangbild zu verwenden :)
HINWEIS: Ihre API-Anfrage sollte auf Anfrage folgendermaßen aussehen: http://vimeo.com/api/v2/video/32660708.xml
quelle
public static string GetVimeoPreviewImage(string id) { try { XmlDocument doc = new XmlDocument(); doc.Load("http://vimeo.com/api/v2/video/" + id + ".xml"); return doc.DocumentElement.FirstChild.SelectSingleNode("thumbnail_medium").ChildNodes[0].Value; } catch { return string.Empty; } }
Der einfachste JavaScript-Weg, den ich gefunden habe, um das Miniaturbild zu erhalten, ohne nach der Video-ID zu suchen, ist:
Hinweis: Wenn jemand die Miniaturansicht des Videos in Bezug auf die Video-ID erhalten möchte, kann er diese durch
$id
die Video-ID ersetzen und eine XML-Datei mit den Videodetails abrufen:Beispiel:
Quelle
quelle
$id
und Sie erhalten eine XML mit den Videodetails (einschließlich Miniaturansichten).http://vimeo.com/api/v2/video/$id.xml
. zum Beispiel :http://vimeo.com/api/v2/video/198340486.xml
. Quelle ist hier: coderwall.com/p/fdrdmg/get-a-thumbnail-from-a-vimeo-videoWenn Sie Thumbnail über pure js / jquery no api verwenden möchten, können Sie mit diesem Tool einen Frame aus dem Video und voila aufnehmen! Geben Sie den URL-Daumen in die Quelle ein, die Sie mögen.
Hier ist ein Codestift:
Hier ist die Seite, um ein Miniaturbild zu erhalten:
http://video.depone.eu/
quelle
Hier ist mein Beispiel unter Verwendung der Vimeo-URL ( https://player.vimeo.com/video/30572181 )
quelle
Es scheint, als ob api / v2 tot ist.
Um die neue API verwenden zu können, müssen Sie Ihre Anwendung registrieren und base64 das
client_id
undclient_secret
als Autorisierungsheader codieren .Aus Sicherheitsgründen können Sie das
client_id
undclient_secret
bereits verschlüsselt vom Server zurückgeben.quelle
Dies ist eine schnelle und clevere Methode, um eine benutzerdefinierte Größe auszuwählen.
Ich gehe hierher:
Laden Sie die Datei herunter, öffnen Sie sie und suchen Sie das 640 Pixel breite Miniaturbild. Es hat ein Format wie das folgende:
Sie nehmen den Link, ändern den 640 für beispielsweise 1400 und erhalten am Ende Folgendes:
Fügen Sie es in die Suchleiste Ihres Browsers ein und genießen Sie es.
Prost,
quelle
quelle
Eigentlich hat der Typ, der diese Frage gestellt hat, seine eigene Antwort gepostet.
"Vimeo möchte anscheinend, dass ich eine HTTP-Anfrage stelle und die Miniatur-URL aus dem zurückgegebenen XML extrahiere ..."
Die Vimeo-API-Dokumente finden Sie hier: http://vimeo.com/api/docs/simple-api
Kurz gesagt, Ihre App muss eine GET-Anfrage an eine URL wie die folgende stellen:
Analysieren Sie die zurückgegebenen Daten, um die gewünschte Miniatur-URL zu erhalten, und laden Sie dann die Datei unter dieser URL herunter.
quelle
Ich habe eine Funktion in PHP geschrieben, um mich darauf einzulassen. Ich hoffe, sie ist für jemanden nützlich. Der Pfad zur Miniaturansicht ist in einem Link-Tag auf der Videoseite enthalten. Dies scheint den Trick für mich zu tun.
Hoffe es hilft jedem.
Foggson
quelle
// Bei der folgenden Funktion übergeben Sie die Thumbnail-URL.
quelle
Zerlegen der Antwort von Karthikeyan P, damit sie in einer größeren Anzahl von Szenarien verwendet werden kann:
Verwendung
Holen Sie sich eine Vimeo-ID von einer Vimeo-Video-URL:
Holen Sie sich eine Vimeo-Miniatur-URL von einer Vimeo-ID:
https://jsfiddle.net/b9chris/nm8L8cc8/1/
quelle
UPDATE: Diese Lösung funktioniert seit Dezember 2018 nicht mehr.
Ich habe nach dem gleichen gesucht und es sieht so aus, als ob die meisten Antworten hier veraltet sind, da die Vimeo API v2 veraltet ist.
mein php 2 ¢:
Mit dem oben genannten erhalten Sie den Link zum Standard-Miniaturbild von Vimeo.
Wenn Sie ein Bild unterschiedlicher Größe verwenden möchten, können Sie Folgendes hinzufügen:
quelle
Wenn Sie keine automatisierte Lösung benötigen, finden Sie die URL der Miniaturansicht, indem Sie die vimeo-ID hier eingeben : http://video.depone.eu/
quelle
Ich habe einen CodePen erstellt, der die Bilder für Sie abruft.
HTML
JavaScript:
quelle
Wenn Sie nach einer alternativen Lösung suchen und das Vimeo-Konto auf andere Weise verwalten können, fügen Sie einfach jedes Video, das Sie anzeigen möchten, zu einem Album hinzu und fordern dann mithilfe der API die Albumdetails an. Anschließend werden alle Miniaturansichten und Links angezeigt . Es ist nicht ideal, könnte aber helfen.
API-Endpunkt (Spielplatz)
Twitter Convo mit @vimeoapi
quelle
Vielleicht möchten Sie einen Blick auf das Juwel von Matt Hooks werfen. https://github.com/matthooks/vimeo
Es bietet einen einfachen Vimeo-Wrapper für die API.
Sie müssten lediglich die video_id speichern (und den Anbieter, wenn Sie auch andere Videoseiten erstellen).
Sie können die Vimeo-Video-ID wie folgt extrahieren
und wenn Sie Ihre Röhre brauchen, finden Sie diese vielleicht nützlich
quelle
Für diejenigen, die immer noch eine Möglichkeit suchen, das Miniaturbild nur über eine URL abzurufen, wurde genau wie bei Youtube eine kleine Anwendung erstellt, die es nur mit der Vimeo-ID abruft.
Stecken Sie einfach Ihre Video-ID ein und sie wird abgerufen und 24 Stunden lang zwischengespeichert, damit sie schnell funktioniert.
Wenn Sie Ihre eigenen drehen möchten, können Sie dies hier tun .
Repo
quelle
Für jemanden wie mich, der versucht, dies kürzlich herauszufinden,
https://i.vimeocdn.com/video/[video_id]_[dimension].webp
funktioniert bei mir.(wobei
dimension
= 200 × 150 | 640)quelle