Course Outline

1일차 – 미디어 디바이스 처리

1. navigator.permissions을 이용한 브라우저 권한

  • Access 하드웨어:
    • 웹캠
    • 마이크
  • 선택 권한:
    • 지리 위치
    • 알림
    • 클립보드(읽기/쓰기)
  • 권한 조회 및 상태
  • 제한 사항 및 브라우저 호환성
  • 실습 사례

2. navigator.mediaDevices로 미디어 디바이스 읽기

  • 디바이스 열거
  • 디바이스 변경 처리
  • 실습 사례

3. 크로스 브라우저 호환성

  • API 사용:
    • navigator.permissions.query()
    • navigator.mediaDevices.enumerateDevices()
    • getUserMedia()
  • 사파리 대안 전략
  • 실습 사례

4. 미디어 디바이스 처리

  • 디바이스 초기화: getUserMedia(constraints)
  • 미디어 디바이스 제약 조건
  • 미디어 스트림 시작 및 중지
  • 디바이스 변경 처리
  • 실습 사례

5. MediaRecorder로 디바이스 녹음

  • 스트리밍 및 녹음 시작/중지
  • .webm 파일 다운로드
  • 실시간 웨이브폼 미리보기
  • 실습 사례

선택 옵션:

  • ScriptProcessorNode로 .wav 형식 저장
  • 오디오 FFT 스펙트럼 시각화
  • 데시벨 단위 볼륨 막대
  • webkitSpeechRecognition으로 음성 인식

2일차 – 피어 커넥션

1. 신호 서버

  • 양방향 채널 옵션:
    • WebSocket
    • Socket.io
    • SignalR
  • 메시지 구조
  • 간소화된 WebRTC 클라이언트
  • 완전한 신호 흐름
  • 실습 사례

2. WebRTC로 비디오 채팅

  • 아키텍처: Node.js + ws
  • WebRTC 클라이언트: RTCPeerConnection
  • 로컬 E2E 테스트
  • 실습 사례

선택 기능:

  • 통화 종료 (연결 종료, 미디어 중지)
  • 그룹 통화 (다중 사용자 방)
  • 토큰 기반 간단한 인증

3. 화면 공유

  • getDisplayMedia() 사용
  • 아키텍처 및 옵션
  • 실습 사례

4. 세션 설명 프로토콜(SDP)

  • 소개 및 내용
  • SDP 읽고 해석하기
  • 코덱:
    • 오디오 및 비디오
    • 협상 및 제어
    • 대안 전략
  • 실습 사례

5. getStats()로 WebRTC Statistics

  • 통계 유형
  • 통계 해석 방법
  • 실시간 비트율/지터 차트
  • 품질 적응 전략
  • 실습 사례

 

Requirements

이 강좌는 비디오 채팅, 화면 공유, 또는 오디오 스트리밍과 같은 브라우저 기반 실시간 통신 기능을 구축하는 프론트엔드 및 풀 스택 개발자, 기술 아키텍트, 그리고 엔지니어를 위한 최적의 선택입니다. 참가자들은 JavaScript과 웹 기술에 대한 실무 지식과 Node.js 및 WebSocket 기반 통신에 대한 선택적 경험이 있어야 합니다.
 14 Hours

Number of participants


Price per participant

회원 평가 (5)

Upcoming Courses

Related Categories