rtp.js
Version:
RTP stack for Node.js and browser written in TypeScript
222 lines • 6.87 kB
TypeScript
import { ExtendedReport, type ExtendedReportDump } from './ExtendedReport';
/**
* Statistics Summary Extended Report dump.
*
* @category RTCP Extended Reports
*/
export type SsExtendedReportDump = ExtendedReportDump & {
ssrc: number;
beginSeq: number;
endSeq: number;
lostPackets?: number;
duplicatePackets?: number;
minJitter?: number;
maxJitter?: number;
meanJitter?: number;
devJitter?: number;
minTtlOrHl?: number;
maxTtlOrHl?: number;
meanTtlOrHl?: number;
devTtlOrHl?: number;
ttlOrHlMode?: 'ipv4-ttl' | 'ipv6-hop-limit';
};
/**
* Statistics Summary Extended Report.
*
* ```text
* 0 1 2 3
* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | BT=6 |L|D|J|ToH|rsvd.| block length = 9 |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | SSRC of source |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | begin_seq | end_seq |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | lost_packets |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | dup_packets |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | min_jitter |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | max_jitter |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | mean_jitter |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | dev_jitter |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | min_ttl_or_hl | max_ttl_or_hl |mean_ttl_or_hl | dev_ttl_or_hl |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* ```
*
* @category RTCP Extended Reports
*
* @see
* - [RFC 3611 section 4.6](https://datatracker.ietf.org/doc/html/rfc3611#section-4.6)
*/
export declare class SsExtendedReport extends ExtendedReport {
/**
* @param view - If given it will be parsed. Otherwise an empty Statistics
* Summary Extended Report will be created.
*/
constructor(view?: DataView);
/**
* Dump Statistics Summary Extended Report info.
*/
dump(): SsExtendedReportDump;
/**
* @inheritDoc
*/
getByteLength(): number;
/**
* @inheritDoc
*/
serialize(buffer?: ArrayBufferLike, byteOffset?: number): void;
/**
* @inheritDoc
*/
clone(buffer?: ArrayBufferLike, byteOffset?: number, serializationBuffer?: ArrayBufferLike, serializationByteOffset?: number): SsExtendedReport;
/**
* Get SSRC of source.
*/
getSsrc(): number;
/**
* Set SSRC of source.
*/
setSsrc(ssrc: number): void;
/**
* Get begin sequence number.
*/
getBeginSeq(): number;
/**
* Set begin sequence number.
*/
setBeginSeq(seq: number): void;
/**
* Get end sequence number.
*/
getEndSeq(): number;
/**
* Set end sequence number.
*/
setEndSeq(seq: number): void;
/**
* Get number of lost packets.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getLostPackets(): number | undefined;
/**
* Set number of lost packets.
*/
setLostPackets(lostPackets: number | undefined): void;
/**
* Get number of duplicate packets.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getDuplicatePackets(): number | undefined;
/**
* Set number of duplicate packets.
*/
setDuplicatePackets(duplicatePackets: number | undefined): void;
/**
* Get minimum jitter.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getMinJitter(): number | undefined;
/**
* Set minimum jitter.
*/
setMinJitter(minJitter: number | undefined): void;
/**
* Get maximum jitter.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getMaxJitter(): number | undefined;
/**
* Set maximum jitter.
*/
setMaxJitter(maxJitter: number | undefined): void;
/**
* Get mean jitter.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getMeanJitter(): number | undefined;
/**
* Set mean jitter.
*/
setMeanJitter(meanJitter: number | undefined): void;
/**
* Get dev jitter.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getDevJitter(): number | undefined;
/**
* Set dev jitter.
*/
setDevJitter(devJitter: number | undefined): void;
/**
* Get minimum TTL or Hop Limit value.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getMinTtlOrHopLimit(): number | undefined;
/**
* Set minimum TTL or Hop Limit value.
*/
setMinTtlOrHl(minTtlOrHl: number | undefined): void;
/**
* Get maximum TTL or Hop Limit value.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getMaxTtlOrHopLimit(): number | undefined;
/**
* Set maximum TTL or Hop Limit value.
*/
setMaxTtlOrHl(maxTtlOrHl: number | undefined): void;
/**
* Get mean TTL or Hop Limit value.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getMeanTtlOrHopLimit(): number | undefined;
/**
* Set mean TTL or Hop Limit value.
*/
setMeanTtlOrHl(meanTtlOrHl: number | undefined): void;
/**
* Get dev TTL or Hop Limit value.
*
* @remarks
* - It could be `undefined` if the field is unset in the report.
*/
getDevTtlOrHopLimit(): number | undefined;
/**
* Set dev TTL or Hop Limit value.
*/
setDevTtlOrHl(devTtlOrHl: number | undefined): void;
getTtlOrHopLimitMode(): 'ipv4-ttl' | 'ipv6-hop-limit' | undefined;
setTtlOrHlMode(mode: 'ipv4-ttl' | 'ipv6-hop-limit' | undefined): void;
private hasLostPacketsBit;
private setLostPacketsBit;
private hasDuplicatePacketsBit;
private setDuplicatePacketsBit;
private hasJitterBit;
private setJitterBit;
}
//# sourceMappingURL=SsExtendedReport.d.ts.map