Player

Player

L'interface de contrôle Player permet d'interagir avec le lecteur vidéo.

Cette API est asynchrone et utilise Promise.
Pour utiliser cette API, vous devez dans un premier temps obtenir l'interface de contrôle Player à l'aide de IDAL.getControlInterfaces().

Méthodes

getAllFolders() → {Promise.<Array.<Player~FolderInfo>>|Promise.<ErrorStatus>}

Obtenir la liste de tous les dossiers médias disponibles sur le stockage actuel.

Valeur de retour:

getDuration() → {Promise.<number>|Promise.<ErrorStatus>}

Obtenir la durée du fichier audio / vidéo courant.

La valeur renvoyée est nulle lorsque la lecture n'est pas démarrée.

Valeur de retour:
  • Une promesse résolue avec la durée totale exprimée en secondes (nombre décimal).

    Type
    Promise.<number>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getFileName() → {Promise.<string>|Promise.<ErrorStatus>}

Obtenir le nom du fichier en cours de lecture.

Valeur de retour:
  • Une promesse résolue avec le nom de fichier.

    Type
    Promise.<string>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getFolderName() → {Promise.<string>|Promise.<ErrorStatus>}

Obtenir le nom du dossier courant.

Valeur de retour:
  • Une promesse résolue avec le nom de dossier.

    Type
    Promise.<string>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getFolderNumber() → {Promise.<number>|Promise.<ErrorStatus>}

Obtenir le numéro (identifiant) du dossier courant.

Valeur de retour:
  • Une promesse résolue avec le numéro de dossier courant (-1 s'il n'y a pas de dossier courant).

    Type
    Promise.<number>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getMute() → {Promise.<boolean>|Promise.<ErrorStatus>}

Obtenir l'état de la sourdine.

Valeur de retour:
  • Une promesse résolue avec l'état de la sourdine, vrai lorsque la sourdine est activée.

    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getPosition() → {Promise.<number>|Promise.<ErrorStatus>}

Obtenir la position courante de lecture.

La position renvoyée est 0 lorsque la lecture n'est pas lancée.

Valeur de retour:
  • Une promesse résolue avec la position courante de lecture exprimée en secondes (nombre décimal).

    Type
    Promise.<number>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getRemainingTime() → {Promise.<number>|Promise.<ErrorStatus>}

Obtenir le temps de lecture restant.

La valeur renvoyée est nulle lorsque la lecture n'est pas démarrée.

Valeur de retour:
  • Une promesse résolue avec le temps de lecture restant exprimé en secondes (nombre décimal).

    Type
    Promise.<number>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getState() → {Promise.<('stopped'|'paused'|'playing'|'maintenance')>|Promise.<ErrorStatus>}

Obtenir l'état du lecteur vidéo.

Valeur de retour:
  • Une promesse résolue avec une chaîne de caractère donnant l'état du lecteur.

    Type
    Promise.<('stopped'|'paused'|'playing'|'maintenance')>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getStorageDevice() → {Promise.<string>|Promise.<ErrorStatus>}

Obtenir le nom du périphérique de stockage actuel.

Valeur de retour:
  • ne promesse résolue avec le nom périphérique de stockage actuel.

    Type
    Promise.<string>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

getVolume() → {Promise.<number>|Promise.<ErrorStatus>}

Obtenir le niveau du volume audio.

Valeur de retour:
  • Une promesse résolue avec le niveau du volume audio (entier entre 0 et 100).

    Type
    Promise.<number>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

mute() → {Promise.<boolean>|Promise.<ErrorStatus>}

Activer la sourdine.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans le cas suivant :

    • L'opération n'est pas permise.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

nextFile() → {Promise.<boolean>|Promise.<ErrorStatus>}

Lire le fichier suivant.

Le fichier suivant est le fichier qui suit le fichier courant en prenant en compte les balises présentes sur les fichiers et les dossiers ([Jxxx], [LOOP]...). Le fichier suivant peut donc être située dans un autre dossier que le dossier courant.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Il n'y a pas de fichier suivant.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

nextFolder() → {Promise.<boolean>|Promise.<ErrorStatus>}

Lire le dossier suivant.

Le dossier suivant est le dossier dont le numéro est supérieur au numéro de dossier actuel.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Il n'y a pas de dossier suivant.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

pause() → {Promise.<boolean>|Promise.<ErrorStatus>}

Mettre en pause la lecture.

Cette méthode n'est pertinente que lorsque le lecteur est en pause.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Le lecteur n'est pas dans l'état playing.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

play() → {Promise.<boolean>|Promise.<ErrorStatus>}

Démarrer la lecture.

La lecture est démarrée dans le dossier courant. Cette commande doit être utilisée suite à un appel à stop() ou après une commande de pause.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Il n'y a pas de fichier audio ou vidéo à redémarrer (stop() n'a pas été appelé précédemment).
    • Le lecteur n'est pas dans l'état paused.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

playFolder(folder) → {Promise.<boolean>|Promise.<ErrorStatus>}

Démarre la lecture d'un dossier donné.

Paramètres:
Nom Type Description
folder number

Le numéro du dossier.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Le dossier demandé n'existe pas.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

playPause() → {Promise.<boolean>|Promise.<ErrorStatus>}

Mettre en pause, reprendre ou démarrer la lecture.

Si le lecteur est à l'arrêt, la lecture commence comme le ferait play().
Si le lecteur est en pause, la lecture reprend comme le ferait resume().
Si le lecteur est en cours de lecture, la lecture est suspendue comme le ferait pause().

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • L'état courant du lecteur n'est pas valide (rien à démarrer ou mettre en pause).
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

previousFile() → {Promise.<boolean>|Promise.<ErrorStatus>}

Lire le fichier précédent.

Le fichier précédent est le fichier qui précède le fichier courant au sein du dossier courant.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Il n'y a pas de fichier précédent.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

previousFolder() → {Promise.<boolean>|Promise.<ErrorStatus>}

Lire le dossier précédent.

Le dossier précédent est le dossier ayant un numéro d'identification inférieur au dossier actuel.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Il n'y a pas de dossier précédent.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

resume() → {Promise.<boolean>|Promise.<ErrorStatus>}

Reprendre la lecture.

Cette méthode n'est pertinente que lorsque le lecteur est en pause.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Le lecteur n'est pas dans l'état paused.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

seek(position, relativeopt) → {Promise.<boolean>|Promise.<ErrorStatus>}

Se déplacer temporellement dans le fichier audio / vidéo courant.

Paramètres:
Nom Type Attributs Par défaut Description
position number

Le nombre de millisecondes à appliquer au déplacement (peut être négatif dans le cas d'un déplacement relatif, positif autrement)

relative boolean <optionnel>
false

Est vrai lorsque la position est relative à la position courante de lecture, faux lorsque le déplacement est absolu.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Les paramètres ne sont pas valides (position absolue non valide)
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

setVolume(volume, relativeopt) → {Promise.<boolean>|Promise.<ErrorStatus>}

Régler le volume audio de manière absolue ou relative.

Lorsque le volume audio est réglé, la sourdine audio est automatiquement désactivée.

Paramètres:
Nom Type Attributs Par défaut Description
volume number

Le niveau du volume (entier entre 0 et 100 pour un volume absolu et entre -100 and 100 pour un volume relatif).

relative boolean <optionnel>
false

Indique si le niveau de volume est relatif au volume actuel (augmenter ou diminuer le volume).

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Le volume est déjà au minimum et une diminution à été demandée.
    • Le volume est déjà au maximum et une augmentation à été demandée.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

stop() → {Promise.<boolean>|Promise.<ErrorStatus>}

Arrête la lecture.

Cette méthode n'est pertinente que lorsque le lecteur est en lecture ou en pause. Le fichier et le dossier actuel sont mémorisés pour rendre possible la reprise de lecture via play() ou playPause().

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Le lecteur n'est pas dans l'état paused ou playing.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

toggleMute() → {Promise.<boolean>|Promise.<ErrorStatus>}

Activer ou désactiver la sourdine.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

togglePause() → {Promise.<boolean>|Promise.<ErrorStatus>}

Mettre en pause ou reprendre la lecture.

Cette méthode n'est pertinente que lorsque le lecteur est en pause ou en cours de lecture.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    • Le lecteur n'est pas dans l'état paused ou playing.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

unmute() → {Promise.<boolean>|Promise.<ErrorStatus>}

Désactiver la sourdine.

Valeur de retour:
  • Une promesse résolue avec une valeur de type boolean qui peut être false dans les cas suivants :

    • L'opération n'est pas permise.
    Type
    Promise.<boolean>
  • Une promesse rejetée avec une valeur de type ErrorStatus.

    Type
    Promise.<ErrorStatus>

Définition des types

FolderInfo

Un objet FolderInfo donne les informations détaillées d'un dossier.

Propriétés:
Nom Type Description
number number

Le numéro de dossier (identifiant).

name string

Le nom du dossier.

Événements

FileEndEvent

Cet événement est envoyé lorsque le lecteur vidéo achève la lecture d'un fichier.

Propriétés:
Nom Type Description
type 'idal-player-event'

Type correspondant à l'ensemble des événements relatifs au lecteur vidéo.

detail Object
Propriétés
Nom Type Description
type 'file-end'

Le type correspondant à FileEndEvent.

filename string

Le nom du fichier.

folder Player~FolderInfo

Le dossier contenant le fichier.

Cet événement doit être enregistré en utilisant l'API window.addEventListener() définie par la spécification DOM.

Type:
Exemple
window.addEventListener('idal-player-event', function(e) {
      if (e.detail.type == 'file-end') {
          // Do something useful...
          console.log("File end: " + e.detail.filename);
      }
});

FileStartEvent

Cet événement est envoyé lorsque le lecteur vidéo démarre la lecture d'un fichier.

Propriétés:
Nom Type Description
type 'idal-player-event'

Type correspondant à l'ensemble des événements relatifs au lecteur vidéo.

detail Object
Propriétés
Nom Type Description
type 'file-start'

Le type correspondant à FileStartEvent.

filename string

Le nom du fichier.

folder Player~FolderInfo

Le dossier contenant le fichier.

Cet événement doit être enregistré en utilisant l'API window.addEventListener() définie par la spécification DOM.

Type:
Exemple
window.addEventListener('idal-player-event', function(e) {
      if (e.detail.type == 'file-start') {
          // Do something useful...
          console.log("File start: " + e.detail.filename);
      }
});

FolderEnterEvent

Cet événement est envoyé lorsque le lecteur vidéo démarre la lecture d'un dossier.

Propriétés:
Nom Type Description
type 'idal-player-event'

Type correspondant à l'ensemble des événements relatifs au lecteur vidéo.

detail Object
Propriétés
Nom Type Description
type 'folder-enter'

Le type correspondant à FolderEnterEvent.

folder Player~FolderInfo

Le dossier concerné.

Cet événement doit être enregistré en utilisant l'API window.addEventListener() définie par la spécification DOM.

Type:
Exemple
window.addEventListener('idal-player-event', function(e) {
      if (e.detail.type == 'folder-enter') {
          // Do something useful...
          console.log("Enter folder: " + e.detail.folder.name);
      }
});

FolderLeaveEvent

Cet événement est envoyé lorsque le lecteur vidéo quite un dossier.

Propriétés:
Nom Type Description
type 'idal-player-event'

Type correspondant à l'ensemble des événements relatifs au lecteur vidéo.

detail Object
Propriétés
Nom Type Description
type 'folder-leave'

Le type correspondant à FolderLeaveEvent.

folder Player~FolderInfo

Le dossier concerné.

Cet événement doit être enregistré en utilisant l'API window.addEventListener() définie par la spécification DOM.

Type:
Exemple
window.addEventListener('idal-player-event', function(e) {
      if (e.detail.type == 'folder-leave') {
          // Do something useful...
          console.log("Leave folder: " + e.detail.folder.name);
      }
});

MuteChangeEvent

Cet événement est envoyé lorsque la sourdine audio est modifiée.

Propriétés:
Nom Type Description
type 'idal-player-event'

Type correspondant à l'ensemble des événements relatifs au lecteur vidéo.

detail Object
Propriétés
Nom Type Description
type 'mute-change'

Le type correspondant à MuteChangeEvent.

mute boolean

Indique si la sourdine est activée.

Cet événement doit être enregistré en utilisant l'API window.addEventListener() définie par la spécification DOM.

Type:
Exemple
window.addEventListener('idal-player-event', function(e) {
      if (e.detail.type == 'mute-change') {
          // Do something useful...
          console.log("Mute: " + e.detail.mute);
      }
});

VolumeChangeEvent

Cet événement est envoyé lorsque le niveau du volume audio est modifié.

Propriétés:
Nom Type Description
type 'idal-player-event'

Type correspondant à l'ensemble des événements relatifs au lecteur vidéo.

detail Object
Propriétés
Nom Type Description
type 'volume-change'

Le type correspondant à VolumeChangeEvent.

volume number

Le niveau du volume audio.

Cet événement doit être enregistré en utilisant l'API window.addEventListener() définie par la spécification DOM.

Type:
Exemple
window.addEventListener('idal-player-event', function(e) {
      if (e.detail.type == 'volume-change') {
          // Do something useful...
          console.log("Volume: " + e.detail.volume);
      }
});