Cast SDK به کاربر اجازه میدهد تا محتوای صوتی و تصویری پخش جریانی را با استفاده از یک فرستنده انتخاب کند، و آن را در دستگاه دیگری به نام گیرنده پخش کند (یا به آن بفرستد) و در عین حال پخش را با استفاده از فرستنده کنترل میکند.
اصطلاح فرستنده به اپلیکیشنی اطلاق می شود که نقش کنترل کننده را برای جلسه Cast بازی می کند. یک فرستنده جلسه Cast را آغاز می کند و تعامل کاربر با محتوا را مدیریت می کند.
انواع مختلفی از فرستندهها، از جمله برنامههای تلفن همراه و برنامههای وب Google Chrome، و همچنین سطوح کنترل مجازی در دستگاههای Google Home با قابلیت لمس وجود دارد. کنترلهای رسانه در مرورگر وب کروم مانند خود دستیار Google به عنوان فرستنده عمل میکند.
اصطلاح Receiver به برنامهای اشاره دارد که روی دستگاهی با قابلیت Cast اجرا میشود که مسئول پاسخگویی به دستورات فرستنده و انتقال محتوای جریانی از یک سرویس پخش آنلاین به دستگاه دارای Cast است. نمونههایی از دستگاههای گیرنده با قابلیت Cast عبارتند از Chromecast، تلویزیونهای هوشمند، صفحهنمایشهای هوشمند، و بلندگوهای هوشمند.
Cast SDK همچنین از چندین فرستنده برای اتصال به یک جلسه Cast پشتیبانی می کند. برای مثال، یک فرستنده میتواند جلسهای را در یک گیرنده شروع کند و فرستنده دیگری میتواند به همان جلسه بپیوندد تا بازپخش را کنترل کند، محتوای جدید را بارگیری کند یا محتوای بیشتری را در صف قرار دهد.
اجزای برنامه و معماری
Google Cast از توسعه برنامه Sender برای Android ، iOS و پلتفرمهای وب پشتیبانیشده توسط Cast ، مانند Google Chrome، پشتیبانی میکند.
یک برنامه گیرنده بر روی دستگاهی با قابلیت Cast اجرا می شود که نمونه هایی از آن عبارتند از:
- یک Chromecast متصل به تلویزیون یا سیستم صوتی با کیفیت بالا.
- تلویزیونی با قابلیت Cast.
- یک صفحه نمایش هوشمند با قابلیت Cast.
- یک دستگاه Android با قابلیت Cast، مانند Android TV.
فرستنده با استفاده از پیام های پخش رسانه تعریف شده توسط SDK، پخش رسانه را در گیرنده کنترل می کند. اگر مورد استفاده از برنامه نیاز به ارسال دادههایی دارد که به طور رسمی در پیامهای پخش رسانه استاندارد تعریف نشدهاند، میتوانید از فیلد customData
ارائهشده توسط چندین نوع پیام برای ارسال دادههای جانبی استفاده کنید.
دو سناریو اصلی توسعه برنامه Cast وجود دارد:
- یک راه حل پایان به پایان مبتنی بر Cast. در این سناریو، توسعهدهنده باید هم برنامه فرستنده و هم دو برنامه گیرنده را بسازد: یک گیرنده Android TV و یک گیرنده وب (در ادامه در این مورد بیشتر توضیح دهید).
- یک برنامه فرستنده با قابلیت Cast که میتواند محتوا (یک صفحه یا یک جریان چندرسانهای) را به گیرنده پیشفرض Cast Google که به آن گیرنده رسانه پیشفرض گفته میشود، ارسال کند. در این سناریو، توسعهدهنده تنها نیاز به ساخت یک برنامه به نام Sender دارد. گیرنده پیش فرض رسانه برای یادگیری و سناریوهای پخش بسیار محدود مفید است. برای گیرنده هایی که به منطق تجاری سفارشی، اعتبارنامه، مدیریت حقوق یا تجزیه و تحلیل نیاز دارند، عملی نیست.
Google Cast SDK
Google Cast SDK از چندین کتابخانه Cast API تشکیل شده است. همراه با APIها، دو نوع مستند وجود دارد:
- راهنمای API که شما را در نحوه استفاده از APIها با کد نمونه که ویژگیهای Cast را نشان میدهد، راهنمایی میکند
- آموزش Codelab که به شما در فرآیند توسعه انواع خاصی از برنامههای Cast آموزش میدهد.
Cast API ها بر اساس پلتفرم و نوع برنامه Cast تقسیم می شوند. جدول 1 حاوی پیوندهایی به راهنماهای Cast APIهای مختلف است.
سکو | فرستنده | گیرنده |
---|---|---|
اندروید | برنامه های فرستنده اندروید | نمای کلی گیرنده Android TV |
وب | برنامه های فرستنده وب | نمای کلی گیرنده وب |
iOS | برنامه های فرستنده iOS | n/a |
انواع برنامه های فرستنده
برنامه های فرستنده می توانند در سه پلتفرم اجرا شوند:
- وب
- اندروید
- iOS
اگرچه انتخاب نوع فرستنده احتمالاً عمدتاً توسط پلتفرمهای فرستنده انجام میشود که قصد پشتیبانی از آنها را دارید، مهم است که تواناییها و محدودیتهای هر نوع فرستنده را بدانید ( جدول 3 را ببینید).
قابلیت | فرستنده اندروید | فرستنده iOS | فرستنده وب |
---|---|---|---|
وقفه های تبلیغاتی و تبلیغات همراه در یک جریان رسانه ای | |||
آهنگ های متنی سبک | |||
گروه بندی، سبک و فعال کردن آهنگ های رسانه ای | |||
پخش خودکار و صف (ویرایش، سفارش مجدد، به روز رسانی) | |||
کانال های سفارشی | |||
اقدامات سفارشی | |||
رابط کاربری کامل Cast، شامل کنترلر و مینی کنترلر | |||
قصد عضویت |
انواع اپلیکیشن های گیرنده
برنامههای گیرنده ارتباط بین برنامه فرستنده و دستگاه Cast را مدیریت میکنند. دو نوع اصلی گیرنده وجود دارد: گیرنده وب و گیرنده Android TV . از شما انتظار می رود حداقل یک گیرنده وب ارائه دهید، و تشویق می شود که یک گیرنده Android TV برای به حداکثر رساندن تجربه کاربر با برنامه خود ارائه دهید.
سه نوع گیرنده وب وجود دارد که هر کدام دارای مجموعه ای از کیفیت ها و قابلیت های متمایز هستند:
- گیرنده سفارشی ، که امکان منطق سفارشی، نام تجاری و اصلاح کنترل ها را فراهم می کند.
- گیرنده Styled Media Receiver که امکان برندسازی سفارشی را فراهم می کند.
- گیرنده پیش فرض که ابتدایی ترین نوع است. این اجازه هیچ گونه سفارشی سازی را نمی دهد و برای برنامه های تولیدی مناسب نیست.
علاوه بر قابلیتهای ارائهشده توسط گیرنده سفارشی، گیرنده تلویزیون Android Cast Connect را ارائه میکند، مجموعهای از قابلیتها که تجربهای بومی را برای کاربران شما فراهم میکند و بهطور یکپارچه Cast را با Android TV ترکیب میکند.
جدول 2 قابلیت های انواع مختلف گیرنده ها را نشان می دهد.
گیرنده Android TV | گیرنده سفارشی | گیرنده رسانه سبک (SMR) | گیرنده رسانه پیش فرض | |
---|---|---|---|---|
سکو | ||||
مبتنی بر اندروید (جاوا/کوتلین) | ||||
مبتنی بر وب (HTML5) | ||||
الزامات | ||||
باید ثبت شود | ||||
توانایی ها | ||||
پخش رسانه HLS و DASH | ||||
پشتیبانی از کنترل های لمسی | ||||
فرمانهای صوتی را از دستگاههای دارای «دستیار» کنترل میکند | ||||
سبک بصری و برندسازی قابل تنظیم | ||||
پیام های سفارشی را مدیریت می کند | ||||
Cast Connect |
انتخاب بین سه گزینه Web Receiver بستگی به نوع رسانه ای دارد که برنامه باید از آن پشتیبانی کند، میزان سفارشی سازی UI مورد نیاز و هر گونه نیاز منطقی سفارشی.
تعیین کنید که کدام نوع گیرنده وب را بسازید
به شرط اینکه برنامه شما بتواند با Cast یکپارچه شود، از دستورات زیر برای تعیین نوع گیرنده وب استفاده کنید:
یک گیرنده سفارشی ایجاد کنید اگر: | |||||
این برنامه به یک یا چند مورد از قابلیت های ویژه زیر نیاز دارد:
| یا |
|
یک گیرنده مدیا سبک ایجاد کنید اگر: | |||||
|
از گیرنده رسانه پیش فرض استفاده کنید اگر: | |||||
|