123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220 |
- export type SDPBlob = string;
- export type SDPLine = string;
- export type SDPSection = string;
- export type SDPDirection = 'sendonly' | 'recvonly' | 'sendrecv' | 'inactive';
- export interface SDPIceCandidate {
- foundation: string;
- component: 'rtp' | 'rtcp' | number;
- protocol: 'tcp' | 'udp';
- priority: number;
- ip: string;
- address: string;
- port: number;
- type: 'host' | 'prflx' | 'srflx' | 'relay';
- relatedAddress?: string;
- relatedPort?: number;
- tcpType?: string;
- ufrag?: string;
- usernameFragment?: string;
- }
- export interface SDPIceParameters {
- iceLite?: boolean;
- usernameFragment: string;
- password: string;
- }
- export interface SDPCodecParameters {
- payloadType: number;
- preferredPayloadType?: number;
- name: string;
- clockRate: number;
- channels: number;
- numChannels?: number;
- maxptime?: number;
- }
- export interface SDPCodecAdditionalParameters {
- [key: string]: string;
- }
- export interface SDPHeaderExtension {
- id: number;
- direction?: SDPDirection;
- uri: string;
- atrributes: string | undefined;
- }
- export interface SDPFeedbackParameter {
- type: string;
- parameter: string;
- }
- export interface SDPFingerprint {
- algorithm: string;
- value: string;
- }
- export interface SDPDtlsParameters {
- role: string;
- fingerprints: SDPFingerprint[];
- }
- export interface SDPMediaSource {
- ssrc: number;
- attribute?: string;
- value?: string;
- }
- export interface SDPMediaSourceGroup {
- semantics: string;
- ssrcs: number[];
- }
- export interface SDPMediaStreamId {
- stream: string;
- track: string;
- }
- export interface SDPCodec extends SDPCodecParameters {
- payloadType: number;
- preferredPayloadType?: number;
- parameters?: SDPCodecAdditionalParameters;
- rtcpFeedback?: SDPFeedbackParameter[];
- }
- export interface SDPGroup {
- semantics: string;
- mids: string[];
- }
- export interface SDPMLine {
- kind: string;
- port?: number;
- protocol: string;
- fmt?: string;
- }
- export interface SDPOLine {
- username: string;
- sessionId: string;
- sessionVersion: number;
- netType: string;
- addressType: string;
- address: string;
- }
- export interface SDPRtcpParameters {
- cname?: string;
- ssrc?: number;
- reducedSize?: boolean;
- compound?: boolean;
- mux?: boolean;
- }
- export interface SDPEncodingParameters {
- ssrc: number;
- codecPayloadType?: number;
- rtx?: {
- ssrc: number;
- };
- fec?: {
- ssrc: number;
- mechanism: string;
- };
- }
- export interface SDPRtpCapabilities {
- codecs: SDPCodec[];
- headerExtensions: SDPHeaderExtension[];
- fecMechanisms: string[];
- rtcp?: SDPRtcpParameters[];
- }
- export interface SDPSctpDescription {
- port: number;
- protocol: string;
- maxMessageSize?: number;
- }
- export const localCname: string;
- export function generateIdentifier(): string;
- export function splitLines(blob: SDPBlob): SDPLine[];
- export function splitSections(blob: SDPBlob): SDPSection[];
- export function getDescription(blob: SDPBlob): SDPSection;
- export function getMediaSections(blob: SDPBlob): SDPSection[];
- export function matchPrefix(blob: SDPBlob, prefix: string): SDPLine[];
- export function parseCandidate(line: SDPLine): SDPIceCandidate;
- export function writeCandidate(candidate: SDPIceCandidate): SDPLine;
- export function parseIceOptions(line: SDPLine): string[];
- export function parseRtpMap(line: SDPLine): SDPCodecParameters;
- export function writeRtpMap(codec: SDPCodecParameters): SDPLine;
- export function parseExtmap(line: SDPLine): SDPHeaderExtension;
- export function writeExtmap(headerExtension: SDPHeaderExtension): SDPLine;
- export function parseFmtp(line: SDPLine): SDPCodecAdditionalParameters;
- export function writeFmtp(codec: SDPCodec): SDPLine;
- export function parseRtcpFb(line: SDPLine): SDPFeedbackParameter;
- export function writeRtcpFb(codec: SDPCodec): SDPLine[];
- export function parseSsrcMedia(line: SDPLine): SDPMediaSource;
- export function parseSsrcGroup(line: SDPLine): SDPMediaSourceGroup;
- export function getMid(mediaSection: SDPSection): string;
- export function parseFingerprint(line: SDPLine): SDPFingerprint;
- export function getDtlsParameters(
- mediaSection: SDPSection,
- session: SDPSection
- ): SDPDtlsParameters;
- export function writeDtlsParameters(params: SDPDtlsParameters, setupType: string): SDPLine;
- export function getIceParameters(
- mediaSection: SDPSection,
- session: SDPSection
- ): SDPIceParameters;
- export function writeIceParameters(params: SDPIceParameters): SDPLine;
- export function parseRtpParameters(mediaSection: SDPSection): SDPRtpCapabilities;
- export function writeRtpDescription(kind: string, caps: SDPRtpCapabilities): SDPSection;
- export function parseRtpEncodingParameters(mediaSection: SDPSection): SDPEncodingParameters[];
- export function parseRtcpParameters(mediaSection: SDPSection): SDPRtcpParameters;
- export function writeRtcpParameters(params: SDPRtcpParameters): SDPLine;
- export function parseMsid(mediaSection: SDPSection): SDPMediaStreamId;
- export function parseSctpDescription(mediaSection: SDPSection): SDPSctpDescription;
- export function writeSctpDescription(
- mediaSection: SDPMLine,
- desc: SDPSctpDescription
- ): SDPSection;
- export function generateSessionId(): string;
- export function writeSessionBoilerplate(
- sessId?: string,
- sessVer?: number,
- sessUser?: string
- ): SDPBlob;
- export function getDirection(mediaSection: SDPSection, sessionpart: SDPSection): SDPDirection;
- export function getKind(mediaSection: SDPSection): string;
- export function isRejected(mediaSection: SDPSection): boolean;
- export function parseMLine(mediaSection: SDPSection): SDPMLine;
- export function parseOLine(mediaSection: SDPSection): SDPOLine;
- export function isValidSDP(blob: SDPBlob): boolean;
|