Plugins de lecteur Brightcove
Ressources complémentaires
Les documents suivants fournissent des informations plus détaillées sur la création et l'utilisation de plugins:
- Étape par étape : Développement de plugins fournit les étapes de création du plugin
- Étape par étape : Gestion des joueurs détaille l'utilisation d'un plugin pré-écrit
- Aperçu: API du système de livraison démontre une mise en œuvre des meilleures pratiques de stockage de plugins
Introduction
Un plugin pour Brightcove Player utilise une combinaison de HTML, JavaScript et / ou CSS pour personnaliser en quelque sorte le lecteur. En d'autres termes, tout ce que vous pouvez faire dans une page Web, vous pouvez le faire dans un plugin.
De manière générale, les plugins peuvent être développés pour:
- Modifier le comportement par défaut
- Ajouter une fonctionnalité
- Personnaliser l'apparence (cela ne peut pas être fait en CSS standard)
Plugins Brightcove
le Aperçu: Plugins de lecteur document répertorie les plugins fournis par Brightcove et les plugins chargés par défaut.
Les plugins fournis par Brightcove peuvent être utilisés de différentes manières. Bien que tout puisse être implémenté en utilisant le Plugins section dans les studios JOUEURS module, certains ont une section dédiée pour charger les fonctionnalités, comme la publicité, les écrans finaux et les réseaux sociaux. Vous pouvez également obtenir une aide supplémentaire pour certains plugins dans le Plugins section comme indiqué dans ces captures d'écran:


Ajouter des plugins dans Studio
Si vous choisissez de ne pas le faire ou s'il n'y a aucun moyen d'ajouter un plugin d'une autre manière, utilisez le formulaire suivant. Comme indiqué, sélectionnez d'abord Plugin personnalisé , le formulaire semblera être rempli.


Vous voyez que vous ajoutez le nom du plugin, un lien accessible sur Internet vers le fichier JavaScript, vers le fichier CSS (si nécessaire) et des options.
Plugins par défaut
Il y a deux plugins chargés par défaut. Il s'agit de :
- les erreurs - Permet au joueur d'afficher des messages conviviaux lorsqu'il rencontre une erreur. L'écran est une superposition semi-transparente et coiffée par la feuille de style par défaut.
- HLS - Lit la vidéo HLS sur les plates-formes qui ne prennent pas en charge HLS mais qui ont Flash Player. L'option permet de lire le contenu vidéo du manifeste m3u8 dans le lecteur.
Si vous ne souhaitez pas charger un certain plugin, vous pouvez l'empêcher en définissant le (s) plugin (s) par défaut sur false
lors de la création / mise à jour d'un lecteur ou d'un lecteur enfant. Notez que le hls
, debugger
et errors
les champs sont imbriqués sous le configuration
propriété, et non dans aucune autre propriété de regroupement, lorsque PUBLIER pour créer un nouveau joueur:
curl \
--header "Content-Type: application/json" \
--user $EMAIL \
--request POST \
--data '{
"name": "MySamplePlayer",
"configuration": {
"media": {
"sources": [{
"src":"http://solutions.brightcove.com/bcls/assets/videos/Tiger.mp4",
"type":"video/mp4"
}]
},
"hls": false,
"errors": false
}
}' \
https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players
Si vous souhaitez désactiver le hls
, debugger
et / ou errors
plugin (s) avec un lecteur existant, vous devez utiliser un PIÈCE comme suit:
curl \
--header "Content-Type: application/json" \
--user $EMAIL \
--request PATCH \
--data '{
"hls": true,
"errors": true
}' \
https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/configuration
Comment détecter si un plugin par défaut est chargé?
Vous pouvez déterminer si un plugin par défaut est chargé en accédant à la console d'un navigateur lors de l'utilisation de l'URL ou des implémentations embed_in_page d'un lecteur et en vérifiant si l'objet plugin correspondant est présent. La capture d'écran suivante montre la présence du plugin.

Si vous avez défini un plugin par défaut particulier à NE PAS charger, son objet ne sera pas présent dans la page. Dans la capture d'écran suivante, vous voyez que l'objet plugin HLS n'est PAS présent:

Passer les données
Vous pouvez également utiliser un options
propriété enfant avec plugins
. Cela vous permet de transmettre des données au plugin pour une utilisation au moment de l'initialisation. Cela rend également les plugins plus flexibles car la réutilisation des plugins est considérablement améliorée lorsque vous pouvez transmettre différentes données d'implémentation pour différentes utilisations d'un seul plugin.
Pour une discussion complète de la option
propriété voir le Passer des données au plug-in document.
Plugin et postMessage ()
Dans une implémentation de lecteur iframe, vous souhaiterez peut-être envoyer des données dans l'iframe à partir de la page parent. Ceci est possible en utilisant JavaScript postMessage()
méthode. En bref, dans la page parent que vous utilisez postMessage()
pour envoyer un message dans l'iframe, qui utilise un écouteur d'événement pour récupérer le message et agir en conséquence.
Voir le Lire la vidéo depuis iframe Parent document pour une explication complète et un exemple de travail.
Rôle des feuilles de style
Il n'est pas rare d'avoir à la fois un plugin et une feuille de style associée pour ce plugin. Par exemple, dans le simple plugin utilisé dans l'étape pas à pas: Gestion du lecteur, le plugin lui-même utilise JavaScript pour placer du texte sur le lecteur, tandis que la feuille de style associée contrôle la couleur, la taille de la police et le positionnement. Cela peut être résumé dans les meilleures pratiques suivantes:
- Un plugin doit avoir une feuille de style associée pour effectuer des tâches que les feuilles de style font le mieux. Ne stylisez dans le plugin que si cela ne peut pas être fait dans une feuille de style, par exemple, la sélection dynamique de feuilles de style.
Compatibilité
Le lecteur videojs open source, sur lequel le Brightcove Player est basé, a de nombreux plugins conçus pour cela. Ces plugins ne sont compatibles avec Brightcove Player que tant que la version du lecteur videojs est la même que celle sur laquelle repose Brightcove Player. Le lecteur Brightcove peut être avant ou après le lecteur videojs open source.