13주차

13주차 기능 추가 및 수정 사항

v-talk : https://v-chat-ade97.web.app/

스마트 회의 플랫폼 PPT :
https://docs.google.com/presentation/d/e/2PACX-1vR_8DGx__69sUD0XpitjzplCLBCrt7hz5sJv4S5cWQhRymGQ3ggrmyBBeZsKR70Wg/pub?start=false&loop=false&delayms=3000

13주차 평가 목록

  • 업로드된 파일 확인 및 다운로드할 수 있게 구현하기
  • 화면공유 기능 구현 <Main Server 구현 X , Test Server 구현O>
  • 실제 환경 시연 영상

업로드된 파일 확인 및 다운로드할 수 있게 구현하기

파일 목록 보기 클릭 시 업로드되었던 파일 확인 및, 클릭 시 다운로드되게 만들었습니다.

화면공유 기능 구현 <Main Server 구현 X , Test Server 구현O>

화면 공유실시간으로 상대방에게 내 화면을 공유하는 기능입니다.

동작 방식 (기술적 개념)

1. 사용자 요청

  • 호스트가 화면 공유 시작 버튼을 누르면,
    브라우저의 화면 캡처 API (Screen Capture API / getDisplayMedia) 가 호출됩니다.
  • 이때 호스트는 어떤 화면/창/탭을 공유할지 선택합니다.

2. 미디어 스트림 생성

  • 호스트가 선택한 화면이 비디오 스트림(localVideo) 형태로 캡처됩니다.
  • 스트림Realtime database비디오 트랙으로 생성됩니다.

3. WebRTC P2P 전송

  • 생성된 비디오 스트림WebRTC(peer-to-peer) 를 통해 상대방에게 실시간으로 전송합니다.
  • WebRTC는 브라우저끼리 직접 통신하게 하여 지연이 거의 없는 고화질 화면 공유를 가능하게 합니다.

4. 상대방 수신

  • 상대방은 전송받은 스트림자신의 video(remote Video) 태그에 연결하여 채팅에 있는 보기 버튼을 눌러 화면 공유를 시청합니다.

5. 종료 방식

  • 호스트화면공유 종료 버튼을 누르면 종료가 되면서 상대방도 종료가 됩니다.
  • 이와 동시에 Realtime Database비디오 트랙삭제 됩니다.

6. 문제점

  • 상대방화면공유 종료 버튼을 누르면 호스트에 있는 화면공유가 종료 되는 문제

실제 환경 시연 영상

Be the first to comment

Leave a Reply

Your email address will not be published.


*