Π‘Π»Π΅Π΄ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ Π³ΠΎΠ΄ΠΈΠ½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠ΅Π»ΠΈΠ· , Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C, ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΎΡ ΠΌΠ΅Π΄ΠΈΠ°ΠΏΠ»Π΅Π΅ΡΠΎΠ² ΠΈ ΠΊΠΎΠ½Π²Π΅ΡΡΠ΅ΡΠΎΠ² Π°ΡΠ΄ΠΈΠΎ/Π²ΠΈΠ΄Π΅ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄ΠΎ VoIP-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΈΡΡΠ΅ΠΌ ΠΏΠΎΡΠΎΠΊΠΎΠ²ΠΎΠ³ΠΎ Π²Π΅ΡΠ°Π½ΠΈΡ. ΠΠΎΠ΄ GStreamer ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ LGPLv2.1. ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² gst-plugins-base 1.16, gst-plugins-good 1.16, gst-plugins-bad 1.16, gst-plugins-ugly 1.16, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π²ΡΠ·ΠΊΠ° gst-libav 1.16 ΠΈ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠΎΡΠΎΠΊΠΎΠ²ΠΎΠ³ΠΎ Π²Π΅ΡΠ°Π½ΠΈΡ gst-rtsp-server 1.16 Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. ΠΠ° ΡΡΠΎΠ²Π½Π΅ API ΠΈ ABI Π½ΠΎΠ²ΡΠΉ Π²ΡΠΏΡΡΠΊ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ Π²Π΅ΡΠΊΠΎΠΉ 1.0. ΠΠΈΠ½Π°ΡΠ½ΡΠ΅ ΡΠ±ΠΎΡΠΊΠΈ Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π·Π° Android, iOS, macOS ΠΈ Windows (Π² Linux ΡΠ΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ°).
ΠΠ»ΡΡΠΎΠ²ΠΈ GStreamer 1.16:
- Π WebRTC Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° P2P ΠΊΠ°Π½Π°Π»ΠΎΠ² Π΄Π°Π½Π½ΡΡ , ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° SCTP, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ TURN (ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ STUN Π΄Π»Ρ ΠΎΠ±Ρ ΠΎΠ΄Π° NAT);
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΈΠ΄Π΅ΠΎΠΊΠΎΠ΄Π΅ΠΊΠ° AV1 Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ Matroska (MKV) ΠΈ QuickTime/MP4. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ AV1 ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΎ ΡΠΈΡΠ»ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠΎΠ² Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ ;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° , Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π²ΠΈΠ΄Π΅ΠΎ Π΄ΡΡΠ³ΠΈΡ Π²ΠΈΠ΄ΠΎΠ² ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ (Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΠΊ Π·Π²ΡΠΊ ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΠ°Ρ ΡΠ΅ΡΠ΅Π· ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π² Π½Π΅ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ ΡΠ°ΡΡΡΡ ΡΡΡΠΎΠΊ ΡΠ°Π·Π²ΡΡΡΠΊΠΈ);
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ (raw) Π·Π²ΡΠΊΠ° Π±Π΅Π· ΡΠ΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π·Π²ΡΠΊΠΎΠ²ΡΡ ΠΊΠ°Π½Π°Π»ΠΎΠ² Π² ΠΏΠ°ΠΌΡΡΠΈ (Non-Interleaved, Π»Π΅Π²ΡΠΉ ΠΈ ΠΏΡΠ°Π²ΡΠΉ Π·Π²ΡΠΊΠΎΠ²ΡΠ΅ ΠΊΠ°Π½Π°Π»Ρ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π±Π»ΠΎΠΊΠ°Ρ , Π²ΠΌΠ΅ΡΡΠΎ ΡΠ΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°Π½Π°Π»ΠΎΠ² Π² Π²ΠΈΠ΄Π΅ Β«LEFT|RIGHT|LEFT|RIGHT|LEFT|RIGHTΒ»);
- Π Π±Π°Π·ΠΎΠ²ΡΠΉ Π½Π°Π±ΠΎΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² (gst-plugins-base) ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½Ρ (ΠΊΠ»Π°ΡΡ Π΄Π»Ρ ΡΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΡ raw-Π²ΠΈΠ΄Π΅ΠΎ), (ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½Π½Π°Ρ Π·Π°ΠΌΠ΅Π½Π° videomixer) ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ OpenGL mixer (glvideomixer, glmixerbin, glvideomixerelement, glstereomix, glmosaic), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π½Π΅Π΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π»ΠΈΡΡ Π² Π½Π°Π±ΠΎΡΠ΅ Β«gst-plugins-badΒ»;
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² ΡΠ΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π±ΡΡΠ΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π² ΡΠ΅ΡΠ΅ΡΡΡΡΠΎΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ΠΎ Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΠΈ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅ΠΉ ΠΏΠΎ ΡΡΠΎΠ²Π½ΡΠΌ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΊ Π±ΡΡΠ΅ΡΡ ΡΠ»Π°Π³ΠΎΠ²;
- Π ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²ΡΠΈΠΊ ΠΌΠ΅Π΄ΠΈΠ°ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Matroska Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΎΡΠΌΠ°ΡΠ° WebM ΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ wpesrc, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΊΠ°ΠΊ Π±ΡΠ°ΡΠ·Π΅Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π²ΠΈΠΆΠΊΠ° (ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²ΡΠ²ΠΎΠ΄ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΊΠ°ΠΊ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ Π΄Π°Π½Π½ΡΡ );
- ΠΠ° Video4Linux Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° HEVC, ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° JPEG ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ ΠΈΠΌΠΏΠΎΡΡ ΠΈ Π΅ΠΊΡΠΏΠΎΡΡ Π½Π° dmabuf;
- Π Π΄Π΅ΠΊΠΎΠ΄Π΅ΡΠ° Π²ΠΈΠ΄Π΅ΠΎ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° GPU NVIDIA, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° VP8/VP9, Π° Π² ΠΊΠΎΠ΄Π΅ΡΠ° - ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΎ ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ H.265/HEVC;
- ΠΠ°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΡΠ° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½Π° ΠΏΠ»ΡΠ³ΠΈΠ½Π° msdk, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ΅Π΄ΡΡΠ²Π° Π·Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΈΠΏΠΎΠ²Π΅ Intel (ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° Intel Media SDK). ΠΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠΌΠΏΠΎΡΡ/Π΅ΠΊΡΠΏΠΎΡΡ Π½Π° dmabuf, Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° VP9, ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° 10-Π±ΠΈΡΠΎΠ²ΠΈ HEVC, ΠΏΠΎΡΡΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΡΠ°;
- Π ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ±ΡΠΈΡΡΠΈ ASS/SSA Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π°ΡΠΈ ΡΠ΅ ΡΡΠ±ΡΠΈΡΡΠΈ Ρ ΡΡΡ Π½ΠΎΡΠΎ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° Π΅ΠΊΡΠ°Π½Π°;
- ΠΡΠΈΠ³ΡΡΠ΅Π½Π° Π΅ ΠΏΡΠ»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Meson, ΠΊΠΎΡΡΠΎ ΡΠ΅Π³Π° Π΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π°Π½Π° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Π½Π° GStreamer Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ. ΠΡΠ°ΠΊΠ²Π° ΡΠ΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° Autotools Π² ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ;
- Π ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ GStreamer ΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΅Π·ΠΈΠΊΠ° Rust ΠΈ ΠΌΠΎΠ΄ΡΠ» Ρ ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ Π½Π° Rust;
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
