mirakurun
Version:
DVR Tuner Server for Japanese TV.
77 lines (76 loc) • 2.01 kB
TypeScript
import { Writable } from "stream";
import EventEmitter = require("eventemitter3");
import { StreamInfo } from "./common";
interface TSFilterOptions {
readonly output?: Writable;
readonly networkId?: number;
readonly serviceId?: number;
readonly eventId?: number;
readonly parseNIT?: boolean;
readonly parseSDT?: boolean;
readonly parseEIT?: boolean;
readonly tsmfRelTs?: number;
}
export default class TSFilter extends EventEmitter {
streamInfo: StreamInfo;
private _output;
private _provideServiceId;
private _provideEventId;
private _parseNIT;
private _parseSDT;
private _parseEIT;
private _targetNetworkId;
private _enableParseCDT;
private _enableParseDSMCC;
private _tsmfEnableTsmfSplit;
private _tsmfSlotCounter;
private _tsmfRelativeStreamNumber;
private _tsmfTsNumber;
private _parser;
private _epg;
private _epgReady;
private _epgState;
private _packet;
private _offset;
private _buffer;
private _patsec;
private _patCRC;
private _closed;
private _ready;
private _providePids;
private _parsePids;
private _tsid;
private _serviceIds;
private _parseServiceIds;
private _pmtPid;
private _pmtTimer;
private _streamTime;
private _essMap;
private _essEsPids;
private _dlDataMap;
private _logoDataTimer;
private _provideEventLastDetectedAt;
private _provideEventTimeout;
private _maxBufferBytesBeforeReady;
private _eventEndTimeout;
constructor(options: TSFilterOptions);
get closed(): boolean;
write(chunk: Buffer): void;
end(): void;
close(): void;
private _processPackets;
private _onPAT;
private _onPMT;
private _onNIT;
private _onSDT;
private _onEIT;
private _onTOT;
private _onCDT;
private _onDSMCC;
private _observeProvideEvent;
private _standbyLogoData;
private _updateEpgState;
private _clearEpgState;
private _close;
}
export {};