Aperçu
Le plugin Custom Endscreen permet d'afficher le code HTML fourni par le client à la fin de la lecture vidéo.
L'exemple de vidéo ci-dessous montre l'utilisation du plug-in Custom Endscreen. À la fin de cette courte vidéo, vous verrez le texte affiché à partir du code HTML suivant:
<strong>Content</strong> for <em>custom</em> end screen
Implémenter avec le module Players
Des écrans finaux personnalisés peuvent être implémentés par modification des propriétés de l'écran final ou en utilisant le plugin personnalisé de l'écran final. Pour implémenter le plug-in d'écran personnalisé à l'aide du module Lecteurs, procédez comme suit:
- Ouvrez le module PLAYERS et créez un nouveau lecteur ou localisez le lecteur auquel vous souhaitez ajouter le plugin.
- Cliquez sur le lien correspondant au lecteur pour ouvrir ses propriétés.
- Cliquez sur Écrans de fin dans le menu de navigation de gauche.
- Ensuite, pour le Écran de fin du joueur tapez, cliquez sur la flèche vers le bas et sélectionnez Douane.
- Dans la zone de texte HTML personnalisé , saisissez le code HTML à afficher sur l'écran d'extrémité. Voici un exemple :
<div style="text-align:center"> <p>This video sponsored by</p><br/> <img src="http://support.brightcove.com/site-assets/images/site/logos/BeaconLogo.svg"/> </div>
L'écran final suivant s'affiche :
- Cliquez sur Save.
- Pour publier le lecteur, cliquez sur Publier et intégrer > Publier les modifications.
- Pour fermer la boîte de dialogue ouverte, cliquez sur Fermer.
Implémenter à l'aide
Pour implémenter un plugin, le lecteur doit connaître l'emplacement du code du plugin, une feuille de style si nécessaire, le nom du plugin et les options de configuration du plugin. L'emplacement du code et de la feuille de style du plugin est le suivant :
https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.min.js
https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.css
Le nom du plugin est customEndscreen
, et un exemple d'ensemble d'options est:
{
"content": "<strong>Content</strong> for <em>custom</em> end screen"
}
Ce qui suit montre l'utilisation de l'implémentation In-Page Embed du lecteur pour associer le plugin Custom Endscreen à une seule instance de lecteur.
- Ligne 12 :
link
Utilise une balise pour inclure le CSShead
du plugin dans la page HTML. - Ligne 14 : Donne à la
video
balise unid
attribut, avec une certaine valeur, dans ce cas MyPlayerID. - Ligne 23 :
script
Utilise une balise pour inclure le JavaScriptbody
du plugin dans la page HTML. - Ligne 27 : Crée une référence au lecteur.
- Lignes 28-30 : Initialise le plugin et transmet des options personnalisées.
<link rel="stylesheet" type="text/css" href="https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.css">
<video-js id="myPlayerID"
data-account="1752604059001"
data-player="decfdaf5-0a6e-43f6-82d3-39d125c413c4"
data-embed="default"
data-video-id="4077874637001"
controls=""></video-js>
<script src="https://players.brightcove.net/1752604059001/decfdaf5-0a6e-43f6-82d3-39d125c413c4_default/index.min.js"></script>
<script type="text/javascript" src="https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.min.js"></script>
<script type="text/javascript">
videojs.getPlayer('myPlayerID').ready(function() {
var myPlayer = this;
myPlayer.customEndscreen({
"content": "<strong>Content</strong> for <em>custom</em> end screen"
})
});
</script>
Pour implémenter un plugin, le lecteur doit connaître l'emplacement du code du plugin, une feuille de style si nécessaire, le nom du plugin et les options de configuration du plugin. L'emplacement du code et de la feuille de style du plugin est le suivant :
- https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.min.js
- https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.css
Le nom du plugin est customEndscreen
, et un exemple d'ensemble d'options est:
{
"content": "<strong>Content</strong> for <em>custom</em> end screen"
}
Ce qui suit montre l'utilisation de l'implémentation In-Page Embed du lecteur pour associer le plugin Custom Endscreen à une seule instance de lecteur.
- Ligne 1 :
link
Utilise une balise pour inclure le CSShead
du plugin dans la page HTML. - Ligne 3 : Donne à la
video
balise unid
attribut, avec une certaine valeur, dans ce cas MyPlayerID. - Ligne 12 :
script
Utilise une balise pour inclure le JavaScriptbody
du plugin dans la page HTML. - Ligne 16 : Crée une référence au lecteur.
- Lignes 17 à 19 : Initialise le plugin et transmet des options personnalisées.
<link rel="stylesheet" type="text/css" href="https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.css">
<video-js id="myPlayerID"
data-account="1752604059001"
data-player="decfdaf5-0a6e-43f6-82d3-39d125c413c4"
data-embed="default"
controls=""></video-js>
<script src="https://players.brightcove.net/1752604059001/decfdaf5-0a6e-43f6-82d3-39d125c413c4_default/index.min.js"></script>
<script type="text/javascript" src="https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.min.js"></script>
<script type="text/javascript">
videojs.getPlayer('myPlayerID').ready(function() {
var myPlayer = this;
myPlayer.customEndscreen({
"content": "<strong>Content</strong> for <em>custom</em> end screen"
})
});
</script>
Propriété
La propriété de plugin suivante est utilisée pour contrôler le plugin Custom Endscreen:
content
:- Type:
string
- Toute chaîne littérale ou HTML rendue sur l'écran final personnalisé.
- Type:
Personnalisez l'écran final
Vous pouvez utiliser CSS pour personnaliser l'apparence de votre écran final. Voici quelques exemples de ce que vous pouvez faire. Assurez-vous de tester vos implémentations pour vous assurer qu'elles fonctionnent avec le contenu de votre page.
C'est ainsi que l'écran final apparaît avec le bouton de redémarrage de la vidéo et un bouton de partage social.

Changer la taille du bouton
Supposons que vous souhaitiez modifier la taille des boutons de l'écran final. Ces images de bouton sont au format SVG (Scalable Vector Graphics) afin qu'elles se chargent rapidement sur toutes les plates-formes. Pour cette raison, vous ne pouvez pas modifier leur taille en utilisant le width
et height
Propriétés CSS.
Au lieu de cela, comme ces boutons sont des fichiers texte XML, vous pouvez modifier leur taille en utilisant le font-size
Propriété CSS.
Utilisez le code ci-dessous pour réduire les deux boutons:
.vjs-overlay-buttons {
font-size: .5em;
}
L'utilisation d'une valeur en pourcentage devrait avoir le même effet:
.vjs-overlay-buttons {
font-size: 50%;
}
Le résultat devrait ressembler à ceci :

Ou vous pouvez contrôler la taille de chaque bouton indépendamment:
.vjs-restart-control {
font-size: .5em;
}
.vjs-trigger-social-control {
font-size: .5em;
}
Déplacer le contenu sous les boutons
Plus tôt dans ce document, vous avez appris comment ajouter du contenu à l'écran final. Pour revoir, vous pouvez ajouter n'importe quel HTML au plugin. Le code ci-dessous ajoute un lien vers notre page d'accueil à l'écran final:
<a href='https://www.brightcove.com'>Visit our home page</a>
Par défaut, votre contenu ajouté s'affiche au-dessus des boutons de l'écran final:

Utilisez le CSS suivant pour positionner votre contenu HTML sous les boutons de l'écran final:
- Lignes 190-193: Positionnez les boutons par le haut. Ces éléments sont déjà centrés sur la page pour vous.
- Lignes 194-196: Supprimez le remplissage par défaut de l'ensemble de la superposition pour vous aider à centrer votre texte personnalisé.
- Lignes 197-202: Positionnez votre texte personnalisé par le bas et centrez-le horizontalement.
.vjs-overlay-buttons {
position: absolute;
top: 5em;
}
.vjs-custom-overlay {
padding: 0;
}
.vjs-endscreen-overlay-content {
position: absolute;
bottom: 5em;
text-align: center;
width: 100%;
}
Le résultat devrait ressembler à ceci :

Afficher le contenu vertical et les boutons
Vous pouvez également modifier la mise en page de votre contenu HTML et les boutons de l'écran final. Par défaut, ils sont affichés horizontalement, avec votre contenu au-dessus des boutons. Le code ci-dessous fait flotter votre contenu à gauche des boutons et affiche les boutons verticalement:
- Lignes 205-210: Positionnez les boutons du haut et de la gauche. La petite largeur a entraîné l'alignement vertical des boutons.
- Lignes 211-213: Supprimez le remplissage par défaut pour toute la superposition.
-
Lignes 214-223: Positionne le texte personnalisé à gauche des boutons, centré horizontalement et verticalement sur la moitié de la superposition.
.vjs-overlay-buttons {
position: absolute;
width: 10%;
top: 20%;
left: 50%;
}
.vjs-custom-overlay {
padding: 0;
}
.vjs-endscreen-overlay-content {
position: absolute;
float: left;
width: 50%;
text-align: center;
top: 45%;
transform: translate(0, -50%)
-webkit-transform: translate(0,-50%);
-ms-transform: translate(0,-50%);
}
Le résultat devrait ressembler à ceci :

Vous pouvez être créatif avec l'apparence de votre écran final en remplaçant les propriétés CSS par défaut. Dans votre navigateur, inspectez les éléments pour trouver les noms et les valeurs des classes d'éléments. Pour un aperçu rapide de la procédure à suivre, consultez le Personnaliser l'apparence du joueur document.
Utiliser mailto avec le nom de la vidéo
Vous pouvez autoriser le spectateur de la vidéo à vous envoyer une question ou un commentaire par e-mail. Vous pouvez le faire en utilisant un HTML mailto lien dans l'écran de fin personnalisé, comme indiqué ici:

Cliquez sur le lien pour ouvrir le client de messagerie par défaut du client. Le code ci-dessous montre comment utiliser les métadonnées de la vidéo, dans ce cas le nom de la vidéo, pour faire automatiquement l'objet de l'e-mail.
La section suivante explique comment effectuer cette tâche particulière, mais de plus, une fois que vous avez des données du mediainfo propriété, toutes les métadonnées vidéo peuvent être utilisées dans le lien mailto.
- Ligne 235: Incluez le CSS pour le plugin customEndscreen.
- Lignes 236-241: CSS pour changer la taille du lecteur.
- Lignes 245-251: Code intégré standard utilisé dans la page. Notez qu'un
id
est ajouté. - Ligne 253: Spécifiez la source du code JavaScript pour le plug-in d'écran final.
- Lignes 256,257,270: Configuration standard pour utiliser du code avec le lecteur.
- Ligne 262: Écoute l'
loadstart
événement. C'est à ce moment que le chargement de la vidéo et de ses métadonnées se trouvent dansmyPlayer.mediainfo
, est disponible. - Ligne 263: L'URL encode le nom de la vidéo et l'assigne à une variable. Pour que la valeur soit utilisée comme sujet dans un lien mailto, les normes HTML exigent que la chaîne soit encodée en URL.
- Lignes 264-265: Construisez le
<a href="mailto">
lien. - Lignes 266-268: Appeler le
customEndscreen()
et utilisez le lien mailto créé pour le contenu de l'écran final.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>End screen with title as subject</title>
<link href="https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.css" rel='stylesheet'>
<style type="text/css">
.video-js {
width: 600px;
height: 338px;
}
</style>
</head>
<body>
<video-js id="myPlayerID"
data-video-id="1507781667001"
data-account="1507807800001"
data-player="default"
data-embed="default"
controls=""></video-js>
<script src="https://players.brightcove.net/1507807800001/default_default/index.min.js"></script>
<script src="https://players.brightcove.net/videojs-custom-endscreen/2/videojs-custom-endscreen.min.js"></script>
<script type="text/javascript">
videojs.getPlayer('myPlayerID').ready(function() {
var myPlayer = this,
subjectEncoded,
theMailto,
theLink;
myPlayer.on('loadstart',function(){
subjectEncoded = encodeURI(myPlayer.mediainfo.name);
theMailto = 'mailto:nowhere@mozilla.org?subject=' + subjectEncoded;
theLink = '<a href="' + theMailto + '">Email a Comment</a><br /><br/>';
myPlayer.customEndscreen({
"content": theLink
})
})
});
</script>
</body>
</html>
Utiliser des macros
le content
La chaîne fournie pour les écrans de fin personnalisés peut désormais inclure des macros (prises en charge par videojs-contrib-ads). Par exemple, si vous vouliez que l'écran final inclue le nom et la description de la vidéo actuellement dans le lecteur, vous utiliseriez un code similaire à:
videojs.getPlayer('myPlayerID').on('loadstart', function() {
var myPlayer = this;
// +++ Call endscreen method +++
myPlayer.customEndscreen({
content: '{mediainfo.name} - {mediainfo.description}'
});
});
Cela entraînerait l'écran final suivant:

Voici la liste complète des macros disponibles:
Macro | Description |
---|---|
{player.id} | Player ID |
{mediainfo.id} | ID vidéo |
{mediainfo.name} | Titre de la vidéo |
{mediainfo.description} | Brève information (250 caractères max) |
{mediainfo.tags} | Balises (métadonnées) associées à la vidéo |
{mediainfo.reference_id} | ID de référence |
{mediainfo.duration} | Durée de la vidéo telle que rapportée par Video Cloud |
{mediainfo.ad_keys} | Chaîne de texte de formulaire libre qui peut être ajoutée et modifiée dans le module Media de Studio. Vous devez utiliser le paramètre de requête dans le formulaire
|
{player.duration} | Durée de la vidéo mesurée par le lecteur (peut-être légèrement différente mediainfo.duration et probablement plus précise) |
{document.referrer} | URL de la page de référence |
{window.location.href} | URL de la page actuelle |
{horodatage} | Heure locale actuelle en millisecondes depuis le 1/1/70 |
{aléatoire} | Un nombre aléatoire 0-1 trillion (Utilisé pour créer une impression unique. Cela empêche la mise en cache de l'annonce dans le navigateur et évite les divergences d'impression.) |
Problèmes connus
- Dans le cas très rare où vous gardez manuellement la barre de contrôle visible à tout moment ET que vous utilisez le plugin d'écran de fin personnalisé, vous devrez faire un petit changement pour que la barre de contrôle fonctionne correctement après l'affichage de l'écran de fin. Par défaut, le plugin endscreen désactive la barre de contrôle. Pour activer la barre de contrôle, puisqu'elle est toujours visible, vous devez utiliser le JavaScript
player.controls(true)
après leModalDialog
demodalopen
l'événement est distribué.
Changelog
Voir le Notes de version du plug-in Endscreen personnalisé.
Pour les notes de version historiques, voir le changelog ici.