HLS در مورد مهاجرت بازیکنان Shaka

نمای کلی

کیت توسعه نرم‌افزار گیرنده وب کست (Cast Web Receiver SDK) از پخش محتوا با استفاده از چندین پروتکل پخش وب پشتیبانی می‌کند. بر اساس پروتکل مورد استفاده، SDK یک پخش‌کننده را برای مدیریت پخش محتوا بارگذاری می‌کند. در مورد محتوای HLS، کتابخانه پخش‌کننده رسانه ( MPL ) بارگذاری می‌شود. در مورد محتوای DASH، Shaka Player بارگذاری می‌شود.

در ادامه، تیم‌های مهندسی Cast SDK و Shaka Player در حال تجمیع تلاش‌های خود برای افزایش پشتیبانی از پخش محتوای HLS در Shaka Player هستند. MPL دیگر به‌روزرسانی‌های حیاتی دریافت نخواهد کرد . توصیه می‌کنیم برای پخش محتوای HLS برنامه خود، Shaka Player را انتخاب کنید.

مزایای Shaka Player

با تغییر بازیکنان، برنامه‌ها از مزایای زیر بهره‌مند می‌شوند:

  • جلسات استریمینگ قوی‌تر برای کاربران، با بهبودهایی در زمان بارگذاری و تأخیر.
  • ادامه‌ی پذیرش جدیدترین ویژگی‌های HLS.
  • افزایش وضوح در تحلیل ریشه‌ای مشکلات سازگاری پخش‌کننده با محتوا به دلیل ماهیت متن‌باز Shaka Player.
  • کدبیس پخش‌کننده متن‌باز به شرکا اجازه می‌دهد تا در پروژه پخش‌کننده Shaka مشارکت کنند .
  • کاهش قابل توجه در زمان رفع ویژگی‌ها و اشکالات تا تولید، زیرا آهنگ انتشار Shaka Player مکرر و مستقل از انتشار Web Receiver SDK است.
  • کنترل بیشتر بر محیط پخش ارائه شده توسط shakaVersion API.
  • افزایش پشتیبانی از پخش از سوی گوگل با تمرکز منابع مهندسی بر پخش HLS در Shaka Player، همانطور که در نقشه راه دیده شده است.

گاهشمار

کیت توسعه نرم‌افزار (SDK) گیرنده وب (Web Receiver SDK) به استفاده از Shaka Player به عنوان پخش‌کننده پیش‌فرض برای پخش محتوای HLS تغییر خواهد کرد. این کار به صورت مرحله‌ای انجام خواهد شد تا شرکا را در فرآیند مهاجرت راهنمایی کند.

فاز تاریخ شروع نمای کلی
۱ اکتبر '۲۲ کیت توسعه نرم‌افزاری گیرنده وب کست (Cast Web Receiver SDK) رابط‌های برنامه‌نویسی کاربردی (API) را برای پخش محتوای HLS در Shaka Player معرفی می‌کند .
۲ سه ماهه اول '26 کیت توسعه نرم‌افزاری گیرنده وب کست، پخش‌کننده پیش‌فرض را برای پخش محتوای HLS به Shaka Player تغییر می‌دهد .

تیم‌های مهندسی SDK گیرنده وب رویکردی مبتنی بر عملکرد را در پیش گرفته‌اند و تنها زمانی به مرحله بعدی می‌روند که عملکرد Shaka Player با عملکرد پایه MPL برابری کند. این تغییرات در گروه گوگل cast-sdk-announcements اعلام و در این راهنما به‌روزرسانی خواهند شد.

انتخاب کردن

با شروع از نسخه CAF 3.0.0105 ، یک پیکربندی در سطح برنامه برای انتخاب استفاده از Shaka Player برای پخش HLS وجود دارد. این نسخه همچنین یک API برای انتخاب از بین طیف پشتیبانی شده از نسخه‌های Shaka Player برای بارگیری معرفی می‌کند. این پرچم‌ها در کلاس CastReceiverOptions از طریق ویژگی‌های useShakaForHls و shakaVersion ارائه می‌شوند و هنگام شروع CastReceiverContext ارزیابی می‌شوند. هر برنامه‌ای که Shaka را برای HLS انتخاب می‌کند، باید نسخه Shaka Player را حداقل 4.15.12 تنظیم کند تا از آخرین پیشرفت‌های HLS بهره‌مند شود. برای انتخاب، قطعه کد زیر را دنبال کنید:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

اعتبارسنجی محتوا

شرکا باید قبل از انتخاب استفاده از Shaka Player در برنامه تولیدی خود، پخش محتوای خود را در Shaka Player تأیید کنند. توصیه می‌کنیم هر یک از تغییرات ذکر شده در زیر را در محتوای خود آزمایش کنید:

  • انواع پخش: زنده یا VOD
  • قالب‌های کانتینر: TS، MP4 یا استریم‌های ابتدایی
  • محتوای دارای ناپیوستگی یا تبلیغات جاسازی‌شده
  • پخش در انواع دستگاه‌های زیر: نمایشگرهای هوشمند، دانگل‌های گوگل کست، دستگاه‌های تلویزیون اندروید، تلویزیون‌های دارای گوگل کست، بلندگوهای هوشمند

اگر هرگونه خطا یا رفتار غیرمنتظره‌ای مشاهده کردید، یک باگ ثبت کنید . هنگامی که توانستید تأیید کنید که هیچ خطای پخش بحرانی در محتوای شما وجود ندارد، تغییرات را به محیط تولید خود اعمال کنید.

انصراف

SDK گیرنده وب طبق جدول زمانی به یک مدل انصراف برای پخش محتوای Shaka Player HLS منتقل می‌شود. مقدار پیش‌فرض ویژگی useShakaForHls از false به true تغییر می‌کند. در آن زمان، برنامه‌ها می‌توانند با تنظیم دستی این ویژگی روی false ، استفاده از MPL را برای پخش HLS انتخاب کنند. هنگامی که CastReceiverContext آغاز می‌شود، SDK گیرنده وب به جای Shaka Player، MPL را بارگذاری می‌کند. برای نحوه انصراف، به نمونه زیر مراجعه کنید:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

گزارش مشکلات

ما شرکای خود را تشویق می‌کنیم که هرگونه مشکلی را که هنگام پخش محتوای HLS پیدا می‌کنند، ثبت کنند. همانطور که گفته شد، MPL دیگر به‌روزرسانی‌های مهم را دریافت نخواهد کرد. در صورت بروز هرگونه مشکل در MPL، مراحل موجود در بخش «انتخاب» راهنما را دنبال کنید تا مطمئن شوید که تغییر به Shaka Player مشکل شما را برطرف می‌کند یا خیر. اگر مشکل هنوز پابرجاست یا اگر هنگام تغییر پخش‌کننده با مشکل دیگری مواجه شدید، مراحل زیر را دنبال کنید.

  1. برای حل مشکل، سعی کنید shakaVersion روی نسخه شاخه دیگری تنظیم کنید. برای مثال، اگر مشکل در شاخه 4.15 رخ داده است، سعی کنید آن را روی آخرین نسخه در شاخه دیگری تنظیم کنید. یادداشت‌های انتشار Shaka Player را بررسی کنید تا نسخه‌هایی با مرتبط‌ترین به‌روزرسانی‌ها را پیدا کنید. توجه داشته باشید که API shakaVersion دارای حداقل و حداکثر نسخه پشتیبانی شده است، همانطور که در مستندات مرجع به تفصیل شرح داده شده است. اگر مشاهده کردید که پسرفت وجود دارد، مشکل را در Shaka Player issuetracker گزارش دهید.
  2. پارامترهای پیکربندی پخش‌کننده را تغییر دهید. Shaka Player از طریق شیء PlayerConfiguration قابل پیکربندی است. Web Receiver SDK مجموعه‌ای از مقادیر پیش‌فرض را تعریف می‌کند و برنامه‌ها را قادر می‌سازد تا این پیکربندی را از طریق ویژگی shakaConfig در شیء PlaybackConfig تغییر دهند. این تنظیمات در زمان بارگذاری، زمانی که نمونه پخش‌کننده ایجاد می‌شود، ارزیابی می‌شوند. برای اطلاعات بیشتر به پیکربندی و گزینه‌های برنامه مراجعه کنید. مقادیر پیش‌فرض تعیین‌شده توسط Web Receiver SDK، مقادیر توصیه‌شده هستند.
  3. ببینید آیا مشکل در ردیاب مشکل Shaka Player یا ردیاب مشکل Cast گزارش شده است یا خیر. در مورد اشکال نظر دهید و اگر اطلاعات مرتبطی در مورد مشکل شما دارد، آن را نیز اضافه کنید.
  4. محتوای خود را در سایت آزمایشی Shaka Player آزمایش کنید. اگر متوجه شدید که مشکل در سایت آزمایشی برای محتوای شما تکرار می‌شود، یک اشکال در پروژه Shaka Player ثبت کنید .
  5. اگر مشکلی منحصر به Shaka Player در نقاط پایانی پخش دارید ، در ردیاب مشکل پخش، یک اشکال ثبت کنید .

سوالات متداول

تغییر بازیکن می‌تواند سوالات زیادی را ایجاد کند. در زیر می‌توانید پاسخ رایج‌ترین سوالات را بیابید تا در فرآیند مهاجرت به شما کمک کند.

آیا باید به Shaka Player مهاجرت کنم؟

ما شرکای خود را که از محتوای HLS استفاده می‌کنند، تشویق می‌کنیم که در اسرع وقت فرآیند مهاجرت را آغاز کنند. در نتیجه، برنامه شما یک تجربه پخش جریانی قوی‌تر را برای کاربرانتان فراهم می‌کند. مزایای بیشتر در بخش مزایای Shaka Player این راهنما ذکر شده است. شرکا باید تأیید کنند که برنامه‌هایشان با استفاده از Shaka Player به درستی کار می‌کنند تا از انتقال روان اطمینان حاصل شود. برخی از برنامه‌ها ممکن است در صورت انتقال Web Receiver SDK به مدل انصراف، در معرض خطر قرار گیرند، اگر شرکا از قبل تأیید نکنند که محتوای آنها به درستی در Shaka Player پخش می‌شود.

سطح تلاش مورد انتظار هنگام تعویض بازیکنان چقدر است؟

شرکا باید برنامه و محتوای خود را در یک محیط آزمایشی آزمایش کنند تا اطمینان حاصل شود که تجربه کاربری در مقایسه با HLS مشابه یا بهبود یافته است. برای انجام این کار، شرکا باید در یک محیط داخلی به این ویژگی بپیوندند و کاملاً آزمایش کنند که آیا محتوای آنها با استفاده از Shaka Player قابل پخش است یا خیر. برای جزئیات بیشتر در مورد اینکه روی چه جنبه‌هایی از محتوای خود تمرکز کنید، به اعتبارسنجی محتوا مراجعه کنید. پس از اعتبارسنجی، شرکا باید پرچم را برای انتخاب در محیط برنامه تولیدی خود اضافه کنند تا از مزایای ارائه شده توسط Shaka Player بهره‌مند شوند. در سطح بالا، حداقل تغییرات در توسعه نرم‌افزار و عمدتاً الزامات QA برای مهاجرت موفقیت‌آمیز شرکای ما وجود دارد.

برنامه من به زودی از HLS برای پخش محتوا استفاده خواهد کرد، چه کاری باید انجام دهم؟

ادغام‌های جدید باید امکان استفاده از Shaka Player را برای پخش فراهم کنند. برنامه شما در درازمدت بهتر پشتیبانی خواهد شد و همچنین از ویژگی‌های جدید HLS و بهبود عملکرد بهره‌مند خواهد شد. اگر ادغام جدید شما با مشکلاتی مواجه است، در اسرع وقت یک اشکال (باگ) ثبت کنید تا تیم مهندسی زمان کافی برای حل مشکل داشته باشد. اگر برنامه شما مهلت محدودی دارد، آن اطلاعات را در گزارش اشکال و همچنین تأثیر آن را برای اولویت‌بندی مناسب ذکر کنید. تیم مهندسی ما تلاش خواهد کرد تا راه‌حلی برای پشتیبانی کافی از کاربران شما ارائه دهد.

محتوا یا برنامه من با Shaka Player کار نمی‌کند، حالا چه کار کنم؟

شما باید یک اشکال را در پروژه Shaka Player یا پروژه Cast ثبت کنید (به بخش گزارش مشکلات مراجعه کنید). تیم مهندسی Cast SDK به طور فعال این ردیاب‌ها را رصد می‌کند و برای حل هرگونه مشکل موجود با شما همکاری خواهد کرد. هرچه این مشکلات زودتر تشخیص داده شوند، زمان بیشتری برای ارائه راه‌حل خواهند داشت.

MPL دیگر به‌روزرسانی‌های حیاتی را دریافت نمی‌کند، دقیقاً به چه معناست؟

از نظر تاریخی، MPL ویژگی‌های جدید HLS را پذیرفته و اشکالات عمده را از طریق به‌روزرسانی‌های مهم برطرف کرده است. اکنون که MPL دیگر آنها را دریافت نخواهد کرد، ویژگی‌های جدید HLS به پخش‌کننده اضافه نخواهد شد. به همین ترتیب، هرگونه مشکل گزارش‌شده برای پخش HLS در MPL در MPL برطرف نخواهد شد. این مشکلات باید با تغییر به Shaka Player برای پخش حل شوند. اگر مشکلات همچنان ادامه داشت، باید یک اشکال در مورد مشکل (یا مشکلات) مربوطه در Shaka Player ثبت شود. شرکا باید از استفاده از MPL خودداری کنند.

محتوای من از پروتکل Smooth Streaming استفاده می‌کند، این چه تاثیری بر برنامه من دارد؟

فایل‌های باینری MPL همچنان میزبانی شده و در دسترس برنامه گیرنده شما خواهند بود. با این حال، هرگونه درخواست ویژگی و رفع اشکال مربوط به Smooth Streaming پشتیبانی نخواهد شد زیرا مشخصات Smooth Streaming بیش از چهار سال است که به‌روزرسانی نشده است. توصیه می‌کنیم محتوای خود را به پروتکل استریمینگ DASH یا HLS منتقل کنید تا همچنان به‌روزرسانی‌های عملکرد و پشتیبانی از محتوای خود را دریافت کنید.

محتوای من از پروتکل‌های HLS یا Smooth Stream استفاده نمی‌کند، این موضوع چه تاثیری بر برنامه من دارد؟

اگر کتابخانه محتوای شما از هیچ یک از این پروتکل‌های استریمینگ استفاده نمی‌کند، این مهاجرت تاثیری بر شما نخواهد داشت. هیچ تغییری در برنامه شما لازم نیست.