UNPKG

@davidcal/fec-raptorq

Version:

Node.js wrapper for RaptorQ forward error correction

54 lines (42 loc) 1.13 kB
// TypeScript declarations for RaptorQ Raw module export interface EncodeOptions { symbol_size?: number; num_repair_symbols?: number; num_source_blocks?: number; num_sub_blocks?: number; symbol_alignment?: number; } export interface EncodeInput { options?: EncodeOptions; data: Uint8Array; } export interface EncodingSymbol { sbn: number; esi: number; data: Uint8Array; } export interface EncodeResult { oti: Promise<Uint8Array>; encoding_symbols: AsyncIterable<EncodingSymbol>; } export interface DecodeUsage { output_format?: "combined" | "blocks"; } export interface DecodeInput { usage?: DecodeUsage; oti: Uint8Array; encoding_symbols: AsyncIterable<EncodingSymbol>; } export interface DecodedBlock { sbn: number; data: Uint8Array; } export interface DecodeBlocksResult { blocks: AsyncIterable<DecodedBlock>; } export type DecodeResult = Promise<Uint8Array> | DecodeBlocksResult; export interface RaptorqRaw { encode(input: EncodeInput): EncodeResult; decode(input: DecodeInput): DecodeResult; } export declare const raptorq_raw: RaptorqRaw;