일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- frontend
- heroku
- graphQL
- ECMAScript
- pug
- backend
- API
- GRID
- Mongoose
- TypeScript
- Flutter
- nodejs
- CLONE
- form
- Component
- react
- clonecoding
- express
- NextJs
- CSS
- MongoDB
- Session
- JavaScript
- javscript
- node.js
- DART
- ES6
- HTML
- 자바스크립트
- 리액트
- Today
- Total
Enjoy Programming
Express- Getting User Media && recording video && download (포스트 작성예정) 본문
Express- Getting User Media && recording video && download (포스트 작성예정)
LEETAEEON 2021. 5. 18. 11:431. recording video
create videoRecorder.scss, videoRecorder.js && upload.pug modify
mediadevice mdn
https://developer.mozilla.org/ko/docs/Web/API/MediaDevices
MediaDevices - Web API | MDN
MediaDevices 인터페이스는 카메라, 마이크, 공유 화면 등 현재 연결된 미디어 입력 장치로의 접근 방법을 제공하는 인터페이스입니다. 다르게 말하자면, 미디어 데이터를 제공하는 모든 하드웨어
developer.mozilla.org
getVideo 함수를 만들어서 웹캠애 접근까지 함.
navigator.mediaDevices.getUserMedia()를 이용. 웹캠을 작동시키는 것 까지만 했음
try catch finally 구문~~ finally는 최종적으로 무조건 실행 해주는 스코프
pythondml try except finally와 같다. 근데.. finally가 있는걸 몰랐다 ㅡㅡ;; 이거 알았으면 다른거 할때 편햇을 텐데;;
지식의 부족이다.
실제 레코딩은 MediaReocder()를 통해 다룬다
startRecording함수를 통해 레코딩 데이터를 얻는다. steam정보를 전역변수로 설정해서 담아주고 다른 스코프에서 쓸수 있도록 해주자
https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder
MediaRecorder - Web APIs | MDN
The MediaRecorder interface of the MediaStream Recording API provides functionality to easily record media. It is created using the MediaRecorder() constructor.
developer.mozilla.org
데이터는 레코딩이 끝나야 얻을 수 있다.
전체 레코딩이 끝난 시점에서 전체 파일로 데이터를 알 수 있다는 것이다.
** Blob - blob은 0,1로 구성된 파일이다 (binary??)
전체 레코딩이 끝난 것으로 구성할 것이기 때문에 끝나는 시점에 데이터를 저장한다
stopRecording함수를 만들어서 비디오레코더를 스탑시키고 버튼에 이벤트를 다시 지정해줌
화면 끝내는 함수를 지정해서 스탑되면 웹캠도 꺼준다.
이제 handleVideoData함수를 정의 해주자. 녹화후 데이터를 받아서 링크를 생성후 링크에서 objectURl를 임의로 생성해
바로 다운로드 해준다. fake click으로 링크를 클릭하게 한다.
'JavaScript > Node.JS' 카테고리의 다른 글
Express - API adding a Comment - (정리 필요) (0) | 2021.05.20 |
---|---|
Express - API registering && view (ajax) - (포스팅 수정 예정) (0) | 2021.05.19 |
Webpack - creating video player &&&& (미완 - 작성예정 포스트들) (0) | 2021.05.18 |
Express- Protectiong Videos Routes && profile page view video list (0) | 2021.05.17 |
Express - Adding Creator to Video (0) | 2021.05.16 |