๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ํ”„๋ ˆ์ž„์›Œํฌ GStreamer 1.18.0 ์‚ฌ์šฉ ๊ฐ€๋Šฅ

XNUMX๋…„ ๋ฐ˜์˜ ๊ฐœ๋ฐœ ๋์— ์ผ์–ด๋‚ฌ๋‹ค ์„๋ฐฉํ•˜๋‹ค ์žˆ๋Š” GStreamer 1.18๋Š” ๋ฏธ๋””์–ด ํ”Œ๋ ˆ์ด์–ด ๋ฐ ์˜ค๋””์˜ค/๋น„๋””์˜ค ํŒŒ์ผ ๋ณ€ํ™˜๊ธฐ๋ถ€ํ„ฐ VoIP ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์ŠคํŠธ๋ฆฌ๋ฐ ์‹œ์Šคํ…œ์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ๊ด‘๋ฒ”์œ„ํ•œ ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด C๋กœ ์ž‘์„ฑ๋œ ํฌ๋กœ์Šค ํ”Œ๋žซํผ ๊ตฌ์„ฑ ์š”์†Œ ์„ธํŠธ์ž…๋‹ˆ๋‹ค. GStreamer ์ฝ”๋“œ๋Š” LGPLv2.1์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค. ๋™์‹œ์— gst-plugins-base 1.18, gst-plugins-good 1.18, gst-plugins-bad 1.18, gst-plugins-ugly 1.18 ํ”Œ๋Ÿฌ๊ทธ์ธ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ์™€ gst-libav 1.18 ๋ฐ”์ธ๋”ฉ ๋ฐ gst-rtsp-server 1.18 ์ŠคํŠธ๋ฆฌ๋ฐ ์„œ๋ฒ„. API ๋ฐ ABI ์ˆ˜์ค€์—์„œ ์ƒˆ ๋ฆด๋ฆฌ์Šค๋Š” 1.0 ๋ถ„๊ธฐ์™€ ์ด์ „ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค. ๋ฐ”์ด๋„ˆ๋ฆฌ ๋นŒ๋“œ๊ฐ€ ๊ณง ์ œ๊ณต๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ์ค€๋น„๋  ๊ฒƒ์ด๋‹ค Android, iOS, macOS ๋ฐ Windows์šฉ(Linux์—์„œ๋Š” ๋ฐฐํฌํŒ์˜ ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค).

์—ด์‡  ๊ฐœ๋Ÿ‰ GStreamer 1.18:

  • ์ƒˆ๋กœ์šด ๊ณ ๊ธ‰ API ์ œ์•ˆ GstํŠธ๋žœ์Šค์ฝ”๋”, ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ํŒŒ์ผ์„ ํ•œ ํ˜•์‹์—์„œ ๋‹ค๋ฅธ ํ˜•์‹์œผ๋กœ ํŠธ๋žœ์Šค์ฝ”๋”ฉํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ™•์žฅ๋œ ๋™์  ๋ฒ”์œ„(HDR, High Dynamic Range)๋ฅผ ํ†ตํ•ด ์ •๋ณด ํ‘œํ˜„ ๋ฐ ๋น„๋””์˜ค ์ฒ˜๋ฆฌ๊ฐ€ ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ฆ‰์‹œ ์žฌ์ƒ ์†๋„๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ฝ”๋ฑ ์„ธํŠธ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. AFD (ํ™œ์„ฑ ํ˜•์‹ ์„ค๋ช…) ๋ฐ ๋ง‰๋Œ€ ๋ฐ์ดํ„ฐ.
  • RTSP ์„œ๋ฒ„ ๋ฐ ํด๋ผ์ด์–ธํŠธ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŠธ๋ฆญ ๋ชจ๋“œ (์‚ฌ์ง„์„ ์ €์žฅํ•˜๋Š” ๋™์•ˆ ๋น ๋ฅธ ์Šคํฌ๋กค), ONVIF(Open Network Video Interface Forum) ์‚ฌ์–‘์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • Windows ํ”Œ๋žซํผ์—์„œ๋Š” DXVA2/Direct3D11 API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋””์˜ค ๋””์ฝ”๋”ฉ์˜ ํ•˜๋“œ์›จ์–ด ๊ฐ€์†์„ ๊ตฌํ˜„ํ•˜๊ณ  Microsoft Media Foundation์„ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋””์˜ค ์บก์ฒ˜ ๋ฐ ์ธ์ฝ”๋”ฉ ๊ฐ€์†์„ ์œ„ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. UWP(์œ ๋‹ˆ๋ฒ„์„ค Windows ํ”Œ๋žซํผ)์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Qt Quick ์žฅ๋ฉด์ด ์ˆ˜์‹  ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ ์œ„์— ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ๋„๋ก qmlgoverlay ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • JPEG ๋˜๋Š” PNG ํ˜•์‹์˜ ์ด๋ฏธ์ง€ ์‹œํ€€์Šค์—์„œ ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์„ ๋” ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก Imagesequencesrc ์š”์†Œ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • DASH ์ฝ˜ํ…์ธ ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด dashsink ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • DVB ์ž๋ง‰ ์ธ์ฝ”๋”ฉ์„ ์œ„ํ•œ dvbsubenc ์š”์†Œ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • SCTE-35๋ฅผ ์ง€์›ํ•˜๋Š” ๊ณ ์ • ๋น„ํŠธ ์ „์†ก๋ฅ  MPEG-TS ์ŠคํŠธ๋ฆผ์„ ์ผ€์ด๋ธ” ๋„คํŠธ์›Œํฌ์™€ ํ˜ธํ™˜๋˜๋Š” ํ˜•ํƒœ๋กœ ํŒจํ‚ค์ง•ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์†Œ์Šค ๋ฐ ์‹ฑํฌ ์š”์†Œ๊ฐ€ ํฌํ•จ๋œ ์ƒˆ๋กœ์šด RTMP ํด๋ผ์ด์–ธํŠธ ๊ตฌํ˜„์œผ๋กœ rtmp2๋ฅผ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • RTSP ์„œ๋ฒ„์—๋Š” ์†๋„์™€ ํฌ๊ธฐ ์กฐ์ •์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•œ ํ—ค๋” ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Intel์—์„œ ๊ฐœ๋ฐœํ•œ ์ธ์ฝ”๋” ์ฝ”๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” H.265 ๋น„๋””์˜ค ์ธ์ฝ”๋”์ธ svthevcenc๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. SVT-HEVC.
  • VA-API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ฉ์„ฑํ•˜๊ธฐ ์œ„ํ•œ vaapioverlay ์š”์†Œ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • rtpmanager์— TWCC(Google Transport-Wide Congestion Control) RTP ํ™•์žฅ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Splitmuxsink ๋ฐ Splitmuxsrc ์š”์†Œ๋Š” ์ด์ œ ๋ณด์กฐ(AUX) ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • "rtp://" URI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ RTP ์ŠคํŠธ๋ฆผ์„ ์ˆ˜์‹ ํ•˜๊ณ  ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ƒˆ๋กœ์šด ์š”์†Œ๊ฐ€ ๋„์ž…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ง€์—ฐ์— ๋ฏผ๊ฐํ•œ ์˜ค๋””์˜ค ๋ฐ ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์„ ์ „์†กํ•˜๊ธฐ ์œ„ํ•œ AVTP(Audio Video Transport Protocol) ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ํ”„๋กœํ•„ TR-06-1(RIST - ์•ˆ์ •์ ์ธ ์ธํ„ฐ๋„ท ์ŠคํŠธ๋ฆผ ์ „์†ก).
  • Raspberry Pi ๋ณด๋“œ์šฉ ์นด๋ฉ”๋ผ์—์„œ ๋น„๋””์˜ค๋ฅผ ์บก์ฒ˜ํ•˜๊ธฐ ์œ„ํ•ด rpicamsrc ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • GStreamer ํŽธ์ง‘ ์„œ๋น„์Šค์—๋Š” ์ค‘์ฒฉ๋œ ํƒ€์ž„๋ผ์ธ, ํด๋ฆฝ๋ณ„ ์†๋„ ์„ค์ • ๋ฐ OpenTimelineIO ํ˜•์‹ ์‚ฌ์šฉ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Autotools ๊ธฐ๋ฐ˜ ๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Meson์€ ์ด์ œ ์ฃผ์š” ์กฐ๋ฆฝ ๋„๊ตฌ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€