MediaStreamTrack class

Media stream track

Represents a single media track (audio or video) that can be added to an RTCPeerConnection.

Constructors

MediaStreamTrack({required MediaKind kind, bool remote = false, String? streamId, String? id, int? ssrc, String? rid, RtpCodecParameters? codec})

Properties

codec RtpCodecParameters?
Codec parameters
getter/setter pair
enabled bool
Whether track is enabled
getter/setter pair
hashCode int
The hash code for this object.
no setterinherited
headerInfo RtpHeaderInfo?
Last received RTP header info
getter/setter pair
id String?
Track ID (for SDP)
getter/setter pair
kind MediaKind
Track kind (audio/video)
final
label String
Track label
getter/setter pair
muted bool
Whether track is muted (no data received yet)
getter/setter pair
onEnded Stream<void>
Stream for track ended notifications
no setter
onReceiveRtcp Stream<RtcpPacket>
Stream of received RTCP packets
no setter
onReceiveRtp Stream<(RtpPacket, RtpExtensions?)>
Stream of received RTP packets
no setter
onSourceChanged Stream<RtpHeaderInfo>
Stream for source change notifications
no setter
remote bool
Whether this is a remote track
final
rid String?
RID for simulcast
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
ssrc int?
Media SSRC
getter/setter pair
stopped bool
Whether track is stopped
getter/setter pair
streamId String?
Stream ID this track belongs to
getter/setter pair
uuid String
Unique track ID
final

Methods

clone() MediaStreamTrack
Clone this track
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifySourceChanged(RtpHeaderInfo header) → void
Notify that the source has changed (e.g., SSRC change)
receiveRtcp(RtcpPacket rtcp) → void
Called internally when RTCP is received
receiveRtp(RtpPacket rtp, [RtpExtensions? extensions]) → void
Called internally when RTP is received (for remote tracks)
stop() → void
Stop the track
toString() String
A string representation of this object.
override
writeRtp(dynamic rtp, [RtpExtensions? extensions]) → void
Write RTP data to the track (for local tracks)

Operators

operator ==(Object other) bool
The equality operator.
inherited