void MediaStreamTrack::AddListener(MediaStreamTrackListener* aListener) { LOG(LogLevel::Debug, ("MediaStreamTrack %p adding listener %p", this, aListener)); MOZ_ASSERT(GetOwnedStream()); GetOwnedStream()->AddTrackListener(aListener, mTrackID); mTrackListeners.AppendElement(aListener); }
void MediaStreamTrack::RemoveDirectListener(DirectMediaStreamTrackListener *aListener) { LOG(LogLevel::Debug, ("MediaStreamTrack %p removing direct listener %p from stream %p", this, aListener, GetOwnedStream())); if (GetOwnedStream()) { GetOwnedStream()->RemoveDirectTrackListener(aListener, mTrackID); mDirectTrackListeners.RemoveElement(aListener); } }
void MediaStreamTrack::RemoveListener(MediaStreamTrackListener* aListener) { LOG(LogLevel::Debug, ("MediaStreamTrack %p removing listener %p", this, aListener)); if (GetOwnedStream()) { GetOwnedStream()->RemoveTrackListener(aListener, mTrackID); mTrackListeners.RemoveElement(aListener); } }
void MediaStreamTrack::AddDirectListener(DirectMediaStreamTrackListener *aListener) { LOG(LogLevel::Debug, ("MediaStreamTrack %p (%s) adding direct listener %p to " "stream %p, track %d", this, AsAudioStreamTrack() ? "audio" : "video", aListener, GetOwnedStream(), mTrackID)); MOZ_ASSERT(GetOwnedStream()); GetOwnedStream()->AddDirectTrackListener(aListener, mTrackID); mDirectTrackListeners.AppendElement(aListener); }
already_AddRefed<MediaInputPort> MediaStreamTrack::ForwardTrackContentsTo(ProcessedMediaStream* aStream) { MOZ_ASSERT(NS_IsMainThread()); MOZ_RELEASE_ASSERT(aStream); RefPtr<MediaInputPort> port = aStream->AllocateInputPort(GetOwnedStream(), mTrackID); return port.forget(); }
void MediaStreamTrack::SetEnabled(bool aEnabled) { LOG(LogLevel::Info, ("MediaStreamTrack %p %s", this, aEnabled ? "Enabled" : "Disabled")); mEnabled = aEnabled; GetOwnedStream()->SetTrackEnabled(mTrackID, aEnabled); }
bool MediaStreamTrack::IsForwardedThrough(MediaInputPort* aPort) { MOZ_ASSERT(NS_IsMainThread()); MOZ_ASSERT(aPort); if (!aPort) { return false; } return aPort->GetSource() == GetOwnedStream() && aPort->PassTrackThrough(mTrackID); }
void VideoStreamTrack::RemoveVideoOutput(MediaStreamVideoSink* aSink) { GetOwnedStream()->RemoveVideoOutput(aSink, mTrackID); }
MediaStreamGraphImpl* MediaStreamTrack::GraphImpl() { return GetOwnedStream()->GraphImpl(); }