Android এ Chrome এর জন্য Google Cast

একটি কনফারেন্স প্রজেক্টরে একটি স্লাইড ডেক উপস্থাপন করতে আপনার ফোন থেকে একটি ওয়েব অ্যাপ ব্যবহার করতে সক্ষম হওয়ার কল্পনা করুন — বা ছবি শেয়ার করুন, গেম খেলুন বা টিভি স্ক্রিনে ভিডিও দেখুন — মোবাইল ওয়েব অ্যাপটিকে নিয়ামক হিসেবে ব্যবহার করুন৷

অ্যান্ড্রয়েডে Chrome-এর সর্বশেষ রিলিজ সাইটগুলিকে কাস্ট ওয়েব SDK ব্যবহার করে Google Cast ডিভাইসগুলিতে উপস্থাপন করার অনুমতি দেয়৷ এর মানে হল আপনি এখন Android বা iOS (বা এক্সটেনশন সহ ডেস্কটপে) Chrome-এর সাথে ওয়েব SDK ব্যবহার করে কাস্ট প্রেরক অ্যাপ তৈরি করতে পারবেন এবং সেইসাথে Android এবং iOS-এর জন্য নেটিভ কাস্ট SDK ব্যবহার করে এমন অ্যাপ তৈরি করতে পারবেন। (আগে, একটি Google Cast প্রেরক অ্যাপ্লিকেশনের জন্য Google Cast Chrome এক্সটেনশনের প্রয়োজন ছিল, তাই Android-এ শুধুমাত্র নেটিভ অ্যাপ থেকে কাস্ট ডিভাইসের সাথে ইন্টারঅ্যাক্ট করা সম্ভব ছিল।)

নীচে ওয়েব SDK ব্যবহার করে একটি কাস্ট প্রেরক অ্যাপ তৈরি করার একটি সংক্ষিপ্ত ভূমিকা রয়েছে৷ Chrome প্রেরক অ্যাপ ডেভেলপমেন্ট গাইড থেকে আরও ব্যাপক তথ্য পাওয়া যায়।

কাস্ট ব্যবহার করা সমস্ত পৃষ্ঠাগুলিতে অবশ্যই কাস্ট লাইব্রেরি অন্তর্ভুক্ত থাকতে হবে:

<script
  type="text/javascript"
  src="https://www.gstatic.com/cv/js/sender/v1/cast_sender.js"
></script>

API উপলব্ধতা পরিচালনা করতে একটি কলব্যাক যোগ করুন এবং কাস্ট সেশন শুরু করুন (এপিআই লোড হওয়ার আগে হ্যান্ডলার যোগ করতে ভুলবেন না!):

window['__onGCastApiAvailable'] = function (isLoaded, error) {
  if (isLoaded) {
    initializeCastApi();
  } else {
    console.log(error);
  }
};

function initializeCastApi() {
  var sessionRequest = new chrome.cast.SessionRequest(applicationID);
  var apiConfig = new chrome.cast.ApiConfig(
    sessionRequest,
    sessionListener,
    receiverListener
  );
  chrome.cast.initialize(apiConfig, onInitSuccess, onError);
}

আপনি যদি ডিফল্ট স্টাইলযুক্ত মিডিয়া রিসিভার অ্যাপ্লিকেশনটি ব্যবহার করেন এবং একটি রোল-আপনার-নিজের, নিবন্ধিত কাস্টম রিসিভার অ্যাপ্লিকেশনটি না করেন তবে আপনি এইভাবে একটি SessionRequest তৈরি করতে পারেন:

var sessionRequest = new chrome.cast.SessionRequest(chrome.cast.media.
  DEFAULT_MEDIA_RECEIVER_APP_ID);

এক বা একাধিক ডিভাইস উপলব্ধ হলে উপরের receiverListener কলব্যাকটি কার্যকর করা হয়:

function receiverListener(e) {
  if (e === chrome.cast.ReceiverAvailability.AVAILABLE) {
    // update UI
  }
}

আপনার ব্যবহারকারী কাস্ট আইকনে ক্লিক করলে একটি কাস্ট সেশন চালু করুন, ব্যবহারকারীর অভিজ্ঞতা নির্দেশিকা দ্বারা বাধ্যতামূলক:

chrome.cast.requestSession(onRequestSessionSuccess,
    onRequestSessionError);

function onRequestSessionSuccess(e) {
  session = e;
}

ব্যবহারকারীকে একটি ডিভাইস পিকার দিয়ে উপস্থাপন করা হবে:

কাস্ট ডিভাইস নির্বাচন ডায়ালগ।

যখন পৃষ্ঠাটি ইতিমধ্যেই সংযুক্ত থাকে এবং requestSession() কল করে তখন রুটের বিবরণ ডায়ালগ দেখানো হয় :

কাস্ট রুটের বিবরণ ডায়ালগ।

একবার আপনার একটি কাস্ট সেশন হয়ে গেলে, আপনি নির্বাচিত কাস্ট ডিভাইসের জন্য মিডিয়া লোড করতে পারেন এবং মিডিয়া প্লেব্যাক ইভেন্টগুলির জন্য একজন শ্রোতা যোগ করতে পারেন:

var mediaInfo = new chrome.cast.media.MediaInfo(mediaURL);
var request = new chrome.cast.media.LoadRequest(mediaInfo);
session.loadMedia(
  request,
  onMediaDiscovered.bind(this, 'loadMedia'),
  onMediaError
);

function onMediaDiscovered(how, media) {
  currentMedia = media;
  media.addUpdateListener(onMediaStatusUpdate);
}

currentMedia ভেরিয়েবলটি এখানে একটি chrome.cast.media.Media অবজেক্ট, যা প্লেব্যাক নিয়ন্ত্রণের জন্য ব্যবহার করা যেতে পারে:

function playMedia() {
  currentMedia.play(null, success, error);
}


    // ...

একটি প্লে/পজ বিজ্ঞপ্তি দেখানো হয় যখন মিডিয়া প্লে হয়:

প্লে/পজ বিজ্ঞপ্তি কাস্ট করুন।

যদি কোনো মিডিয়া বাজানো না হয়, কাস্টিং বন্ধ করতে বিজ্ঞপ্তিতে শুধুমাত্র একটি স্টপ বোতাম থাকে:

কাস্ট স্টপ বিজ্ঞপ্তি।

chrome.cast.ApiConfig() এর জন্য sessionListener কলব্যাক (উপরে দেখুন) আপনার অ্যাপকে একটি বিদ্যমান কাস্ট সেশনে যোগ দিতে বা পরিচালনা করতে সক্ষম করে:

function sessionListener(e) {
  session = e;
  if (session.media.length !== 0) {
    onMediaDiscovered('onRequestSessionSuccess', session.media[0]);
  }
}

যদি Android-এ Chrome আপনার ওয়েবসাইট থেকে মিডিয়া কাস্ট করার অনুমতি দেয় কিন্তু আপনি এই বৈশিষ্ট্যটি অক্ষম করতে চান যাতে ডিফল্ট কাস্টিং UI আপনার নিজের সাথে হস্তক্ষেপ না করে, তাহলে Chrome 49 এবং তার উপরে উপলব্ধ অক্ষম RemotePlayback বৈশিষ্ট্য ব্যবহার করুন:

<video disableRemotePlayback src="..."></video>

Alt প্রেরক এবং রিসিভার ডিভাইস

কাস্ট ওয়েব SDK গাইডে নমুনা অ্যাপগুলির লিঙ্ক রয়েছে এবং কাস্ট বৈশিষ্ট্যগুলি সম্পর্কে তথ্য যেমন সেশন পরিচালনা, পাঠ্য ট্র্যাক (সাবটাইটেল এবং ক্যাপশনগুলির জন্য) এবং স্থিতি আপডেট রয়েছে৷

বর্তমানে, আপনি কাস্ট ওয়েব SDK ব্যবহার করে শুধুমাত্র একটি কাস্ট রিসিভার অ্যাপ্লিকেশনে উপস্থাপন করতে পারেন, তবে একটি কাস্ট ডিভাইসে যেকোনো ওয়েব পৃষ্ঠা উপস্থাপন করতে কাস্ট SDK (ডেস্কটপ এবং Android এ) ছাড়া উপস্থাপনা API ব্যবহার করতে সক্ষম করার জন্য কাজ চলছে গুগলের সাথে নিবন্ধন ছাড়াই। ক্রোম-শুধু কাস্ট SDK-এর বিপরীতে, স্ট্যান্ডার্ড API ব্যবহার করলে পৃষ্ঠাটিকে API সমর্থনকারী অন্যান্য ব্যবহারকারী এজেন্ট এবং ডিভাইসগুলির সাথে কাজ করার অনুমতি দেবে।

প্রেজেন্টেশন এপিআই, রিমোট প্লেব্যাক এপিআই সহ, ওয়েব পৃষ্ঠাগুলিকে ওয়েব সামগ্রী প্রদর্শনের জন্য দ্বিতীয় স্ক্রীন ব্যবহার করতে সক্ষম করার জন্য দ্বিতীয় স্ক্রীন ওয়ার্কিং গ্রুপের প্রচেষ্টার অংশ।

একটি 'নিয়ন্ত্রণ' ডিভাইস এবং একটি 'ডিসপ্লে' ডিভাইস সহ বিভিন্ন ধরনের অ্যাপ্লিকেশন সক্ষম করতে এই APIগুলি অনলাইনে আসা ডিভাইসগুলির পরিসরের সুবিধা নেয় — সংযুক্ত ডিসপ্লেগুলি সহ যা ব্যবহারকারী এজেন্ট চালায়।

আমরা বাস্তবায়নের অগ্রগতি সম্পর্কে আপনাকে পোস্ট রাখব।

এই সময়ের মধ্যে, আপনি বাগ খুঁজে পেলে বা বৈশিষ্ট্যের অনুরোধ থাকলে দয়া করে আমাদের জানান: crbug.com/new

আরও খোঁজ