aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/mediastream/index.md
blob: e20c39d3eef8e21ad953a4284cf2c4506c204dbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
---
title: MediaStream
slug: Web/API/MediaStream
translation_of: Web/API/MediaStream
---
{{APIRef("Media Capture and Streams")}} {{SeeCompatTable}}

L'interface `MediaStream` représente le contenu d'un flux de média. Un flux est composé de plusieurs *pistes*, tel que des pistes vidéos ou audio.

## Attributs

- {{domxref("MediaStream.id")}} {{readonlyInline}}
  - : {{domxref("DOMString")}} contenant 36 carractères correspondant à l'identifiant unique (GUID) de l'objet.
- {{domxref("MediaStream.ended")}} {{readonlyInline}}
  - : Booléen dont la valeur est `true` si l'évènement {{event("ended (MediaStream)", "ended")}} à été déclenché sur l'objet, signifiant que le flux à été complètement lu, ou `false` si la fin du flux n'à pas été atteinte.

### Gestionnaire d'évènements

- {{domxref("MediaStream.onaddtrack")}}
  - : Est un {{event("Event_handlers", "event handler")}} contenant l'action à exécuter lorsqu'un évènement {{event("addtrack")}} est déclenché sur l'objet, ce qui arrive lorsqu'un nouvel objet {{domxref("MediaStreamTrack")}} est ajouté.
- {{domxref("MediaStream.onended")}}
  - : Est un  {{event("Event_handlers", "event handler")}} contenant l'action à exécuter lorsqu'un évènement {{event("ended (MediaStream)","ended")}} est déclenché sur l'objet, ce qui arrive lorsque la diffusion est terminée.
- {{domxref("MediaStream.onremovetrack")}}
  - : Est un {{event("Event_handlers", "event handler")}} contenant l'action à exécuter lorsqu'un évènement {{event("removetrack")}} est délenché sur l'objet, ce qui arrive quand un objet  {{domxref("MediaStreamTrack")}} est retiré.

## Méthodes

- {{domxref("MediaStream.getTrackById()")}}
  - : Retourne la piste dont l'ID correspond à celui passé en paramètre, `trackid`. Si aucun paramètre n'est fourni, ou si aucune piste avec cet id existe, la fonction retourne `null`. Si plusieurs pistes ont le même id, elle retourne la première piste.

<!---->

- {{domxref("MediaStream.addTrack()")}}
  - : Stocke une copie de {{domxref("MediaStreamTrack")}} fourni en paramètre. Si la piste à déjà été ajouté à l'objet `MediaStream`, rien ne se passe; si la piste est au statut `finished`, c'est à dire qu'elle est terminée, l'exception `INVALID_STATE_RAISE` est levée.
- {{domxref("MediaStream.removeTrack()")}}
  - : Retire le the {{domxref("MediaStreamTrack")}} fourni comme argument. Si la piste ne fait pas parti du `MediaStream`, rien ne se passe; Si la piste est au statut `finished`, ce qui arrive lorsqu'elle est terminée, l'exception `INVALID_STATE_RAISE` est levée.
- {{domxref("MediaStream.getAudioTracks()")}}
  - : Retourne la liste des {{domxref("MediaStreamTrack")}} stockés dans l'objet `MediaStream` qui ont leur attribut `kind` défini à `"audio"`. L'ordre n'est pas défini, et peut varier d'un navigateur à l'autre, mais aussi d'un appel de la méthode à l'autre.
- {{domxref("MediaStream.getVideoTracks()")}}
  - : Retourne une liste des {{domxref("MediaStreamTrack")}} stockés dans l'objet `MediaStream` qui ont leur attribut `kind` défini à `"video"`. L'ordre n'est pas défini, et peut varier d'un navigateur à l'autre, mais aussi d'un appel de la méthode à l'autre.

## Spécifications

| Spécification                                                                    | Statut                               | Commentaire |
| -------------------------------------------------------------------------------- | ------------------------------------ | ----------- |
| {{SpecName('Media Capture', '#mediastream', 'MediaStream')}} | {{Spec2('Media Capture')}} |             |

## Compatibilité des navigateurs

{{Compat("api.MediaStream")}}

## Voir aussi

- Utilisation de l'API MediaStream
- [WebRTC API](/fr/docs/Web/API/WebRTC_API)
- [Web Audio API](/fr/docs/Web/API/Web_Audio_API)
- {{domxref("MediaStreamTrack")}}