Bonjour,
En prévision de la future fermeture de Canoprof, je récupère mes contenus, en particulier les génération Web.
Je rencontre un erreur que je n’avais jamais vue « Invalid width to find appropriate image » et qui s’affiche à la place d’une vidéo en ligne intégrée au moyen d’un item Contenu web distant.
C’est plutôt bizarre parce que : 1) La vidéo s’affiche bien et se lit bien quand je colle le fragment HTML fourni par le service qui l’héberge (Peertube sur apps.education.fr) pour l’intégration de la vidéo dans l’item Contenu Web distant :
Le code d’intégration utilisé pour placer dans l’item Contenu Web distant est celui-ci :
<iframe title="Justice sociale et environnementale : quelle place pour le numérique ? - Maïtané Lenoir - RDV éduc 2023" width="560" height="315" src="https://tube-sciences-technologies.apps.education.fr/videos/embed/vYdDndCD8BDpvhPNFHt4zL" style="border: 0px;" allow="fullscreen" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe>
Je ne vois rien de choquant dans le code d’intégration, j’ai essayé de modifier les valeurs de largeur (width) pour essayer d’autres diemnsions, ça ne change rien.
Si quelqu’un a une idée de ce que je pourrais faire pour éviter d’avoir cette erreur, ce qui me permettrait de faire une génération web « propre » et qui fonctionne parfaitement dans mon navigateur habituel…?
Merci.
Tiens, intéressant. On a le même problème sur scenari.org : https://scenari.org/co/mini_webinaires.html
Ce sont des vidéos peertube ?
Si oui le problème vient peut-être de là. Soit un problème de peertube (faudrait voir si l’intégration d’une vidéo peertube en dehors de Scenari pose problème aussi ou pas), soit un souci de Scenari spécifique quand on utilise peertube.
Je pencherais plutôt pour un problème spécifique à Scenari avec les vidéos de Peertube (ou à un problème de Peertube quand on l’intègre dans un contenu Scenari ?).
Je pense que c’est un défaut du lecteur PeerTube. Au chargement du lecteur, comme la zone est masquée, elle ne possède pas de dimesions donc de largeur et le lecteur échoue alors à sélectionner le flux correspondant à la taille de la zone d’affichage. Il faudrait dans ce cas de figure que le lecteur détecte le changement de contexte (peut-être via les events pageshow, visibilitychange ou resize ou via un `ResizeObserver`, à tester, et/ou que le lecteur sélectionne une taille par défaut). Il faudrait ouvrir un ticket chez eux…
En effet, PeerTube à bien un défaut de ce côté. Un service proposant du code à insérer dans un site tierce doit être assez robuste pour s’adapter à ce type de situation.
En attendant qu’ils améliorent leur code, il est possible, par le biais d’un habillage, d’ajouter trois lignes de code JavaScript pour forcer le rechargement des iframes compris dans les blocs marqués SCENARI.
En voici un exemple : Accueil [Test Iframe Collapse]
Remarque - Cet exemple est assez basique : il force le rechargement de TOUS les iframes descendants du bloc masqué (Ici des blocs Compléments Optim), même ceux qui n’en ont pas besoin comme YouTube.
Il conviendrait de mieux cibler des sites qui en ont besoin, en analysant leur URL par exemple.
J’ai ajouté le bout de code dans le fichier skin.js et effectivement, ça fonctionne, la vidéo s’affiche bien maintenant quand on déplie la section. @sam Merci pour le patch !