This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

Media Capture and Streams API (๋ฏธ๋””์–ด ์ŠคํŠธ๋ฆผ)

Media Streams API, ์งง๊ฒŒ๋Š” MediaStream API๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” Media Capture and Streams API๋Š” ์˜ค๋””์˜ค์™€ ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ ์ŠคํŠธ๋ฆฌ๋ฐ์„ ์ง€์›ํ•˜๋Š” WebRTC ๊ด€๋ จ API ์ž…๋‹ˆ๋‹ค. ์ด API๋Š” ๋ฏธ๋””์–ด ์ŠคํŠธ๋ฆผ๊ณผ ์ŠคํŠธ๋ฆผ์„ ๊ตฌ์„ฑํ•˜๋Š” ํŠธ๋ž™, ๋ฐ์ดํ„ฐ ํ˜•์‹๊ณผ ๊ด€๋ จ๋œ ์ œํ•œ์ธ์ž, ๋ฐ์ดํ„ฐ๋ฅผ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ๋•Œ์˜ ์„ฑ๊ณต๊ณผ ์˜ค๋ฅ˜ ์ฝœ๋ฐฑ, ๊ทธ๋ฆฌ๊ณ  ์ด ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ด๋ฒคํŠธ์— ๋Œ€ํ•œ ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋… ๋ฐ ์‚ฌ์šฉ๋ฒ•

์ด API๋Š” ์˜ค๋””์˜ค ํ˜น์€ ๋น„๋””์˜ค์™€ ๊ด€๋ จ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” MediaStream ๊ฐ์ฒด ์กฐ์ž‘์— ๊ธฐ๋ฐ˜ํ•ฉ๋‹ˆ๋‹ค.

MediaStream์€ 0๊ฐœ ์ด์ƒ์˜ MediaStreamTrack ๊ฐ์ฒด๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๊ฐ์ž ๋‹ค์–‘ํ•œ ์˜ค๋””์˜ค์™€ ๋น„๋””์˜ค ํŠธ๋ž™์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ MediaStreamTrack์€ ํ•˜๋‚˜ ์ด์ƒ์˜ ์ฑ„๋„์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฑ„๋„์€, ์˜ค๋””์˜ค๋กœ ์˜ˆ๋ฅผ ๋“ค๋ฉด ์Šคํ…Œ๋ ˆ์˜ค ์˜ค๋””์˜ค ํŠธ๋ž™์—์„œ์˜ "์™ผ์ชฝ"๊ณผ "์˜ค๋ฅธ์ชฝ"์ฒ˜๋Ÿผ, ๋ฏธ๋””์–ด ์ŠคํŠธ๋ฆผ์˜ ์ œ์ผ ์ž‘์€ ๋‹จ์œ„๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

MediaStream ๊ฐ์ฒด๋Š” ํ•˜๋‚˜์˜ ์ž…๋ ฅ๊ณผ ํ•˜๋‚˜์˜ ์ถœ๋ ฅ์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. getUserMedia()๋กœ ์ƒ์„ฑํ•œ MediaStream ๊ฐ์ฒด๋Š” "๋กœ์ปฌ" ๋ฏธ๋””์–ด ์ŠคํŠธ๋ฆผ์ด๋ผ๊ณ  ๋ถ€๋ฅด๋ฉฐ, ์‚ฌ์šฉ์ž์˜ ์นด๋ฉ”๋ผ์™€ ๋งˆ์ดํฌ ์ค‘ ํ•˜๋‚˜๋ฅผ ์ž…๋ ฅ ์ถœ์ฒ˜๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด <video>, <audio>์™€ ๊ฐ™์€ ๋ฏธ๋””์–ด ์š”์†Œ, ๋„คํŠธ์›Œํฌ์—์„œ ๋“ค์–ด์˜ค๋Š” ์ŠคํŠธ๋ฆผ, WebRTC RTCPeerConnection API๋กœ ํš๋“ํ•œ ์ŠคํŠธ๋ฆผ, Web Audio API MediaStreamAudioSourceNode๋กœ ์ƒ์„ฑํ•œ ์ŠคํŠธ๋ฆผ ๋“ฑ์€ ๋น„ ๋กœ์ปฌ MediaStream์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

MediaStream ๊ฐ์ฒด์˜ ์ถœ๋ ฅ์€ ์†Œ๋น„์ž(์ปจ์Šˆ๋จธ)๋กœ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ์†Œ๋น„์ž๋Š” <video>, <audio>์™€ ๊ฐ™์€ ๋ฏธ๋””์–ด ์š”์†Œ, WebRTC RTCPeerConnection API, Web Audio API MediaStreamAudioSourceNode๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์ธํ„ฐํŽ˜์ด์Šค

์•„๋ž˜์˜ ์ฐธ๊ณ  ๋ฌธ์„œ์—์„œ๋Š” Media Capture and Streams API๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค์— ๋Œ€ํ•œ ๊ธฐ์ดˆ์ ์ธ ์ง€์‹์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Media Capture and Streams API์˜ ์ดˆ๊ธฐ ๋ช…์„ธ๋Š” MediaStreamTrack์— ๊ธฐ๋ฐ˜ํ•œ ๋ณ„๋„์˜ AudioStreamTrack๊ณผ VideoStreamTrack ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํฌํ•จํ–ˆ์œผ๋ฉฐ, ๊ฐ์ž ์˜ค๋””์˜ค์™€ ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์„ ๋”ฐ๋กœ ๋‚˜ํƒ€๋ƒˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Ÿฐ ๊ตฌ๋ถ„์€ ๋” ์ด์ƒ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉฐ, ๋‘ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋“œ๋Š” MediaStreamTrack์„ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฒคํŠธ

๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜์„ฑ

api.MediaStream

api.MediaStreamTrack

api.MediaDevices

api.MediaDeviceInfo

api.InputDeviceInfo

api.CanvasCaptureMediaStreamTrack

๊ฐ™์ด ๋ณด๊ธฐ