public static IMediaStreamTrack ToNet(this RTCMediaStreamTrack self) { switch (self.Kind) { case Constants.Constants.AudioTrackKind: return(new AudioTrackNative((RTCAudioTrack)self)); case Constants.Constants.VideoTrackKind: return(new VideoTrackNative((RTCVideoTrack)self)); default: throw new ArgumentOutOfRangeException(nameof(self), self, null); } }
public static Core.Interfaces.IMediaStreamTrack ToNativePort(this RTCMediaStreamTrack platformNative) { switch (platformNative.Kind) { case Constants.WebRTCConstants.AudioTrackKind: return(new iOS.PlatformAudioTrack((RTCAudioTrack)platformNative)); case Constants.WebRTCConstants.VideoTrackKind: return(new iOS.PlatformVideoTrack((RTCVideoTrack)platformNative)); default: throw new ArgumentOutOfRangeException(nameof(platformNative), platformNative, null); } }
protected MediaStreamTrackNative(RTCMediaStreamTrack track) : base(track) { _track = track; }
public PlatformMediaStreamTrack(RTCMediaStreamTrack mediaStreamTrack) : base(mediaStreamTrack) => _mediaStreamTrack = mediaStreamTrack;