|
911
|
1 |
# Intégration du Metadataplayer # |
|
|
2 |
|
|
|
3 |
ATTENTION ! |
|
|
4 |
Cette documentation se réfère à la v.3 du Metadataplayer, actuellement disponible dans la branche **new-model** du repository |
|
|
5 |
http://www.iri.centrepompidou.fr/dev/hg/metadataplayer |
|
|
6 |
|
|
|
7 |
## Chargement du script ## |
|
|
8 |
|
|
|
9 |
Le fichier *LdtPlayer-core.js* doit être référencé dans l'entête du fichier HTML |
|
|
10 |
|
|
|
11 |
<head> |
|
|
12 |
<meta http-equiv="Content-type" content="text/html; charset=utf-8" /> |
|
|
13 |
<title>Test d’intégration du Metadataplayer</title> |
|
|
14 |
<script type="text/javascript" src="metadataplayer/LdtPlayer-core.js" type="text/javascript"></script> |
|
|
15 |
</head> |
|
|
16 |
|
|
|
17 |
## Création d'un élément conteneur pour le Metadataplayer ## |
|
|
18 |
|
|
|
19 |
<body> |
|
|
20 |
<div id="Metadataplayer"></div> |
|
|
21 |
|
|
912
|
22 |
Le script doit se faire après le chargement de l’élément, soit en rajoutant un élément <*script*> en bas de page, soit en utilisant un événement de type *body.onload* ou, avec jQuery, *$(document).ready()* |
|
911
|
23 |
|
|
|
24 |
<script type="text/javascript"> |
|
|
25 |
|
|
912
|
26 |
## Configuration de la langue de l’interface ## |
|
|
27 |
|
|
|
28 |
La langue est définie par un code ISO 639-1 (par exemple, "es" pour l’Espagnol, "ja" pour le Japonais, "eu" pour le Basque, "ee" pour l’Ewe). Pour l’instant, seuls l’Anglais ("en") et le Français ("fr") sont disponibles. |
|
|
29 |
|
|
|
30 |
IriSP.language = "fr"; |
|
|
31 |
|
|
911
|
32 |
## Configuration des emplacements des bibliothèques ## |
|
|
33 |
|
|
|
34 |
Par défaut (fichier *defaults.js*), les bibliothèques sont chargées soit depuis un CDN (Content Distribution Network), soit depuis le répertoire *js/libs* |
|
|
35 |
|
|
|
36 |
La configuration se fait par les propriétés de l’objet *IriSP.libFiles* |
|
|
37 |
|
|
|
38 |
Pour utiliser le CDN: |
|
|
39 |
|
|
|
40 |
IriSP.libFiles.useCdn = true; |
|
|
41 |
|
|
|
42 |
Pour changer la localisation du répertoire des bibliothèques: |
|
|
43 |
|
|
|
44 |
IriSP.libFiles.defaultDir = "/chemin/libs"; |
|
|
45 |
|
|
|
46 |
Pour changer la localisation d’une bibliothèque individuellement: |
|
|
47 |
|
|
|
48 |
IriSP.libFiles.locations.jQueryUI = "libs/jquery-ui-1.8.16.custom.min.js"; |
|
|
49 |
IriSP.libFiles.locations.jwPlayerSWF = "libs/jwplayer/player.swf"; |
|
|
50 |
|
|
|
51 |
## Configuration de sources de métadonnées ## |
|
|
52 |
|
|
|
53 |
Une source de métadonnées est définie par son URL et le type de sérialiseur à utiliser. |
|
|
54 |
|
|
|
55 |
Par exemple: |
|
|
56 |
|
|
|
57 |
var metadataSource = { |
|
|
58 |
url: "data/mydata.json", |
|
|
59 |
type: "ldt" |
|
|
60 |
}; |
|
|
61 |
|
|
|
62 |
Les sources de métadonnées sont utilisées ensuite dans la configuration de la fenêtre vidéo et de ses widgets. |
|
|
63 |
|
|
|
64 |
## Configuration de la fenêtre vidéo ## |
|
|
65 |
|
|
|
66 |
Les options de configuration de la fenêtre vidéo sont: |
|
|
67 |
|
|
|
68 |
- **metadata**: La source de métadonnées utilisée, notamment pour obtenir l’URL de la vidéo. |
|
|
69 |
- **type**: Le type de player vidéo utilisé. Les players disponibles sont : |
|
|
70 |
- **"jwplayer"**: Utilise le player flash jwPlayer, compatible avec de nombreux formats vidéo et audio et les flux RTMP. |
|
|
71 |
- **"html5"**: Utilise la bibliothèque Popcorn et les vidéos HTML5. Formats supportés: OGG et WebM sur Firefox et Chrome, H.264 sur Internet Explorer et Safari. |
|
|
72 |
- **"youtube"**: Utilise le plugin Youtube de Popcorn pour afficher les vidéos Youtube. |
|
|
73 |
- **"dailymotion"** |
|
|
74 |
- **"auto"**: Remplacé par *Youtube* ou *Dailymotion* pour une vidéo sur l’un de ces sites et par JwPlayer sinon. |
|
|
75 |
- **width** et **height**: largeur et hauteur de la fenêtre vidéo. |
|
|
76 |
- **video**: URL de la vidéo. Si ce paramètre est présent, il écrase l’URL chargée dans les métadonnées |
|
|
77 |
- Paramètres spécifiques à chaque player, qui seront transférés tels quels, par exemple **provider** pour JwPlayer |
|
|
78 |
|
|
|
79 |
Exemple: |
|
|
80 |
|
|
|
81 |
var playerConfig = { |
|
|
82 |
metadata: metadataSource, |
|
|
83 |
type: "jwplayer", |
|
|
84 |
height: 350, |
|
|
85 |
width: 620, |
|
|
86 |
provider: "rtmp" |
|
|
87 |
}; |
|
|
88 |
|
|
|
89 |
## Configuration de l’interface utilisateur ## |
|
|
90 |
|
|
|
91 |
L’interface se configure par un objet GUI, contenant les propriétés suivantes: |
|
|
92 |
|
|
|
93 |
- **container**: l’ID de l’élément HTML dans lequel le player sera instancié. |
|
|
94 |
- **width** et **height**: largeur et hauteur de l’interface (*height* est optionnel). |
|
|
95 |
- **default\_options**: des options de configuration communes à tous les widgets, par exemple, comme ci-dessous, une source de métadonnées communes. |
|
|
96 |
- **css**: l’URL du fichier CSS de base (LdtPlayer-core.css) |
|
|
97 |
- **widgets**: la liste des widgets, sous la forme [ { type: *Type du widget*, option_1: *Valeur de l’option 1* } ]. Pour les options des widgets, se référer au document *Architecture générale* |
|
|
98 |
|
|
|
99 |
Exemple: |
|
|
100 |
|
|
|
101 |
var guiConfig = { |
|
912
|
102 |
container : "Metadataplayer", |
|
911
|
103 |
default_options: { |
|
|
104 |
metadata: metadataSource |
|
|
105 |
}, |
|
|
106 |
css : "metadataplayer/css/LdtPlayer-core.css", |
|
|
107 |
widgets: [ |
|
|
108 |
{ |
|
|
109 |
type: "Slider" |
|
|
110 |
},{ |
|
|
111 |
type: "Controller", |
|
|
112 |
disable\_annotate\_btn: true |
|
|
113 |
},{ |
|
|
114 |
type: "Segments", |
|
|
115 |
annotation\_type: "Chapters" |
|
|
116 |
},{ |
|
|
117 |
type: "AnnotationsList", |
|
|
118 |
container: "AnnotationsListContainer" |
|
|
119 |
} |
|
|
120 |
] |
|
|
121 |
}; |
|
|
122 |
|
|
912
|
123 |
## Instanciation du player ## |
|
911
|
124 |
|
|
912
|
125 |
Le player s’instancie en créant un objet de type **IriSP.Metadataplayer**. |
|
911
|
126 |
|
|
|
127 |
Exemple: |
|
|
128 |
|
|
|
129 |
var config = { |
|
|
130 |
player: playerConfig, |
|
|
131 |
gui: guiConfig |
|
|
132 |
}; |
|
912
|
133 |
var monPlayer = new IriSP.Metadataplayer(config); |