@epicgames-ps/lib-pixelstreamingfrontend-ue5.3
Version:
Frontend library for Unreal Engine 5.3 Pixel Streaming
78 lines (77 loc) • 2.85 kB
TypeScript
import { InboundRTPStats, InboundVideoStats, InboundAudioStats } from './InboundRTPStats';
import { InboundTrackStats } from './InboundTrackStats';
import { DataChannelStats } from './DataChannelStats';
import { CandidateStat } from './CandidateStat';
import { CandidatePairStats } from './CandidatePairStats';
import { OutBoundRTPStats, OutBoundVideoStats } from './OutBoundRTPStats';
import { SessionStats } from './SessionStats';
import { StreamStats } from './StreamStats';
import { CodecStats } from './CodecStats';
export declare class AggregatedStats {
inboundVideoStats: InboundVideoStats;
inboundAudioStats: InboundAudioStats;
lastVideoStats: InboundVideoStats;
lastAudioStats: InboundAudioStats;
candidatePair: CandidatePairStats;
DataChannelStats: DataChannelStats;
localCandidates: Array<CandidateStat>;
remoteCandidates: Array<CandidateStat>;
outBoundVideoStats: OutBoundVideoStats;
sessionStats: SessionStats;
streamStats: StreamStats;
codecs: Map<string, string>;
constructor();
/**
* Gather all the information from the RTC Peer Connection Report
* @param rtcStatsReport - RTC Stats Report
*/
processStats(rtcStatsReport: RTCStatsReport): void;
/**
* Process stream stats data from webrtc
*
* @param stat - the stats coming in from webrtc
*/
handleStream(stat: StreamStats): void;
/**
* Process the Ice Candidate Pair Data
* @param stat - the stats coming in from ice candidates
*/
handleCandidatePair(stat: CandidatePairStats): void;
/**
* Process the Data Channel Data
* @param stat - the stats coming in from the data channel
*/
handleDataChannel(stat: DataChannelStats): void;
/**
* Process the Local Ice Candidate Data
* @param stat - local stats
*/
handleLocalCandidate(stat: CandidateStat): void;
/**
* Process the Remote Ice Candidate Data
* @param stat - ice candidate stats
*/
handleRemoteCandidate(stat: CandidateStat): void;
/**
* Process the Inbound RTP Audio and Video Data
* @param stat - inbound rtp stats
*/
handleInBoundRTP(stat: InboundRTPStats): void;
/**
* Process the outbound RTP Audio and Video Data
* @param stat - remote outbound stats
*/
handleRemoteOutBound(stat: OutBoundRTPStats): void;
/**
* Process the Inbound Video Track Data
* @param stat - video track stats
*/
handleTrack(stat: InboundTrackStats): void;
handleCodec(stat: CodecStats): void;
handleSessionStatistics(videoStartTime: number, inputController: boolean | null, videoEncoderAvgQP: number): void;
/**
* Check if a value coming in from our stats is actually a number
* @param value - the number to be checked
*/
isNumber(value: unknown): boolean;
}