ืžื•ืœื˜ื™ืžืขื“ื™ืึท ืคืจื™ื™ืžื•ื•ืขืจืง GStreamer 1.26.0 ื‘ื ื™ืžืฆื

ื ืึธืš ืึท ื™ืึธืจ ืคื•ืŸ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’, GStreamer 1.26 ืื™ื– ื‘ืืคืจื™ื™ื˜, ืึท ืงืจื™ื™ึทื–-ืคึผืœืึทื˜ืคืึธืจืžืข ื’ืึทื ื’ ืคื•ืŸ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ืคึฟืึทืจ ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื‘ืจื™ื™ื˜ ืงื™ื™ื˜ ืคื•ืŸ ืžื•ืœื˜ื™ืžืขื“ื™ืึท ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–, ืคึฟื•ืŸ ืžืขื“ื™ืข ืคึผืœื™ื™ึทืขืจืก ืื•ืŸ ืึทื•ื“ื™ืึธ / ื•ื•ื™ื“ืขื ื˜ืขืงืข ืงืึทื ื•ื•ืขืจื˜ืขืจื– ืฆื• ื•ื•ืึธื™ืคึผ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ืื•ืŸ ืกื˜ืจื™ืžื™ื ื’ ืกื™ืกื˜ืขืžืขืŸ. GStreamer ืงืึธื“ ืื™ื– ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ LGPLv2.1 ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ. ืกืขืคึผืขืจืึทื˜ืœื™, ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื•ื ื’ืขืŸ ืคื•ืŸ ื“ื™ ืคึผืœื•ื’ื™ื ืก gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ื“ื™ gst-libav binding ืื•ืŸ ื“ื™ ืกื˜ืจื™ืžื™ื ื’ ืกืขืจื•ื•ืขืจ gst-rtsp-server ื–ืขื ืขืŸ ื“ืขื•ื•ืขืœืึธืคึผืขื“. ืื•ื™ืฃ ื“ื™ API ืื•ืŸ ABI ืžื“ืจื’ื”, ื“ื™ ื ื™ื™ึทืข ืžืขืœื“ื•ื ื’ ืื™ื– ืงืึทืคึผื•ื™ืขืจ ืงืึทืžืคึผืึทื˜ืึทื‘ืึทืœ ืžื™ื˜ ื“ื™ 1.0 ืฆื•ื•ื™ื™ึทื’. ื‘ื™ื™ื ืขืจื™ ื‘ื•ื™ืขืŸ ื•ื•ืขื˜ ื‘ืึทืœื“ ื–ื™ื™ืŸ ืฆื•ื’ืขื’ืจื™ื™ื˜ ืคึฟืึทืจ ืึทื ื“ืจื•ื™ื“, ื™ืึธืก, ืžืึทืงืึธืก ืื•ืŸ ื•ื•ื™ื ื“ืึธื•ื– (ืื•ื™ืฃ ืœื™ื ื•ืงืก, ืขืก ืื™ื– ืจืขืงืึทืžืขื ื“ื™ื“ ืฆื• ื ื•ืฆืŸ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืคื•ืŸ ื“ื™ ืคืึทืจืฉืคึผืจื™ื™ื˜ื•ื ื’).

ืฉืœื™ืกืœ ื™ืžืคึผืจื•ื•ื•ืžืึทื ืฅ ืื™ืŸ GStreamer 1.26:

  • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืขื ืงืึธื“ืขืจ ืื•ืŸ ื“ื™ืงืึธื•ื“ืขืจ ืคึฟืึทืจ ื“ื™ VVC (Versatile Video Coding) ื•ื•ื™ื“ืขื ืคึฟืึธืจืžืึทื˜, ืื•ื™ืš ื‘ืืงืื ื˜ ื•ื•ื™ ื“ื™ H.266 ื•ื•ื™ื“ืขื ืงืึทืžืคึผืจืขืฉืึทืŸ ื ืึธืจืžืึทืœ, ื“ืขื•ื•ืขืœืึธืคึผืขื“ ืฆื•ื–ืึทืžืขืŸ ื“ื•ืจืš ื“ื™ MPEG (ISO/IEC JTC 1) ืื•ืŸ VCEG (ITU-T) ืืจื‘ืขื˜ืŸ ื’ืจื•ืคึผืขืก, ืžื™ื˜ ื“ื™ ืึธื ื˜ื™ื™ืœ ืคื•ืŸ ืงืึธืžืคึผืึทื ื™ืขืก ื•ื•ื™ ืขืคึผืœ, ืขืจื™ืงืกืึทืŸ, ื™ื ื˜ืขืœ, ื”ื•ืึทื•ื•ืขื™, ืžื™ื™ืงืจืึธืกืึธืคึฟื˜, ืงื•ื•ืึทืœืงืึทื ืื•ืŸ ืกืึธื ื™. H.266 ืจื™ืคึผืœื™ื™ืกื™ื– H.265 (HEVC) ืื•ืŸ ื’ื™ื˜ ื”ื•ื™ืš ืขืคืขืงื˜ื™ื•ื•ืงื™ื™ึทื˜ ืคื•ืŸ ื˜ืจืึทื ืกืžื™ืกื™ืข ืื•ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืคื•ืŸ ืึทืœืข ืคืึทืจืฉื˜ืขืœืŸ ืจืขื–ืึทืœื•ืฉืึทื ื– (ืคื•ืŸ ืกื“ ืื•ืŸ ื”ื“ ืฆื• 4K ืื•ืŸ 8K), ืฉื˜ื™ืฆื˜ ื•ื•ื™ื“ืขื ืžื™ื˜ ืขืงืกื˜ืขื ื“ืขื“ ื“ื™ื ืึทืžื™ืฉ ืงื™ื™ื˜ (HDR, High Dynamic Range) ืื•ืŸ ืคึผืึทื ืึธืจืึทืžื™ืง ื•ื•ื™ื“ืขื ืื™ืŸ 360-ื’ืจืึทื“ ืžืึธื“ืข.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืึทืŸ ืขื ืงืึธื“ืขืจ ืื•ืŸ ื“ื™ืงืึธื•ื“ืขืจ ืคึฟืึทืจ ื“ื™ LCEVC (ืœืึธื• ืงืึทืžืคึผืœืขืงืกื™ื˜ื™ ืขื ื›ืึทื ืกืžืึทื ื˜ ื•ื•ื™ื“ืขื ืงืึธื•ื“ื™ื ื’) ื•ื•ื™ื“ืขื ืงืึธื“ื™ืจื•ื ื’ ื ืึธืจืžืึทืœ, ื•ื•ืึธืก ื™ืžืคึผืœืึทืžืึทื ืฅ ืึทืŸ ื ืึธืš ืฉื™ื›ื˜ืข ืžื™ื˜ ืžืขื˜ืึทื“ืึทื˜ืึท ืฆื• ืคึฟืึทืจื‘ืขืกืขืจืŸ ื“ื™ ืงื•ื•ืึทืœื™ื˜ืขื˜ ืคื•ืŸ ื™ื’ื–ื™ืกื˜ื™ื ื’ H.26x ืื•ืŸ MP4/ISOBMFF ืงืึธื“ืขืงืก.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืึท ืขื ืงืึธื“ืขืจ ืื•ืŸ ื“ื™ืงืึธื•ื“ืขืจ ืคึฟืึทืจ ื“ื™ JPEG XS ื‘ื™ืœื“ ืคึฟืึธืจืžืึทื˜, ื•ื•ืึธืก ืื™ื– ืคึผืึทื–ื™ืฉืึทื ื“ ื•ื•ื™ ืึท ืœื™ื™ื˜ื•ื•ื™ื™ื˜ ื‘ื™ืœื“ ืงืึธื“ื™ืจื•ื ื’ ืกื™ืกื˜ืขื ื•ื•ืึธืก ื’ื™ื˜ ืžื™ื ื™ืžืึทืœ ื“ื™ืœื™ื™ื– ื‘ืขืฉืึทืก ืงืึธื“ื™ืจื•ื ื’ ืื•ืŸ ื“ื™ืงืึธื•ื“ื™ื ื’, ืื•ืŸ ืื™ื– ืคืึธื•ืงื™ืกื˜ ืื•ื™ืฃ ืึธืคึผื˜ื™ืžื™ื–ื™ื ื’ ื“ื™ ื˜ืจืึทื ืกืžื™ืกื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื–ื™ื™ืขืจ ื”ื•ื™ืš ืงื•ื•ืึทืœื™ื˜ืขื˜ ื‘ื™ืœื“ ืกื™ืงื•ื•ืึทื ืกื™ื– (ืึทืจื•ื™ืฃ ืฆื• 8 ืง). JPEG XS ืึทืœืึทื•ื– ืฆื• ื‘ืื˜ื™ื™ื˜ื™ืง ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ืคืืจืœืื ื’ื˜ ื‘ืึทื ื“ื•ื•ื™ื“ื˜ ืคื•ืŸ ืงืึธืžื•ื ื™ืงืึทืฆื™ืข ืงืึทื ืึทืœ ืึธืŸ ืงื™ื™ืŸ ืึธื ื•ื•ืขืจ ืคื•ืŸ ืงื•ื•ืึทืœื™ื˜ืขื˜ ื‘ืืžืขืจืงื˜ ืคึฟืึทืจ ื“ื™ ืžืขื ื˜ืฉืœืขืš ืื•ื™ื’.
  • ืฆื•ื’ืขืœื™ื™ื’ื˜ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืึทืจื™ื™ึทื ืœื™ื™ื’ืŸ ืื•ืŸ ืขืงืกื˜ืจืึทืงื˜ ืคึฟืึทืจืžืึทื›ื˜ ืงืึทืคึผืฉืึทื ื– ืคึฟืึทืจ H.264 ืื•ืŸ H.265 ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ.
  • ื™ืžืคึผืจื•ื•ื•ื“ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืึทื“ืึทืคึผื˜ื™ื•ื• ืกื˜ืจื™ืžื™ื ื’ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ HLS (HTTP ืœื™ื™ื•ื• ืกื˜ืจื™ืžื™ื ื’) ืื•ืŸ DASH (ื“ื™ื ืึทืžื™ืฉ ืึทื“ืึทืคึผื˜ื™ื•ื• ืกื˜ืจื™ืžื™ื ื’ ืื™ื‘ืขืจ ื”ื˜ื˜ืคึผ) ืคึผืจืึธื˜ืึธืงืึธืœืก. ืฆื•ื’ืขืœื™ื™ื’ื˜ ื ื™ื™ึทืข ืžืขื“ื™ืข ืกื™ื ืงืก hlscmafsink ืื•ืŸ hlssink3 ืคึฟืึทืจ ืึทื•ื˜ืคึผื•ืฅ CMAF (fMP4) ืื•ืŸ MPEG-TS ืคืจืึทื’ืžืึทื ืฅ, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ hlsmultivariantsink ืคึฟืึทืจ ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง ืจืขื–ื•ืœื˜ืึทื˜.
  • ื“ื™ MPEG-TS ืžื•ืœื˜ื™ืžืขื“ื™ืึท ืงืึทื ื˜ื™ื™ื ืขืจ ืคึผืึทืงืขืจ ืื•ืŸ ืึทื ืคึผืึทืงืงืขืจ ืื™ืฆื˜ ืฉื˜ื™ืฆื˜ H.266, JPEG XS, AV1, ืื•ืŸ VP9 ืงืึธื“ืขืงืก, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ SMPTE ST-2038 ืื•ืŸ ID3 ืžืขื˜ืึทื“ืึทื˜ืึท.
  • ืคึผืึทืงืงืขืจืก ืื•ืŸ ืึทื ืคึผืึทืงืขืจื– ืคึฟืึทืจ ื“ื™ H.4 / VVC ืงืึธื“ืขืง ื–ืขื ืขืŸ ืฆื•ื’ืขื’ืขื‘ืŸ ืฆื• ื“ื™ ืžืึทื˜ืจืึธืกืงืึท ืื•ืŸ ื™ืกืึธ ืžืคึผ 266 ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ. MP4 ืื™ืฆื˜ ื”ืื˜ ืึทื ืคึผืึทืงืขืจื– ืคึฟืึทืจ Hap ืื•ืŸ Lagarith ื•ื•ื™ื“ืขื ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ SMPTE 2038, ืึท ืกื™ืกื˜ืขื ืคึฟืึทืจ ืึทื˜ืึทื˜ืฉื™ื ื’ ื ืึธืš ื“ืึทื˜ืŸ ืื•ืŸ ืžืขื˜ืึทื“ืึทื˜ืึท ืฆื• ืžื•ืœื˜ื™ืžืขื“ื™ืึท ืงืึทื ื˜ื™ื™ื ืขืจื–.
  • ื™ืžืคึผืจื•ื•ื•ื“ ื™ื ื˜ืึทื’ืจื™ื™ืฉืึทืŸ ืžื™ื˜ ื“ื™ Vulkan graphics API. ื™ืงืกืคึผืึทื ื“ื™ื“ ืงื™ื™ืคึผืึทื‘ื™ืœืึทื˜ื™ื– ืคึฟืึทืจ ื–ื›ึผืจื•ืŸ ืคืึทืจื•ื•ืึทืœื˜ื•ื ื’, ืงืึธืœื™ืจ ืคึผืœืึทืฅ ืกืขืœืขืงืฆื™ืข, ืžื™ื˜ืœ ืคืึทืจื•ื•ืึทืœื˜ื•ื ื’ ืื•ืŸ ืคื•ืœ-ืคืึทืจืฉื˜ืขืœืŸ ืึธืคึผืขืจืึทืฆื™ืข. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ Vulkan ื™ืงืกื˜ืขื ืฉืึทื ื– ืฆื• ืคืึทืจื’ื™ื›ืขืจืŸ ื“ื™ืงืึธื•ื“ื™ื ื’ ืคื•ืŸ H264 ืื•ืŸ H265 ื•ื•ื™ื“ืขื. ื™ืžืคึผืจื•ื•ื•ื“ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ื“ื™ ืขื ืงืึธื“ืขืจ ื ื™ืฆืŸ Vulkan.
  • ื™ืžืคึผืจื•ื•ื•ื“ ื™ื ื˜ืึทื’ืจื™ื™ืฉืึทืŸ ืžื™ื˜ OpenGL. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื ืึธืš ืงืึธืœื™ืจ ืงืึทื ื•ื•ืขืจื–ืฉืึทืŸ ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ ืื•ืŸ ืคึผื™ืงืกืขืœ ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื™ืžืคึผืึธืจื˜ื™ื ื’ ืกื˜ืจื™ืžื– ื ื™ืฆืŸ DMABufs.
  • ื™ืžืคึผืจื•ื•ื•ื“ ื™ื ื˜ืึทื’ืจื™ื™ืฉืึทืŸ ืžื™ื˜ Qt6 ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืื•ืŸ QML.
  • ื™ืงืกืคึผืึทื ื“ื™ื“ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ืคึฟืึทืจ ื™ื ื˜ืึทื’ืจื™ื™ืฉืึทืŸ ืžื™ื˜ CUDA ืื•ืŸ NVIDIA Video Codec SDK. ืฆื•ื’ืขืœื™ื™ื’ื˜ AV1 ืคึฟืึธืจืžืึทื˜ ืขื ืงืึธื“ืขืจ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ NVCODEC API.
  • ื“ื™ gst-d3d12 ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“ ืžื™ื˜ ืขื ืงืึธื“ืขืจืก ืื•ืŸ ื“ื™ืงืึธื•ื“ืขืจ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ Direct3D 12 API.
  • ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ MIKEY ืฉืœื™ืกืœ ืคืึทืจื•ื•ืึทืœื˜ื•ื ื’ ืื•ื™ืฃ ื“ืขืจ ืงืœื™ืขื ื˜ ื–ื™ื™ึทื˜ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ ืฆื• ื“ื™ RTSP ืึธื ืœื™ื™ื’ืŸ.
  • ืึทื•ื“ื™ืึธืงืึธื ื•ื•ืขืจื˜ ืื™ืฆื˜ ืฉื˜ื™ืฆื˜ ืจื™ืขืจื™ื™ื ื“ื–ืฉื™ื ื’ ืึทื•ื“ื™ืึธ ื˜ืฉืึทื ืึทืœื–.
  • ื“ืขืจ ืคึผืœื•ื’ื™ืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ GTK3 ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืื™ื– ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜ ืฆื• ืฉื˜ื™ืฆืŸ OpenGL / WGL ืื•ื™ืฃ ื“ื™ Windows ืคึผืœืึทื˜ืคืึธืจืžืข.
  • ื“ืขืจ ื‘ื™ืœื“ืคืจืขืขื–ืข ืขืœืขืžืขื ื˜ ืื™ืฆื˜ ืฉื˜ื™ืฆื˜ JPEG ืื•ืŸ PNG ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ.
  • ื“ืขืจ ืคึผืขืš ืขืœืขืžืขื ื˜ ื™ืžืคึผืœืึทืžืึทื ืฅ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืฉืคึผื™ืœืŸ ืคืึทืจืงืขืจื˜.
  • ื“ื™ rtmp2 ืขืœืขืžืขื ื˜ ื”ืื˜ ื™ืžืคึผืจื•ื•ื•ื“ ืึธื˜ืขื ื˜ืึทืงื™ื™ืฉืึทืŸ ืžืขืงืึทื ื™ื–ืึทืžื– ืื•ื™ืฃ ืจื˜ืคึผ ืกืขืจื•ื•ืขืจืก. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืึธื˜ืขื ื˜ืึทืงื™ื™ืฉืึทืŸ ืื™ืŸ ืœื™ืžืขืœื™ื’ื”ื˜ CDN.
  • ื“ื™ VA-API ื™ื ื˜ืึทื’ืจื™ื™ืฉืึทืŸ ืคึผืœื•ื’ื™ืŸ ืื™ื– ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜ ืžื™ื˜ ืขืœืขืžืขื ื˜ืŸ ืฆื• ืคืึทืจื’ื™ื›ืขืจืŸ H.266 (VVC) ื“ื™ืงืึธื•ื“ื™ื ื’, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ VP8 ืื•ืŸ JPEG ืงืึธื“ื™ืจื•ื ื’.
  • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืขืœืขืžืขื ื˜ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืกื˜ืจื™ืžื– ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ QUIC ืคึผืจืึธื˜ืึธืงืึธืœ (ืจื•ื™ QUIC, RTP-over-QUIC ืื•ืŸ WebTransport).
  • ื“ื™ gst-plugins-rs ืฉื˜ืขืœืŸ ืื™ื– ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜ ืฆื• ืึทืจื™ื™ึทื ื ืขืžืขืŸ 23 ื ื™ื™ึท ื–ืื›ืŸ ืึธื“ืขืจ ืคึผืœื•ื’ื™ื ืก ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ Rust. ืคึผืœื•ื’ื™ื ืก ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ ืจื•ืกื˜ ืงืขื ืขืŸ ื•ื•ืขืจืŸ ื’ืขื ื•ืฆื˜ ืื™ืŸ ืžื’ื™ืœื” ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ ืงื™ื™ืŸ ืฉืคึผืจืึทืš, ืื•ืŸ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื–ื™ื™ ืื™ื– ืขื ืœืขืš ืฆื• ื ื™ืฆืŸ ืคึผืœื•ื’ื™ื ืก ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ C ืื•ืŸ C ++.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’