-
ํด๋ฆฌํ(Polyfill), ์ฌ(Shim) ์ด๋? + WebRTC์์ adapter.js๋ฅผ ์ฐ๋ ์ด์๊ณต๋ถ/๋ฉํฐ๋ฏธ๋์ด 2021. 7. 6. 23:26728x90
ํด๋ฆฌํ(Polyfill) ์ ์
- ์ต์ ๊ธฐ๋ฅ์ ์ง์ํ์ง ์๋ ์ด์ ๋ธ๋ผ์ฐ์ ์์ ์ต์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๊ฒ ๋์์ฃผ๋ ์ฝ๋ ๋ชจ์
- HTML5 ๋ฐ CSS3์ ์ค๋๋ ๋ธ๋ผ์ฐ์ ์ฌ์ด์ ๊ฐ๊ฒฉ์ ๋ฉ๊พธ๋ ์ญํ ์ ํจ
์ฌ(Shim) ์ ์
- ์ด๋ฏธ ์กด์ฌํ๋ ์ฝ๋์ ๋์์ ๋ฐ๋ก์ก๋ ๋ฐ ์ฌ์ฉํ๋ ์ฝ๋ ๋ชจ์
- ํด๋ฆฌํ์ด ๋ธ๋ผ์ฐ์ ๊ฐ ์ง์ํ์ง ์๋ ์ ๊ท API๋ฅผ ๊ตฌํํ๊ธฐ ์ํด ์กด์ฌํ๋ค๋ฉด ์ฌ์ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ์ ๊ท API์ ๋์ํ๊ธฐ ์ํด ์กด์ฌ
ํด๋ฆฌํ(Polyfill)๊ณผ ์ฌ(Shim)์ ๋ชฉ์
- ๋ธ๋ผ์ฐ์ ๊ฐ ๋ฌ๋ผ๋ ๊ฐ์ ๊ธฐ๋ฅ์ ํ ์ ์๊ฒ ๋ง๋๋ ๊ฒ์ด ๋ชฉ์
- ์ฆ, ์ํํ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ง์ ์ํด ์กด์ฌ
adapter.js ์ ์
- ์๋ก ๋ค๋ฅธ ์น ๋ธ๋ผ์ฐ์ ์์ ๊ตฌํ๋ WebRTC ์ฝ๋๋ค์ ํธํ์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ฃผ๋ JavaScript ์ฝ๋ ๋ชจ์
- ํด๋ฆฌํ(Polyfill)๊ณผ ์ฌ(Shim)์ ์ฌ์ฉํ์ฌ ๋ค์ํ ํ๋ซํผ์์ WebRTC ๊ตฌํ ๊ฐ์ ์ฐจ์ด์ ์ ์์ ์ค
WebRTC์์ adapter.js๊ฐ ํ์ํ ์ด์
- WebRTC๋ฅผ ์ง์ํ๋ ๋ธ๋ผ์ฐ์ ์ข ๋ฅ๊ฐ ๋ค์ํ๊ธฐ ๋๋ฌธ์ ๋ธ๋ผ์ฐ์ ์ข ๋ฅ์ ๋ฒ์ ์ ๋ฐ๋ผ ์ง์ํ๋ ๊ธฐ๋ฅ์ ์ ํ์ด ์๊ฑฐ๋ ๋ฌธ๋ฒ์ ์ฐจ์ด๊ฐ ์กด์ฌ
- adapter.js๋ฅผ ์ฌ์ฉํ๋ฉด ๋ธ๋ผ์ฐ์ ์ข ๋ฅ์ ๋ฒ์ ์ ๋ง๊ฒ ์ผ์ผ์ด ์ฝ๋๋ฅผ ์์ ํ ํ์๊ฐ ์์
์ฌ์ฉ๋ฒ
Github์ ์๋ Script URL ์ฐธ์กฐ
<script src="https://webrtc.github.io/adapter/adapter-latest.js"></script>
- ์ต์ ๋ฒ์ ์ adapter.js๋ฅผ ์ฐธ์กฐํด์ ์ฌ์ฉํ ์ ์์
- ํ์ง๋ง ์ฐธ์กฐ ์คํฌ๋ฆฝํธ ๋ด์ฉ์ด ๋ณ๊ฒฝ๋๋ฉด์ ์ด๋ ํ ๋ฌธ์ ๊ฐ ์๊ธธ์ง ๋ชจ๋ฅด๋ ๋ค์ด ๋ฐ์์ ์ฌ์ฉํ๋ ๊ฒ์ ๊ถ์ฅ
npm install ํด์ ์ฌ์ฉํ๊ธฐ
$ npm init -y $ npm install --save webrtc-adapter
- ์ ํํ ๋ฒ์ ์ package.json์ ๋ช ์ํด์ ๋ฒ์ ๋ณ๊ฒฝ ์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ๋ฐฉ์ง
const adapter = require("webrtc-adapter");
์ฐธ์กฐ
https://github.com/webrtc/adapter
https://developer.mozilla.org/ko/docs/Web/API/WebRTC_API/adapter.js
728x90'๊ณต๋ถ > ๋ฉํฐ๋ฏธ๋์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฉํฐ๋ฏธ๋์ด ์ฉ์ด ์ ๋ฆฌ (1) 2021.06.30 ์ค๋์ค ์ฝ๋ฑ(Audio Codec) ์ข ๋ฅ (0) 2020.11.02 ๋น๋์ค ์ฝ๋ฑ(Video Codec) ์ข ๋ฅ (0) 2020.11.02 ๋์์ ํ์ฅ์(Media Container Format) ์ข ๋ฅ (2) 2020.11.02 ๋์์ ํ์ฅ์์ ๋ํ ์ดํด - ์ปจํ ์ด๋(Container), ์ฝ๋ฑ(Codec) (0) 2020.11.02