rtp.js
Version:
RTP stack for Node.js and browser written in TypeScript
77 lines • 2.58 kB
TypeScript
import { ExtendedReport, ExtendedReportType, type ExtendedReportDump } from './ExtendedReport';
/**
* Generic Extended Report dump.
*
* @category RTCP Extended Reports
*/
export type GenericExtendedReportDump = ExtendedReportDump;
/**
* Generic 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=??? | type-specific | block length |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | body |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* : ... :
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* ```
*
* @category RTCP Extended Reports
*
* @see
* - [RFC 3611 section 3](https://datatracker.ietf.org/doc/html/rfc3611#section-3)
*/
export declare class GenericExtendedReport extends ExtendedReport {
#private;
/**
* @param view - If given it will be parsed. Otherwise an empty generic
* Extended Report will be created.
* @param reportType - If `view` is not given, this parameter must be given.
*
* @throws
* - If given `view` does not contain a valid generic Extended Report.
*/
constructor(view?: DataView, reportType?: ExtendedReportType | number);
/**
* Dump generic Extended Report info.
*/
dump(): GenericExtendedReportDump;
/**
* @inheritDoc
*/
getByteLength(): number;
/**
* @inheritDoc
*/
serialize(buffer?: ArrayBufferLike, byteOffset?: number): void;
/**
* @inheritDoc
*/
clone(buffer?: ArrayBufferLike, byteOffset?: number, serializationBuffer?: ArrayBufferLike, serializationByteOffset?: number): GenericExtendedReport;
/**
* Get the value of the type specific field (second byte in the Extended
* Report common header).
*/
getTypeSpecific(): number;
/**
* Set the value of the type specific field (second byte in the Extended
* Report common header).
*/
setTypeSpecific(typeSpecific: number): void;
/**
* Get the report body.
*/
getBody(): DataView;
/**
* Set the report body.
*
* @remarks
* - Given `view` must have a byte length multiple of 4 bytes.
*/
setBody(view: DataView): void;
}
//# sourceMappingURL=GenericExtendedReport.d.ts.map