UNPKG

@phenixrts/sdk

Version:
21 lines (20 loc) 1.26 kB
import DisposableList from '../../lang/DisposableList'; import Subject from '../../rx/Subject'; import { IStreamTrackTransform } from '../transformation/StreamTrackTransform'; import { IEncodedStreamSink } from '../transformation/EncodedStreamSink'; export interface IRTCEncodedFrame<T extends RTCEncodedVideoFrame | RTCEncodedAudioFrame> { track: MediaStreamTrack; chunk: T; } export default class InsertableStreams { static configureEncodedStreamPipeline(stream: MediaStream, receivers: RTCRtpReceiver[], encodedVideoStreamSink: IEncodedStreamSink<RTCEncodedVideoFrame> | undefined, encodedAudioStreamSink: IEncodedStreamSink<RTCEncodedAudioFrame> | undefined, videoCodec: string, audioCodec: string): { disposables: DisposableList; encodedVideoFrame: Subject<IRTCEncodedFrame<RTCEncodedVideoFrame> | null>; encodedAudioFrame: Subject<IRTCEncodedFrame<RTCEncodedAudioFrame> | null>; }; static configureInsertableStreamTransformation(stream: MediaStream, videoStreamTransformCallback: IStreamTrackTransform<VideoFrame> | undefined, audioStreamTransformCallback: IStreamTrackTransform<AudioData> | undefined): { transformedStream: MediaStream; disposables: DisposableList; }; constructor(); }