چارچوب چند رسانه ای GStreamer 1.16.0 در دسترس است

پس از بیش از یک سال توسعه صورت گرفت رهایی GStreamer 1.16، مجموعه ای متقابل پلتفرم از اجزای نوشته شده به زبان 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 binding و سرور جریان gst-rtsp-server 1.16. در سطح API و ABI، نسخه جدید با شاخه 1.0 سازگار است. بیلدهای باینری به زودی آماده خواهد شد برای Android، iOS، macOS و Windows (در لینوکس توصیه می شود از بسته های توزیع استفاده کنید).

کلید پیشرفت ها GStreamer 1.16:

  • پشته WebRTC پشتیبانی از کانال های داده P2P که با استفاده از پروتکل SCTP پیاده سازی شده اند و همچنین پشتیبانی از دسته برای ارسال انواع مختلف داده های چند رسانه ای در یک اتصال و توانایی کار با چندین سرور TURN (پسوند STUN برای دور زدن مترجم آدرس).
  • پشتیبانی از کدک ویدیویی AV1 در کانتینرهای Matroska (MKV) و QuickTime/MP4 اضافه شده است. تنظیمات اضافی AV1 پیاده سازی شده و تعداد فرمت های داده ورودی پشتیبانی شده توسط رمزگذار افزایش یافته است.
  • پشتیبانی اضافه شد زیرنویس بستهو همچنین توانایی شناسایی و استخراج انواع دیگر داده های یکپارچه از ویدئو ANC (داده های جانبی، اطلاعات اضافی، مانند صدا و ابرداده، که از طریق رابط های دیجیتال در قسمت های نمایش داده نشده خطوط اسکن منتقل می شود).
  • اضافه شدن پشتیبانی از صدای بدون کد (خام) بدون کانال های صوتی متناوب در حافظه (کانال های صوتی بدون درهم، چپ و راست در بلوک های جداگانه قرار می گیرند، به جای کانال های متناوب به شکل "چپ|راست|چپ|راست|چپ|راست" )
  • به مجموعه پایه پلاگین ها منتقل شد (gst-plugins-base) GstVideoAggregator (کلاس میکس ویدیوی خام)، آهنگساز (جایگزین بهبود یافته برای ویدئو میکسر) و عناصر میکسر OpenGL (glvideomixer، glmixerbin، glvideomixerelement، glstereomix، glmosaic)، که قبلا در مجموعه "gst-plugins-bad" قرار گرفته بودند.
  • جدید اضافه شد رژیم تناوب فیلد، که در آن هر بافر به عنوان یک فیلد جداگانه در ویدیوی درهم با جداسازی فیلدهای بالا و پایین در سطح پرچم های مرتبط با بافر پردازش می شود.
  • پشتیبانی از قالب WebM و رمزگذاری محتوا به بازکننده ظرف رسانه Matroska اضافه شده است.
  • یک عنصر جدید wpesrc اضافه شده است که به عنوان یک مرورگر مبتنی بر موتور کار می کند WebKit WPE (به شما امکان می دهد خروجی مرورگر را به عنوان منبع داده در نظر بگیرید)؛
  • Video4Linux پشتیبانی از رمزگذاری و رمزگشایی HEVC، رمزگذاری JPEG و واردات و صادرات dmabuf را بهبود می‌بخشد.
  • پشتیبانی از رمزگشایی VP8/VP9 با استفاده از پردازنده گرافیکی شتاب‌دار سخت‌افزاری NVIDIA به رمزگشای ویدیو اضافه شده است و پشتیبانی از رمزگذاری تسریع‌شده سخت‌افزاری H.265/HEVC به رمزگذار اضافه شده است.
  • بهبودهای متعددی در افزونه msdk انجام شده است که امکان استفاده از شتاب سخت افزاری برای رمزگذاری و رمزگشایی بر روی تراشه های اینتل (بر اساس Intel Media SDK) را فراهم می کند. این شامل پشتیبانی اضافه شده برای واردات/صادرات dmabuf، رمزگشایی VP9، رمزگذاری 10 بیتی HEVC، پس پردازش ویدئو و تغییر وضوح پویا است.
  • سیستم رندر زیرنویس ASS/SSA پشتیبانی از پردازش چندین زیرنویس را که در زمان قطع می‌شوند و به‌طور همزمان روی صفحه نمایش می‌دهند، اضافه کرده است.
  • پشتیبانی کامل از سیستم ساخت Meson ارائه شده است که اکنون برای ساخت GStreamer در همه پلتفرم ها توصیه می شود. حذف پشتیبانی Autotools در شعبه بعدی انتظار می رود.
  • ساختار اصلی GStreamer شامل اتصالات برای توسعه در زبان Rust و یک ماژول با پلاگین در Rust است.
  • بهینه سازی عملکرد انجام شده است.

منبع: opennet.ru

اضافه کردن نظر