UNPKG

vban

Version:
52 lines (51 loc) 1.61 kB
import { Buffer } from 'node:buffer'; import { ESubProtocol } from './ESubProtocol.js'; import { IVBANHeaderCommon } from './IVBANHeaderCommon.js'; import { IVBANHeader } from './IVBANHeader.js'; export declare class VBANPacket { /** * the subProtocol of this packet * {@link ESubProtocol} */ subProtocol: ESubProtocol; /** * the name of the current stream . * Voicemeeter rely on it to allow a packet or not */ streamName: string; /** * Sample Rate for this stream */ sr: number; /** * frameCounter allow checking if you receive frame in order, and without losing them */ frameCounter: number; static readonly frameCounters: Map<string, number>; static getSampleRate(srIndex?: number): number; static parsePacketHeader(headersBuffer: Buffer): IVBANHeaderCommon; static parsePacket(packet: Buffer): { headers: IVBANHeaderCommon; data: Buffer; }; /** * Extract headers and data from UDPPacket, each Packet will continue the process * @deprecated */ static prepareFromUDPPacket(headersBuffer: Buffer, checkSR?: boolean): IVBANHeaderCommon; /** * common constructor */ constructor(headers: IVBANHeader); /** * Convert a VBANPacket to a UDP packet */ protected static convertToUDPPacket(headers: Omit<IVBANHeaderCommon, 'srIndex'>, data: Buffer, sampleRate?: number): Buffer; /** * EXPERIMENTAL - DO NOT USE * * @experimental */ static checkFrameCounter(headers: VBANPacket): void; toUDPPacket(): Buffer; }