UNPKG

media-stream-library

Version:

Media stream library for Node & the Web.

61 lines (60 loc) 1.68 kB
import { Sdp } from '../../../utils/protocols/sdp'; import { Box, Container } from './isom'; interface MoofMetadata { trackId: number; timestamp: number; byteLength: number; } interface TrackData { lastTimestamp: number; baseMediaDecodeTime: number; defaultFrameDuration: number; clockrate: number; bitrate: number; framerate: number; cumulativeByteLength: number; cumulativeDuration: number; cumulativeFrames: number; } /** * Create boxes for a stream initiated by an sdp object * * @class BoxBuilder */ export declare class BoxBuilder { trackIdMap: { [key: number]: number; }; sequenceNumber: number; ntpPresentationTime: number; trackData: TrackData[]; videoTrackId?: number; constructor(); trak(settings: any): Container; /** * Creates a Moov box from the provided options. * @method moov * @param sdp - The session description protocol * @param date - The creation/modification time of the movie * @return Moov object */ moov(sdp: Sdp, date: any): Container; /** * Boxes that carry actual elementary stream fragment metadata + data. */ /** * Creates a moof box from the provided fragment metadata. * @method moof * @param metadata - Track ID, timestamp, bytelength * @return moof Container */ moof(metadata: MoofMetadata): Container; /** * Creates an mdat box containing the elementary stream data. * @param data - Elementary stream data * @return mdat Box */ mdat(data: Buffer): Box; setPresentationTime(trackId: number, ntpTimestamp?: number): void; } export {};