rtp.js
Version:
RTP stack for Node.js and browser written in TypeScript
73 lines • 2.64 kB
TypeScript
import { RtcpPacketType } from './RtcpPacket';
import { FeedbackPacket, RtpFeedbackMessageType, PsFeedbackMessageType, type FeedbackPacketDump } from './FeedbackPacket';
/**
* RTCP generic Feedback packet info.
*
* @category RTCP
*/
export type GenericFeedbackPacketDump = FeedbackPacketDump & {
bodyLength: number;
};
/**
* RTCP generic Feedback packet.
*
* ```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
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* |V=2|P| FMT=??? | PT=205|206 | length |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | SSRC of packet sender |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | SSRC of media source |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* : Feedback Control Information (FCI) :
* : :
* ```
*
* @category RTCP
*
* @see
* - [RFC 4585 section 6.1](https://datatracker.ietf.org/doc/html/rfc4585#section-6.1)
*/
export declare class GenericFeedbackPacket extends FeedbackPacket {
#private;
/**
* @param view - If given it will be parsed. Otherwise an empty RTCP generic
* Feedback packet will be created.
* @param packetType - If `view` is not given, this parameter must be given.
* @param messageType - If `view` is not given, this parameter must be given.
*
* @throws
* - If given `view` does not contain a valid RTCP generic Feedback packet.
*/
constructor(view?: DataView, packetType?: RtcpPacketType.RTPFB | RtcpPacketType.PSFB, messageType?: RtpFeedbackMessageType | PsFeedbackMessageType);
/**
* Dump RTCP generic Feedback packet info.
*/
dump(): GenericFeedbackPacketDump;
/**
* @inheritDoc
*/
getByteLength(): number;
/**
* @inheritDoc
*/
serialize(buffer?: ArrayBufferLike, byteOffset?: number): void;
/**
* @inheritDoc
*/
clone(buffer?: ArrayBufferLike, byteOffset?: number, serializationBuffer?: ArrayBufferLike, serializationByteOffset?: number): GenericFeedbackPacket;
/**
* Get the packet body.
*/
getBody(): DataView;
/**
* Set the packet body.
*
* @remarks
* - Serialization is needed after calling this method.
*/
setBody(view: DataView): void;
}
//# sourceMappingURL=GenericFeedbackPacket.d.ts.map