MediaStream
The corresponding JS API docs is here MediaStream.
The MediaStream interface of the Media Capture and Streams API represents a stream of media content. A stream consists of several tracks, such as video or audio tracks. Each track is specified as an instance of MediaStreamTrack.
Methods#
addTrack:Adds the givenMediaStreamTrackto thisMediaStream.
var mediaStream = MediaStream( id: 'audio-stream', ownerTag: 'audio-tag', active: true,/// The active attribute return true if this [MediaStream] is active and false otherwise./// [MediaStream] is considered active if at least one of its [MediaStreamTracks] is not in the [MediaStreamTrack.ended] state./// Once every track has ended, the stream's active property becomes false. onAddTrack: (MediaStreamTrack track) { print('Track added: ${track.id}'); }, onRemoveTrack: (MediaStreamTrack track) { print('Track removed: ${track.id}'); },);mediaStream.addTrack(track, {addToNative: true});removeTrack:Removes the givenMediaStreamTrackobject from thisMediaStream.
mediaStream.removeTrack(track,{removeFromNative: true});getTracks:Returns a ListMediaStreamTrackobjects representing all the tracks in this stream.
var tracks = mediaStream.getTracks();getAudioTracks:Returns a ListMediaStreamTrackobjects representing the audio tracks in this stream. The list represents a snapshot of all theMediaStreamTrackobjects in this stream's track set whose kind is equal to 'audio'.
var audioTracks = mediaStream.getAudioTracks();getVideoTracks:Returns a ListMediaStreamTrackobjects representing the video tracks in this stream.
var videoTracks = mediaStream.getVideoTracks();getTrackById:Returns either aMediaStreamTrackobject from this stream's track set whose id is equal to trackId, orStateError, if no such track exists.
var track = mediaStream.getTrackById('some-track-id');dispose:Dispose theMediaStream.
await mediaStream.dispose();Events#
onAddTrack:Fires when a newMediaStreamTrackis added to thisMediaStream.
var mediaStream = MediaStream( id: 'audio-stream', ownerTag: 'audio-tag', active: true,);mediaStream.onAddTrack = (MediaStreamTrack track) { print('Track added: ${track.id}');};onRemoveTrack:Fires when aMediaStreamTrackis removed from thisMediaStream.
var mediaStream = MediaStream( id: 'audio-stream', ownerTag: 'audio-tag', active: true,);mediaStream.onRemoveTrack = (MediaStreamTrack track) { print('Track removed: ${track.id}');};