UNPKG

@livepeer/core-web

Version:

Livepeer UI Kit's core web library, for adding reactive stores to video elements.

57 lines (53 loc) 2.09 kB
import { AccessControlParams } from '@livepeer/core/media'; /** * Client that uses WHEP to play back video over WebRTC. * * https://www.ietf.org/id/draft-murillo-whep-00.html */ declare const createNewWHEP: <TElement extends HTMLMediaElement>({ source, element, callbacks, accessControl, sdpTimeout, iceServers, }: { source: string; element: TElement; callbacks: { onConnected?: () => void; onPlaybackOffsetUpdated?: (d: number) => void; onError?: (data: Error) => void; onRedirect?: (url: string | null) => void; }; accessControl: AccessControlParams; sdpTimeout: number | null; iceServers?: RTCIceServer | RTCIceServer[]; }) => { destroy: () => void; }; type WebRTCConnectedPayload = { stream: MediaStream; videoTransceiver: RTCRtpTransceiver; audioTransceiver: RTCRtpTransceiver; }; /** * Client that uses WHIP to broadcast video over WebRTC. * * https://www.ietf.org/archive/id/draft-ietf-wish-whip-01.html */ declare const createNewWHIP: <TElement extends HTMLMediaElement>({ ingestUrl, element, callbacks, sdpTimeout, noIceGathering, iceServers, }: { ingestUrl: string; element: TElement; callbacks: { onRTCPeerConnection?: (payload: RTCPeerConnection) => void; onConnected?: () => void; onError?: (data: Error) => void; }; sdpTimeout: number | null; noIceGathering?: boolean; iceServers?: RTCIceServer | RTCIceServer[]; }) => { destroy: () => void; }; declare const attachMediaStreamToPeerConnection: ({ mediaStream, peerConnection, }: { mediaStream: MediaStream; peerConnection: RTCPeerConnection; }) => Promise<void>; declare const getUserMedia: (constraints?: MediaStreamConstraints) => Promise<MediaStream> | null; declare const getMediaDevices: () => MediaDevices | null; declare const getDisplayMedia: (options?: DisplayMediaStreamOptions) => Promise<MediaStream> | null; export { type WebRTCConnectedPayload, attachMediaStreamToPeerConnection, createNewWHEP, createNewWHIP, getDisplayMedia, getMediaDevices, getUserMedia };