MediaStream API, Mdeia Capture and Streams API 는 오디오와 비디오 데이터 스트리밍을 지원하는 WebRTC 관련 API다.
WebRTC
웹 애플리케이션과 사이트가 중간자 없이 브라우저 간에 오디오나 영상 미디어를 포착하고 마음대로 스트림할 뿐 아니라, 임의의 데이터도 교환할 수 있도록 하는 기술
stream
음성, 영상, 데이터 등의 작은 조각들이 하나의 줄기를 이루며 전송되는 데이터줄 이다.
MediaStream API는 비디오나 오디오 관련된 데이터를 나타내는 MediaStream 객체 조작에 기반한다.
MediaStream은 0개 이상의 MediaStreamTrack객체로 구성.
오디오나 비디오 트랙을 나타내며, MediaStreamTrack은 하나 이상의 채널을 가질수 있다.
MediaStream은 하나의 입력과 출력을 가진다.
호출 방식에 따라 Local MediaStream 과 Non-local MediaStream 으로 나뉜다.
Local MediaStream
Non-local MediaStream
<video>
또는 <audio>
)MediaDevices
는 카메라, 마이크, 공유 화면 등 현재 연결된 미디어 입력 장치로의 접근 방법을 제공 하는 인터페이스이다.constraints
는 MediaStream의 내용물을 제어하는데getUserMedia()
2.getDisplayMedia()
enumerateDevices()
onactive
: MediaStream 객체가 활성화 될 때 onaddtrack
: 새로운 MediaStreamTrack객체가 추가 될 때 oninactive
: MediaStream 객체가 비활성화 될 때 onremovetrack
: MediaStreamTrack객체가 제거 될 때 addTrack()
: MediaStreamTrack 객체를 추가clone()
: 새로운 아이디 값으로 MediaStream 객체를 복제getTrackById()
: track의 ID를 반환 한다. 객체가 없거나 ID값이 없을 경우 null을 반환 removeTrack()
: MediaStreamTrack을 삭제getTracks()
: 모든 MediaStreamTrack 리스트 반환getAudioTracks()
: 오디오 MediaStreamTrack 리스트 반환getVideoTracks()
: 비디오 MediaStreamTrack 리스트 반환출처