API Vimeo


Notes sur l'API javascript

Le paramètre background=true, qui nécessite que le compte ayant posté la vidéo soit au moins Plus (payant), lance les vidéos automatiquement mais les contrôles sont toujours là. On peut override ça avec un &autoplay=0.

Si on utilise #t pour lancer la vidéo à un endroit précis, l'autoplay est forcé et ignoré dans les paramètres ET les autres paramètres sont ignorés (muted)…

Toutes les fonctions get (comme getCurrentTime()) sont asynchrones, probablement à cause des iframes. Ça fout un gros bordel si on veut traiter le temps actuel en direct, il vaut mieux mettre à jour une variable en amont avec l'event timeupdate (qui ne se déclenche plus quand la vidéo est en pause).

Events

bufferstart et bufferend ne se déclenchent pas si la vidéo ne se joue pas (si on fait play et pause pour précharger par exemple). Aucun des 2 ne se déclenche si la vidéo s'arrête parce qu'elle ne s'est pas chargée. En fait ils peuvent se déclencher pendant le buffering de la lecture mais de manière inconsistante…
On peut les forcer à se déclencher si les lecteurs sont lancés par un setCurrentTime (même à 0) et qu'il n'y a eu aucun Play ou pause sur le lecteur avant, mais ça force un autoplay (à gérer avec un pause sur le bufferend ?)

pause ne se déclenche pas non plus en cas d'arrêt pour vidéo non chargée.

Méthodes

Problème de "lecture automatique" sur Chrome

Source - À cause de l'iframe les lecteurs sont considérés comme des pages web à part et ça peut bloquer la lecture de vidéos avec du son. Il faut ajouter ce paramètre dans l'iframe pour éviter ça :

<iframe src="https://cross-origin.com/myvideo.html" allow="autoplay">