অডিও ডিভাইস, অডিও ডিভাইস

অডিও ডিভাইসের জন্য Google Cast শুধুমাত্র অডিও প্লেব্যাক সমর্থন করে। এই নির্দেশিকাটি বর্ণনা করে যে কীভাবে কেবল অডিও ডিভাইসগুলির জন্য কাস্ট অ্যাপ্লিকেশনগুলিকে অপ্টিমাইজ করা যায় এবং মেমরি, সিপিইউ এবং নেটওয়ার্ক ব্যান্ডউইথ ব্যবহারের হ্রাসকৃত চাহিদাগুলির সুবিধা নেওয়া যায়৷

অডিওর জন্য Google Cast সমর্থন করে এমন একটি অ্যাপ অবশ্যই নিম্নলিখিতগুলি বিবেচনা করবে:

  • অডিও ডিভাইসের জন্য Google Cast ভিডিও বা গ্রাফিক্স প্রদর্শন করে না। যাইহোক, অনেক অডিও ডিভাইসে মেটাডেটা দেখানোর জন্য একটি ডিসপ্লে থাকে, যেমন প্লেব্যাক অবস্থা (বাজানো বা বিরতি দেওয়া) এবং অগ্রগতি। আপনার আবেদন শুধুমাত্র রিসিভারে এই ধরনের সমালোচনামূলক ব্যবহারকারীর তথ্য প্রদর্শন করা উচিত নয়; সমালোচনামূলক তথ্য, এবং বেশিরভাগ ইউজার ইন্টারফেস অবশ্যই প্রেরকের উপর দেখাতে হবে।
  • ওয়েব রিসিভার অ্যাপ্লিকেশানগুলি সঠিকভাবে চালানোর জন্য, অডিও ডিভাইসগুলির জন্য Google কাস্টকে এখনও গ্রাফিক্স রেন্ডার করতে হবে, যদিও সেগুলি প্রদর্শিত না হয়৷ যেহেতু ডিভাইসগুলি হার্ডওয়্যার-অ্যাক্সিলারেটেড গ্রাফিক্স ক্রিয়াকলাপগুলিকে সমর্থন করতে পারে না, তাই রিসিভার অ্যাপ্লিকেশনগুলিকে গ্রাফিক্স-নিবিড় ক্রিয়াকলাপগুলি যেমন রঙ গ্রেডিয়েন্ট, ঘূর্ণন, আলফা ব্লেন্ডিং এবং প্রতি সেকেন্ডে একাধিকবার অগ্রগতি বারের মতো বড় অবজেক্টগুলি পুনরায় অঙ্কন করা এড়ানো উচিত।
  • অডিও ডিভাইসের জন্য Google Cast শুধুমাত্র Widevine for Digital Right Management (DRM) সুরক্ষিত সামগ্রী সমর্থন করে৷
  • অডিও ডিভাইসের জন্য বেশিরভাগ Google কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশনটি ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে (উদাহরণস্বরূপ, একটি স্পিকার), শুধুমাত্র টিভিতে অডিও উত্স ইনপুটের ভলিউম নয়, যেমন একটি Chromecast ডিভাইসের সাথে।
  • প্রেরক ডিভাইসের সাথে প্লেব্যাক নিয়ন্ত্রণ করা ছাড়াও (উদাহরণস্বরূপ, একটি ফোন), অ্যাপটিকে ডিভাইসের নিজস্ব কন্ট্রোলার যেমন রিমোট কন্ট্রোল, অন-ডিভাইস বোতাম বা একটি বহিরাগত রিমোট অ্যাপ্লিকেশন দিয়ে প্লেব্যাক নিয়ন্ত্রণের জন্য প্রদান করতে হতে পারে।
  • অডিও ডিভাইসের জন্য একটি Google Cast একটি ছোট LCD স্ক্রীন, HDMI আউটপুট (সাউন্ডবার বা অডিও-ভিডিও রিসিভারের জন্য), বা একটি বাহ্যিক দূরবর্তী অ্যাপ্লিকেশন, নির্দিষ্ট ডিভাইস UI এর উপর নির্ভর করে সামগ্রী মেটাডেটা প্রদর্শন সমর্থন করতে পারে৷

উন্নয়ন

অডিওর জন্য Google Cast সমর্থন করার জন্য একটি কাস্ট অ্যাপ্লিকেশন বিকাশের প্রথম ধাপ হল অডিও-ভিডিওর জন্য একটি কাস্ট অ্যাপ্লিকেশন বিকাশ করা এবং এটি একটি Chromecast এ চলে তা নিশ্চিত করা৷ এই দস্তাবেজটি অনুমান করে যে আপনি এমন একটি অ্যাপ তৈরি করেছেন এবং পরীক্ষা করেছেন৷

একটি অ্যাপ অডিও-ভিডিও এবং অডিও-শুধু ডিভাইস উভয়ই সমর্থন করতে পারে। এটি কখন একটি বনাম অন্যটিতে কাস্ট করা হয় তা জানতে হবে এবং প্রদত্ত পরিস্থিতিতে সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করার জন্য ব্যবস্থা গ্রহণ করতে হবে।

উদাহরণস্বরূপ, দ্বৈত ভিডিও এবং অডিও অ্যাপগুলি (যেমন স্থানীয়/এনএএস ফাইল প্লেব্যাক অ্যাপ্লিকেশনগুলি) অডিও ফাইলগুলি চালানো সমর্থন করার জন্য শুধুমাত্র অডিও ডিভাইসগুলিতে কাস্টিং সক্ষম করা উচিত, তবে অ্যাপটি ব্যবহারকারীকে শুধুমাত্র অডিও ডিভাইসে ভিডিও ফাইল পাঠানোর অনুমতি দেবে না। অ্যাপটি ডিভাইসের জন্য উপযুক্ত বিষয়বস্তু নির্ধারণ করতে নীচে বর্ণিত প্রেরকদের জন্য ডিভাইস ক্ষমতা API ব্যবহার করতে পারে।

অডিওর জন্য Google Cast সমর্থন করতে, আপনার অ্যাপটিকে অবশ্যই নিম্নলিখিতগুলি করতে হবে:

  • শুধুমাত্র-অডিও সমর্থন করুন: স্ট্রিমিং সঙ্গীত এবং অডিও ফাইল, রেডিও, ইত্যাদি। ওয়েব রিসিভার অ্যাপে স্ট্রিম করা মিডিয়া অবশ্যই একটি ভিডিও স্ট্রিম হতে হবে না। এছাড়াও, অ্যাপ্লিকেশন লঞ্চের সময় এবং মেমরি ব্যবহার উন্নত করতে স্ট্রিমিং গ্রাফিক্স এবং চিত্রগুলি এড়িয়ে চলুন। নীচে মেমরি ব্যবহারের নির্দেশিকা দেখুন।

  • অডিও ডিভাইসের জন্য কাস্টের পাশাপাশি নিয়মিত Chromecast-এ প্রত্যাশিতভাবে চালান।

ডিভাইসের ক্ষমতা

আপনার অ্যাপ্লিকেশানটি ডিভাইসের সক্ষমতা APIগুলির গুণে, ডিভাইস থেকে পাওয়া যায় বা প্রেরক বা রিসিভার APIগুলির মাধ্যমে এটি একটি অডিও-অডিও ডিভাইসে চলছে কিনা তা জানতে পারে৷

ডিভাইস HTTP হেডার

অ্যাপ্লিকেশন লঞ্চের সময় কাস্ট ডিভাইস দ্বারা প্রদত্ত CAST-DEVICE-CAPABILITIES HTTP শিরোনামটি ডিভাইসের ক্ষমতা বর্ণনা করে৷ ডিভাইসটি ওয়েব রিসিভার অ্যাপ হোস্ট করা সার্ভারে এই হেডার সহ একটি অনুরোধ পাঠায়। শুধুমাত্র-অডিও ডিভাইসের শিরোনামটি CAST-DEVICE-CAPABILITIES: {"display_supported":false}

যখন আপনার সার্ভার ডিভাইস থেকে অনুরোধ গ্রহণ করে, তখন আপনি এই শিরোনামের তথ্য ব্যবহার করে অনুরোধটিকে ওয়েব রিসিভার অ্যাপে রিডাইরেক্ট করতে পারেন যা অডিও ডিভাইসের জন্য অপ্টিমাইজ করা হয়েছে।

ওয়েব রিসিভার API

যখন ওয়েব রিসিভার অ্যাপটি লোড হয় তখন আপনি CastReceiverManager.getDeviceCapabilities() কল করে একই ডিভাইসের ক্ষমতার বস্তু পেতে পারেন।

আরও তথ্যের জন্য ডিভাইসের ক্ষমতা দেখুন।

প্রেরক API

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

মেমরি ব্যবহারের নির্দেশিকা

অডিও ডিভাইসে চলমান ওয়েব রিসিভার অ্যাপগুলিকে অবশ্যই মেমরির ব্যবহার নিম্নরূপ পরিচালনা করতে হবে:

  • মেমরি ফুটপ্রিন্ট কমাতে এবং প্লেব্যাক শুরু না হওয়া পর্যন্ত সময় কমাতে কোনো ছবি বা গ্রাফিক্স সম্পদ ডাউনলোড বা ব্যবহার করা এড়িয়ে চলুন।
  • মিডিয়া সোর্স এক্সটেনশন (MSE) ব্যবহার করার সময়, অ্যাপ্লিকেশনগুলিকে অবশ্যই স্ট্রীম বাফার 2MB পর্যন্ত সীমাবদ্ধ করতে হবে। মিডিয়া প্লেয়ার লাইব্রেরি (MPL) ব্যবহার করলে, অ্যাপ্লিকেশনটির স্ট্রীম বাফার আকার ইতিমধ্যে MPL দ্বারা সংজ্ঞায়িত করা হয়েছে।
  • HTMLMediaElement ব্যবহার করার সময়, অ্যাপ্লিকেশনটির স্ট্রীম বাফার আকার স্ট্রীম হারের উপর ভিত্তি করে Chrome দ্বারা সংজ্ঞায়িত করা হয়। অডিও বিটরেট প্রতি সেকেন্ডে 2 মেগাবিটে সীমাবদ্ধ করুন, যা সমর্থিত মিডিয়াতে বর্ণিত সমস্ত কোডেককে সমর্থন করে (48KHz/16bit পর্যন্ত)।

ভলিউম নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য বেশিরভাগ Google কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশনটি ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে, শুধু অডিও উৎস ইনপুট ভলিউম নয়, Chromecast ডিভাইসের মতো। এর মানে হল অডিও-অডিও অ্যাপ্লিকেশনের জন্য ভলিউম পরিবর্তনের বৃদ্ধি অবশ্যই ছোট হতে হবে। আপনার অ্যাপে ভলিউম নিয়ন্ত্রণ প্রদানের নির্দেশিকাগুলির জন্য নিম্নলিখিত নথিগুলি দেখুন:

ডিভাইস নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য Google Cast এর নিজস্ব প্লেব্যাক নিয়ন্ত্রণ থাকতে পারে (যেমন বোতাম, রিমোট)। এগুলি urn:x-cast:com.google.cast.media নামস্থানের জন্য সংজ্ঞায়িত মিডিয়া প্লেব্যাক বার্তাগুলি ব্যবহার করে, যেমন মিডিয়া প্লেব্যাক বার্তাগুলিতে বর্ণিত হয়েছে, রিসিভার অ্যাপ্লিকেশনে প্লেব্যাক নিয়ন্ত্রণ করতে৷ ডিভাইসের প্লেব্যাক নিয়ন্ত্রণগুলিকে সমর্থন করার জন্য আপনার রিসিভার অ্যাপ্লিকেশনটিকে অবশ্যই এই মিডিয়া প্লেব্যাক বার্তাগুলিকে সমর্থন করতে হবে৷

এছাড়াও, আপনার প্রেরক অ্যাপটি রিসিভার থেকে প্রেরকের বার্তাগুলিকে সমর্থন করবে যাতে ব্যবহারকারী যদি ডিভাইস নিয়ন্ত্রণের সাথে মিডিয়া অবস্থা পরিবর্তন করে, আপনার প্রেরক অ্যাপটি প্রাপকের কাছ থেকে একটি স্থিতি বার্তা পেতে পারে এবং সেই অনুযায়ী UI আপডেট করতে পারে।

ডিভাইস প্রদর্শন

অডিও ডিভাইসের জন্য একটি Google কাস্ট ডিভাইসে একটি LCD স্ক্রিন বা একটি ডিভাইস-নির্দিষ্ট নিয়ন্ত্রণ অ্যাপ্লিকেশন থাকতে পারে যা মিডিয়া মেটাডেটা প্রদর্শন করে। আপনার রিসিভার অ্যাপটিকে অবশ্যই সমস্ত অডিও ট্র্যাকের জন্য এই মেটাডেটা প্রদান করতে হবে এবং মেটাডেটা প্রদর্শনে যথাযথভাবে প্রদর্শিত হয় তা নিশ্চিত করতে এটি বর্তমানে বাজানো সামগ্রীর সাথে সিঙ্কে রয়েছে তা নিশ্চিত করতে হবে। যদি অ্যাপ্লিকেশনটি কাস্টম মেটাডেটা ব্যবহার করে, তবে এটি অবশ্যই মানক অডিও মেটাডেটা (ট্র্যাক নাম, শিল্পীর নাম, অ্যালবামের শিরোনাম, ইত্যাদি) প্রদান করতে হবে যা নীচের প্রতিটি প্ল্যাটফর্মের জন্য বর্ণনা করা হয়েছে৷

রিসিভার মিডিয়া লোড করার সময় প্রেরকের কাছ থেকে মেটাডেটা পায়। আপনার প্রেরক অ্যাপে, রিসিভারে মিডিয়া লোড করার কমান্ড সহ, আপনাকে অবশ্যই নীচে বর্ণিত ক্ষেত্রগুলি নির্দিষ্ট করতে হবে যাতে মেটাডেটা অডিও ডিভাইসের জন্য Google Cast-এ প্রদর্শিত হয়৷ নিম্নলিখিত API ব্যবহার করুন:

কাস্ট অ্যাপ যদি রিসিভারে বা ক্লাউডে একটি মিডিয়া সারি পরিচালনা করে, তাহলে ওয়েব রিসিভারকে অবশ্যই urn:x-cast:com.google.cast.media নামস্থান ব্যবহার করে যেকোন মিডিয়া স্ট্যাটাস আপডেট সম্প্রচার করতে হবে যাতে সমস্ত প্রেরক সিঙ্ক্রোনাইজ হয়৷

নিবন্ধন

আপনাকে অবশ্যই পরীক্ষার জন্য অডিও ডিভাইসের জন্য আপনার Google Cast নিবন্ধন করতে হবে এবং Google Cast SDK বিকাশকারী কনসোল ব্যবহার করে অডিও ডিভাইসের জন্য Google Cast সমর্থন করতে আপনার অ্যাপ নিবন্ধন করতে হবে৷

  • ডিভাইস নিবন্ধন সম্পর্কে আরো তথ্যের জন্য ডিভাইস দেখুন.
  • আপনার অ্যাপটিকে অডিও ডিভাইসের জন্য Google Cast আবিষ্কার করার অনুমতি দিতে আপনার অ্যাপ্লিকেশন নিবন্ধন করার সময় আপনাকে অবশ্যই কেবলমাত্র অডিও ডিভাইসগুলিতে কাস্টিং সমর্থন করে চেকবক্সটি চেক করতে হবে৷ আপনার আবেদন নিবন্ধন দেখুন.

অপ্রকাশিত অ্যাপ্লিকেশানগুলির জন্য, যেমন পরীক্ষার জন্য ব্যবহার করা হয়, আপনাকে অবশ্যই অডিও-অডিও ডিভাইসগুলিকে সমর্থন করার বিকল্পটি নির্বাচন করতে হবে যাতে অ্যাপটি কেবলমাত্র অডিও ডিভাইসগুলি আবিষ্কার করতে পারে৷

অডিও 2.0 এর জন্য Google Cast

অডিওর জন্য Google Cast (GC4A) 2.0 হল পরবর্তী প্রজন্মের কাস্ট অডিও প্ল্যাটফর্ম যা কম মেমরির ডিভাইসগুলিকে লক্ষ্য করার জন্য ডিজাইন করা হয়েছে, এমন ডিভাইসগুলির ইকোসিস্টেমকে প্রসারিত করতে যা আপনার সামগ্রী স্ট্রিম করতে পারে৷ যেহেতু GC4A 2.0 অডিও প্ল্যাটফর্মগুলিকে লক্ষ্য করে, ওয়েব API সেটটি প্রদর্শনহীন ডিভাইসগুলির সাথে সারিবদ্ধ করার জন্য হ্রাস করা হয়েছে৷ GC4A 2.0 কাস্ট সমর্থন করে এমন নতুন এবং বিদ্যমান স্পিকারগুলিতে রোল আউট হচ্ছে৷

পরীক্ষা এবং ডিবাগিং

যেহেতু সমস্ত সমর্থিত স্পিকার GC4A 2.0-এ রূপান্তরিত হবে, তাই এটি গুরুত্বপূর্ণ যে অডিও অ্যাপ বিকাশকারীরা তাদের অ্যাপগুলি GC4A 2.0-এ পরীক্ষা করে। আপনি এখানে তালিকাভুক্ত যেকোনো GC4A 2.0 ডিভাইসে GC4A 2.0-এর জন্য আপনার Cast অ্যাপটি পরীক্ষা করতে পারেন।

GC4A 2.0 Chrome রিমোট ডিবাগার সমর্থন করে না। আপনি যদি আপনার অ্যাপ ডিবাগ করতে চান, Google কাস্ট ডিবাগ লগার ব্যবহার করার পরামর্শ দেয়।

উপলব্ধ GC4A 2.0 ডিভাইস

এটি GC4A 2.0 ডিভাইসের একটি অ-বিস্তৃত তালিকা:

  • বোস: ওয়াইফাই স্পিকার এবং স্মার্ট সাউন্ডবার
  • JBL: চার্জ 5 Wi-Fi / Boombox 3 Wi-Fi / Authentics 200, 300, এবং 500
  • স্যামসাং: মিউজিক ফ্রেম/সাউন্ডবার
  • LG: S90TY/SG10TY/SE70Q/S80Q/S90Q সাউন্ডবার
  • Bang & Olufsen Beosound 2 / Beocore Connect
  • Sonoro Maestro 2 / Meisterstruck 2
  • কেমব্রিজ অডিও MXN10
  • KEF LS60 / LSX II
  • টিউফেল মোটিভ হোম
  • নর্ডিক আর্গন অডিও
  • WiiM CI MOD S/ Ultra

GC4A 2.0-এ অ্যাপের সমস্ত বৈশিষ্ট্য পরীক্ষা করার পরামর্শ দেওয়া হয়। সমস্ত মিডিয়া প্রকার (পডকাস্ট, স্ট্রিম, ইত্যাদি), বিরতি, স্ক্রাবিং, এড়িয়ে যাওয়া, প্লেলিস্ট পরিবর্তন, থামানো এবং কাস্ট পুনরায় সংযোগ করার পরীক্ষা অন্তর্ভুক্ত করতে ভুলবেন না।

সমর্থিত API

GC4A 2.0 নিম্নলিখিত API সমর্থন করে:

  • এইচটিএমএল
  • জাভাস্ক্রিপ্ট ECMA 6
  • DOMParser
  • XMLSerializer
  • ডকুমেন্ট এবং সাবক্লাস
  • ডকুমেন্ট ফ্র্যাগমেন্ট
  • HTMLMediaElement এবং HTMLAudioElement
  • HTMLVideoElement (শুধুমাত্র অডিও সামগ্রী চালাতে পারে)
  • HTMLScriptElement
  • HTMLBaseElement
  • HTML TemplateElement
  • কাস্টম উপাদান
  • ছায়া DOM
  • স্ক্রিপ্ট মডিউল / async / বিলম্বিত
  • আনয়ন / এক্সএইচআর
  • ওয়েবসকেট
  • মেসেজপোর্ট
  • কুকিজ
  • MSE (মিডিয়া সোর্স এক্সটেনশন)
  • EME (এনক্রিপ্ট করা মিডিয়া এক্সটেনশন)
  • স্থানীয় / সেশন স্টোরেজ

GC4A 2.0 সমর্থন করে না :

  • ডায়নামিক মডিউল আমদানি (2024 সালে যোগ করা হবে)
  • সিএসএস
  • আইফ্রেম
  • টেক্সটট্র্যাকস

শনাক্তকরণ

যদিও কাস্ট রিসিভার অ্যাপ্লিকেশানগুলি সমস্ত কাস্ট ডিভাইসের জন্য সর্বজনীন বলে প্রত্যাশিত, আপনি কোন ডিভাইসটি চালাচ্ছেন তা সনাক্ত করতে কখনও কখনও এটি সহায়ক হতে পারে৷ GC4A 2.0 ডিভাইসগুলি ব্যবহারকারী এজেন্ট স্ট্রিং ব্যবহার করে সনাক্ত করা যেতে পারে।

  • সমস্ত কাস্ট ডিভাইসে CrKey/ এবং একটি সংস্করণ থাকে। যেমন: CrKey/1.68.000001
  • GC4A 2.0 ডিভাইসে Castlite/ এবং একটি সংস্করণ রয়েছে। যেমন: Castlite/1.0

যোগাযোগ

পরীক্ষার জন্য সেট আপ করতে সাহায্যের প্রয়োজন হলে অথবা বোস স্পিকার ব্যবহার করতে অক্ষম হলে অনুগ্রহ করে gc4a-support-external@google.com-এর সাথে যোগাযোগ করুন।

,

অডিও ডিভাইসের জন্য Google Cast শুধুমাত্র অডিও প্লেব্যাক সমর্থন করে। এই নির্দেশিকাটি বর্ণনা করে যে কীভাবে কেবল অডিও ডিভাইসগুলির জন্য কাস্ট অ্যাপ্লিকেশনগুলিকে অপ্টিমাইজ করা যায় এবং মেমরি, সিপিইউ এবং নেটওয়ার্ক ব্যান্ডউইথ ব্যবহারের হ্রাসকৃত চাহিদাগুলির সুবিধা নেওয়া যায়৷

অডিওর জন্য Google Cast সমর্থন করে এমন একটি অ্যাপ অবশ্যই নিম্নলিখিতগুলি বিবেচনা করবে:

  • অডিও ডিভাইসের জন্য Google Cast ভিডিও বা গ্রাফিক্স প্রদর্শন করে না। যাইহোক, অনেক অডিও ডিভাইসে মেটাডেটা দেখানোর জন্য একটি ডিসপ্লে থাকে, যেমন প্লেব্যাক অবস্থা (বাজানো বা বিরতি দেওয়া) এবং অগ্রগতি। আপনার আবেদন শুধুমাত্র রিসিভারে এই ধরনের সমালোচনামূলক ব্যবহারকারীর তথ্য প্রদর্শন করা উচিত নয়; সমালোচনামূলক তথ্য, এবং বেশিরভাগ ইউজার ইন্টারফেস অবশ্যই প্রেরকের উপর দেখাতে হবে।
  • ওয়েব রিসিভার অ্যাপ্লিকেশানগুলি সঠিকভাবে চালানোর জন্য, অডিও ডিভাইসগুলির জন্য Google কাস্টকে এখনও গ্রাফিক্স রেন্ডার করতে হবে, যদিও সেগুলি প্রদর্শিত না হয়৷ যেহেতু ডিভাইসগুলি হার্ডওয়্যার-অ্যাক্সিলারেটেড গ্রাফিক্স ক্রিয়াকলাপগুলিকে সমর্থন করতে পারে না, তাই রিসিভার অ্যাপ্লিকেশনগুলিকে গ্রাফিক্স-নিবিড় ক্রিয়াকলাপগুলি যেমন রঙ গ্রেডিয়েন্ট, ঘূর্ণন, আলফা ব্লেন্ডিং এবং প্রতি সেকেন্ডে একাধিকবার অগ্রগতি বারের মতো বড় অবজেক্টগুলি পুনরায় অঙ্কন করা এড়ানো উচিত।
  • অডিও ডিভাইসের জন্য Google Cast শুধুমাত্র Widevine for Digital Right Management (DRM) সুরক্ষিত সামগ্রী সমর্থন করে৷
  • অডিও ডিভাইসের জন্য বেশিরভাগ Google কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশনটি ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে (উদাহরণস্বরূপ, একটি স্পিকার), শুধুমাত্র টিভিতে অডিও উত্স ইনপুটের ভলিউম নয়, যেমন একটি Chromecast ডিভাইসের সাথে।
  • প্রেরক ডিভাইসের সাথে প্লেব্যাক নিয়ন্ত্রণ করা ছাড়াও (উদাহরণস্বরূপ, একটি ফোন), অ্যাপটিকে ডিভাইসের নিজস্ব কন্ট্রোলার যেমন রিমোট কন্ট্রোল, অন-ডিভাইস বোতাম বা একটি বহিরাগত রিমোট অ্যাপ্লিকেশন দিয়ে প্লেব্যাক নিয়ন্ত্রণের জন্য প্রদান করতে হতে পারে।
  • অডিও ডিভাইসের জন্য একটি Google Cast একটি ছোট LCD স্ক্রীন, HDMI আউটপুট (সাউন্ডবার বা অডিও-ভিডিও রিসিভারের জন্য), বা একটি বাহ্যিক দূরবর্তী অ্যাপ্লিকেশন, নির্দিষ্ট ডিভাইস UI এর উপর নির্ভর করে সামগ্রী মেটাডেটা প্রদর্শন সমর্থন করতে পারে৷

উন্নয়ন

অডিওর জন্য Google Cast সমর্থন করার জন্য একটি কাস্ট অ্যাপ্লিকেশন বিকাশের প্রথম ধাপ হল অডিও-ভিডিওর জন্য একটি কাস্ট অ্যাপ্লিকেশন বিকাশ করা এবং এটি একটি Chromecast এ চলে তা নিশ্চিত করা৷ এই দস্তাবেজটি অনুমান করে যে আপনি এমন একটি অ্যাপ তৈরি করেছেন এবং পরীক্ষা করেছেন৷

একটি অ্যাপ অডিও-ভিডিও এবং অডিও-শুধু ডিভাইস উভয়ই সমর্থন করতে পারে। এটি কখন একটি বনাম অন্যটিতে কাস্ট করা হয় তা জানতে হবে এবং প্রদত্ত পরিস্থিতিতে সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করার জন্য ব্যবস্থা গ্রহণ করতে হবে।

উদাহরণস্বরূপ, দ্বৈত ভিডিও এবং অডিও অ্যাপগুলি (যেমন স্থানীয়/এনএএস ফাইল প্লেব্যাক অ্যাপ্লিকেশনগুলি) অডিও ফাইলগুলি চালানো সমর্থন করার জন্য শুধুমাত্র অডিও ডিভাইসগুলিতে কাস্টিং সক্ষম করা উচিত, তবে অ্যাপটি ব্যবহারকারীকে শুধুমাত্র অডিও ডিভাইসে ভিডিও ফাইল পাঠানোর অনুমতি দেবে না। অ্যাপটি ডিভাইসের জন্য উপযুক্ত বিষয়বস্তু নির্ধারণ করতে নীচে বর্ণিত প্রেরকদের জন্য ডিভাইস ক্ষমতা API ব্যবহার করতে পারে।

অডিওর জন্য Google Cast সমর্থন করতে, আপনার অ্যাপটিকে অবশ্যই নিম্নলিখিতগুলি করতে হবে:

  • শুধুমাত্র-অডিও সমর্থন করুন: স্ট্রিমিং সঙ্গীত এবং অডিও ফাইল, রেডিও, ইত্যাদি। ওয়েব রিসিভার অ্যাপে স্ট্রিম করা মিডিয়া অবশ্যই একটি ভিডিও স্ট্রিম হতে হবে না। এছাড়াও, অ্যাপ্লিকেশন লঞ্চের সময় এবং মেমরি ব্যবহার উন্নত করতে স্ট্রিমিং গ্রাফিক্স এবং চিত্রগুলি এড়িয়ে চলুন। নীচে মেমরি ব্যবহারের নির্দেশিকা দেখুন।

  • অডিও ডিভাইসের জন্য কাস্টের পাশাপাশি নিয়মিত Chromecast-এ প্রত্যাশিতভাবে চালান।

ডিভাইসের ক্ষমতা

আপনার অ্যাপ্লিকেশানটি ডিভাইসের সক্ষমতা APIগুলির গুণে, ডিভাইস থেকে পাওয়া যায় বা প্রেরক বা রিসিভার APIগুলির মাধ্যমে এটি একটি অডিও-অডিও ডিভাইসে চলছে কিনা তা জানতে পারে৷

ডিভাইস HTTP হেডার

অ্যাপ্লিকেশন লঞ্চের সময় কাস্ট ডিভাইস দ্বারা প্রদত্ত CAST-DEVICE-CAPABILITIES HTTP শিরোনামটি ডিভাইসের ক্ষমতা বর্ণনা করে৷ ডিভাইসটি ওয়েব রিসিভার অ্যাপ হোস্ট করা সার্ভারে এই হেডার সহ একটি অনুরোধ পাঠায়। শুধুমাত্র-অডিও ডিভাইসের শিরোনামটি CAST-DEVICE-CAPABILITIES: {"display_supported":false}

যখন আপনার সার্ভার ডিভাইস থেকে অনুরোধ গ্রহণ করে, তখন আপনি এই শিরোনামের তথ্য ব্যবহার করে অনুরোধটিকে ওয়েব রিসিভার অ্যাপে রিডাইরেক্ট করতে পারেন যা অডিও ডিভাইসের জন্য অপ্টিমাইজ করা হয়েছে।

ওয়েব রিসিভার API

যখন ওয়েব রিসিভার অ্যাপটি লোড হয় তখন আপনি CastReceiverManager.getDeviceCapabilities() কল করে একই ডিভাইসের ক্ষমতার বস্তু পেতে পারেন।

আরও তথ্যের জন্য ডিভাইসের ক্ষমতা দেখুন।

প্রেরক API

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

মেমরি ব্যবহারের নির্দেশিকা

অডিও ডিভাইসে চলমান ওয়েব রিসিভার অ্যাপগুলিকে অবশ্যই মেমরির ব্যবহার নিম্নরূপ পরিচালনা করতে হবে:

  • মেমরি ফুটপ্রিন্ট কমাতে এবং প্লেব্যাক শুরু না হওয়া পর্যন্ত সময় কমাতে কোনো ছবি বা গ্রাফিক্স সম্পদ ডাউনলোড বা ব্যবহার করা এড়িয়ে চলুন।
  • মিডিয়া সোর্স এক্সটেনশন (MSE) ব্যবহার করার সময়, অ্যাপ্লিকেশনগুলিকে অবশ্যই স্ট্রীম বাফার 2MB পর্যন্ত সীমাবদ্ধ করতে হবে। মিডিয়া প্লেয়ার লাইব্রেরি (MPL) ব্যবহার করলে, অ্যাপ্লিকেশনটির স্ট্রীম বাফার আকার ইতিমধ্যে MPL দ্বারা সংজ্ঞায়িত করা হয়েছে।
  • HTMLMediaElement ব্যবহার করার সময়, অ্যাপ্লিকেশনটির স্ট্রীম বাফার আকার স্ট্রীম হারের উপর ভিত্তি করে Chrome দ্বারা সংজ্ঞায়িত করা হয়। অডিও বিটরেট প্রতি সেকেন্ডে 2 মেগাবিটে সীমাবদ্ধ করুন, যা সমর্থিত মিডিয়াতে বর্ণিত সমস্ত কোডেককে সমর্থন করে (48KHz/16bit পর্যন্ত)।

ভলিউম নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য বেশিরভাগ Google কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশনটি ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে, শুধু অডিও উৎস ইনপুট ভলিউম নয়, Chromecast ডিভাইসের মতো। এর মানে হল অডিও-অডিও অ্যাপ্লিকেশনের জন্য ভলিউম পরিবর্তনের বৃদ্ধি অবশ্যই ছোট হতে হবে। আপনার অ্যাপে ভলিউম নিয়ন্ত্রণ প্রদানের নির্দেশিকাগুলির জন্য নিম্নলিখিত নথিগুলি দেখুন:

ডিভাইস নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য Google Cast এর নিজস্ব প্লেব্যাক নিয়ন্ত্রণ থাকতে পারে (যেমন বোতাম, রিমোট)। এগুলি urn:x-cast:com.google.cast.media নামস্থানের জন্য সংজ্ঞায়িত মিডিয়া প্লেব্যাক বার্তাগুলি ব্যবহার করে, যেমন মিডিয়া প্লেব্যাক বার্তাগুলিতে বর্ণিত হয়েছে, রিসিভার অ্যাপ্লিকেশনে প্লেব্যাক নিয়ন্ত্রণ করতে৷ ডিভাইসের প্লেব্যাক নিয়ন্ত্রণগুলিকে সমর্থন করার জন্য আপনার রিসিভার অ্যাপ্লিকেশনটিকে অবশ্যই এই মিডিয়া প্লেব্যাক বার্তাগুলিকে সমর্থন করতে হবে৷

এছাড়াও, আপনার প্রেরক অ্যাপটি রিসিভার থেকে প্রেরকের বার্তাগুলিকে সমর্থন করবে যাতে ব্যবহারকারী যদি ডিভাইস নিয়ন্ত্রণের সাথে মিডিয়া অবস্থা পরিবর্তন করে, আপনার প্রেরক অ্যাপটি প্রাপকের কাছ থেকে একটি স্থিতি বার্তা পেতে পারে এবং সেই অনুযায়ী UI আপডেট করতে পারে।

ডিভাইস প্রদর্শন

অডিও ডিভাইসের জন্য একটি Google কাস্ট ডিভাইসে একটি LCD স্ক্রিন বা একটি ডিভাইস-নির্দিষ্ট নিয়ন্ত্রণ অ্যাপ্লিকেশন থাকতে পারে যা মিডিয়া মেটাডেটা প্রদর্শন করে। আপনার রিসিভার অ্যাপটিকে অবশ্যই সমস্ত অডিও ট্র্যাকের জন্য এই মেটাডেটা প্রদান করতে হবে এবং মেটাডেটা প্রদর্শনে যথাযথভাবে প্রদর্শিত হয় তা নিশ্চিত করতে এটি বর্তমানে বাজানো সামগ্রীর সাথে সিঙ্কে রয়েছে তা নিশ্চিত করতে হবে। যদি অ্যাপ্লিকেশনটি কাস্টম মেটাডেটা ব্যবহার করে, তবে এটি অবশ্যই মানক অডিও মেটাডেটা (ট্র্যাক নাম, শিল্পীর নাম, অ্যালবামের শিরোনাম, ইত্যাদি) প্রদান করতে হবে যা নীচের প্রতিটি প্ল্যাটফর্মের জন্য বর্ণনা করা হয়েছে৷

রিসিভার মিডিয়া লোড করার সময় প্রেরকের কাছ থেকে মেটাডেটা পায়। আপনার প্রেরক অ্যাপে, রিসিভারে মিডিয়া লোড করার কমান্ড সহ, আপনাকে অবশ্যই নীচে বর্ণিত ক্ষেত্রগুলি নির্দিষ্ট করতে হবে যাতে মেটাডেটা অডিও ডিভাইসের জন্য Google Cast-এ প্রদর্শিত হয়৷ নিম্নলিখিত API ব্যবহার করুন:

কাস্ট অ্যাপ যদি রিসিভারে বা ক্লাউডে একটি মিডিয়া সারি পরিচালনা করে, তাহলে ওয়েব রিসিভারকে অবশ্যই urn:x-cast:com.google.cast.media নামস্থান ব্যবহার করে যেকোন মিডিয়া স্ট্যাটাস আপডেট সম্প্রচার করতে হবে যাতে সমস্ত প্রেরক সিঙ্ক্রোনাইজ হয়৷

নিবন্ধন

আপনাকে অবশ্যই পরীক্ষার জন্য অডিও ডিভাইসের জন্য আপনার Google Cast নিবন্ধন করতে হবে এবং Google Cast SDK বিকাশকারী কনসোল ব্যবহার করে অডিও ডিভাইসের জন্য Google Cast সমর্থন করতে আপনার অ্যাপ নিবন্ধন করতে হবে৷

  • ডিভাইস নিবন্ধন সম্পর্কে আরো তথ্যের জন্য ডিভাইস দেখুন.
  • আপনার অ্যাপটিকে অডিও ডিভাইসের জন্য Google Cast আবিষ্কার করার অনুমতি দিতে আপনার অ্যাপ্লিকেশন নিবন্ধন করার সময় আপনাকে অবশ্যই কেবলমাত্র অডিও ডিভাইসগুলিতে কাস্টিং সমর্থন করে চেকবক্সটি চেক করতে হবে৷ আপনার আবেদন নিবন্ধন দেখুন.

অপ্রকাশিত অ্যাপ্লিকেশানগুলির জন্য, যেমন পরীক্ষার জন্য ব্যবহার করা হয়, আপনাকে অবশ্যই অডিও-অডিও ডিভাইসগুলিকে সমর্থন করার বিকল্পটি নির্বাচন করতে হবে যাতে অ্যাপটি কেবলমাত্র অডিও ডিভাইসগুলি আবিষ্কার করতে পারে৷

অডিও 2.0 এর জন্য Google Cast

অডিওর জন্য Google Cast (GC4A) 2.0 হল পরবর্তী প্রজন্মের কাস্ট অডিও প্ল্যাটফর্ম যা কম মেমরির ডিভাইসগুলিকে লক্ষ্য করার জন্য ডিজাইন করা হয়েছে, এমন ডিভাইসগুলির ইকোসিস্টেমকে প্রসারিত করতে যা আপনার সামগ্রী স্ট্রিম করতে পারে৷ যেহেতু GC4A 2.0 অডিও প্ল্যাটফর্মগুলিকে লক্ষ্য করে, ওয়েব API সেটটি প্রদর্শনহীন ডিভাইসগুলির সাথে সারিবদ্ধ করার জন্য হ্রাস করা হয়েছে৷ GC4A 2.0 কাস্ট সমর্থন করে এমন নতুন এবং বিদ্যমান স্পিকারগুলিতে রোল আউট হচ্ছে৷

পরীক্ষা এবং ডিবাগিং

যেহেতু সমস্ত সমর্থিত স্পিকার GC4A 2.0-এ রূপান্তরিত হবে, তাই এটি গুরুত্বপূর্ণ যে অডিও অ্যাপ বিকাশকারীরা তাদের অ্যাপগুলি GC4A 2.0-এ পরীক্ষা করে। আপনি এখানে তালিকাভুক্ত যেকোনো GC4A 2.0 ডিভাইসে GC4A 2.0-এর জন্য আপনার Cast অ্যাপটি পরীক্ষা করতে পারেন।

GC4A 2.0 Chrome রিমোট ডিবাগার সমর্থন করে না। আপনি যদি আপনার অ্যাপ ডিবাগ করতে চান, Google কাস্ট ডিবাগ লগার ব্যবহার করার পরামর্শ দেয়।

উপলব্ধ GC4A 2.0 ডিভাইস

এটি GC4A 2.0 ডিভাইসের একটি অ-বিস্তৃত তালিকা:

  • বোস: ওয়াইফাই স্পিকার এবং স্মার্ট সাউন্ডবার
  • JBL: চার্জ 5 Wi-Fi / Boombox 3 Wi-Fi / Authentics 200, 300, এবং 500
  • স্যামসাং: মিউজিক ফ্রেম/সাউন্ডবার
  • LG: S90TY/SG10TY/SE70Q/S80Q/S90Q সাউন্ডবার
  • Bang & Olufsen Beosound 2 / Beocore Connect
  • Sonoro Maestro 2 / Meisterstruck 2
  • কেমব্রিজ অডিও MXN10
  • KEF LS60 / LSX II
  • টিউফেল মোটিভ হোম
  • নর্ডিক আর্গন অডিও
  • WiiM CI MOD S/ Ultra

GC4A 2.0-এ অ্যাপের সমস্ত বৈশিষ্ট্য পরীক্ষা করার পরামর্শ দেওয়া হয়। সমস্ত মিডিয়া প্রকার (পডকাস্ট, স্ট্রিম, ইত্যাদি), বিরতি, স্ক্রাবিং, এড়িয়ে যাওয়া, প্লেলিস্ট পরিবর্তন, থামানো এবং কাস্ট পুনরায় সংযোগ করার পরীক্ষা অন্তর্ভুক্ত করতে ভুলবেন না।

সমর্থিত API

GC4A 2.0 নিম্নলিখিত API সমর্থন করে:

  • এইচটিএমএল
  • জাভাস্ক্রিপ্ট ECMA 6
  • DOMParser
  • XMLSerializer
  • ডকুমেন্ট এবং সাবক্লাস
  • ডকুমেন্ট ফ্র্যাগমেন্ট
  • HTMLMediaElement এবং HTMLAudioElement
  • HTMLVideoElement (শুধুমাত্র অডিও সামগ্রী চালাতে পারে)
  • HTMLScriptElement
  • HTMLBaseElement
  • HTML TemplateElement
  • কাস্টম উপাদান
  • ছায়া DOM
  • স্ক্রিপ্ট মডিউল / async / বিলম্বিত
  • আনয়ন / এক্সএইচআর
  • ওয়েবসকেট
  • মেসেজপোর্ট
  • কুকিজ
  • MSE (মিডিয়া সোর্স এক্সটেনশন)
  • EME (এনক্রিপ্ট করা মিডিয়া এক্সটেনশন)
  • স্থানীয় / সেশন স্টোরেজ

GC4A 2.0 সমর্থন করে না :

  • ডায়নামিক মডিউল আমদানি (2024 সালে যোগ করা হবে)
  • সিএসএস
  • আইফ্রেম
  • টেক্সটট্র্যাকস

শনাক্তকরণ

যদিও কাস্ট রিসিভার অ্যাপ্লিকেশানগুলি সমস্ত কাস্ট ডিভাইসের জন্য সর্বজনীন বলে প্রত্যাশিত, আপনি কোন ডিভাইসটি চালাচ্ছেন তা সনাক্ত করতে কখনও কখনও এটি সহায়ক হতে পারে৷ GC4A 2.0 ডিভাইসগুলি ব্যবহারকারী এজেন্ট স্ট্রিং ব্যবহার করে সনাক্ত করা যেতে পারে।

  • সমস্ত কাস্ট ডিভাইসে CrKey/ এবং একটি সংস্করণ থাকে। যেমন: CrKey/1.68.000001
  • GC4A 2.0 ডিভাইসে Castlite/ এবং একটি সংস্করণ রয়েছে। যেমন: Castlite/1.0

যোগাযোগ

পরীক্ষার জন্য সেট আপ করতে সাহায্যের প্রয়োজন হলে অথবা বোস স্পিকার ব্যবহার করতে অক্ষম হলে অনুগ্রহ করে gc4a-support-external@google.com-এর সাথে যোগাযোগ করুন।

,

অডিও ডিভাইসের জন্য Google Cast শুধুমাত্র অডিও প্লেব্যাক সমর্থন করে। এই নির্দেশিকাটি বর্ণনা করে যে কীভাবে কেবল অডিও ডিভাইসগুলির জন্য কাস্ট অ্যাপ্লিকেশনগুলিকে অপ্টিমাইজ করা যায় এবং মেমরি, সিপিইউ এবং নেটওয়ার্ক ব্যান্ডউইথ ব্যবহারের হ্রাসকৃত চাহিদাগুলির সুবিধা নেওয়া যায়৷

অডিওর জন্য Google Cast সমর্থন করে এমন একটি অ্যাপ অবশ্যই নিম্নলিখিতগুলি বিবেচনা করবে:

  • অডিও ডিভাইসের জন্য Google Cast ভিডিও বা গ্রাফিক্স প্রদর্শন করে না। যাইহোক, অনেক অডিও ডিভাইসে মেটাডেটা দেখানোর জন্য একটি ডিসপ্লে থাকে, যেমন প্লেব্যাক অবস্থা (বাজানো বা বিরতি দেওয়া) এবং অগ্রগতি। আপনার আবেদন শুধুমাত্র রিসিভারে এই ধরনের সমালোচনামূলক ব্যবহারকারীর তথ্য প্রদর্শন করা উচিত নয়; সমালোচনামূলক তথ্য, এবং বেশিরভাগ ইউজার ইন্টারফেস অবশ্যই প্রেরকের উপর দেখাতে হবে।
  • ওয়েব রিসিভার অ্যাপ্লিকেশানগুলি সঠিকভাবে চালানোর জন্য, অডিও ডিভাইসগুলির জন্য Google কাস্টকে এখনও গ্রাফিক্স রেন্ডার করতে হবে, যদিও সেগুলি প্রদর্শিত না হয়৷ যেহেতু ডিভাইসগুলি হার্ডওয়্যার-অ্যাক্সিলারেটেড গ্রাফিক্স ক্রিয়াকলাপগুলিকে সমর্থন করতে পারে না, তাই রিসিভার অ্যাপ্লিকেশনগুলিকে গ্রাফিক্স-নিবিড় ক্রিয়াকলাপগুলি যেমন রঙ গ্রেডিয়েন্ট, ঘূর্ণন, আলফা ব্লেন্ডিং এবং প্রতি সেকেন্ডে একাধিকবার অগ্রগতি বারের মতো বড় অবজেক্টগুলি পুনরায় অঙ্কন করা এড়ানো উচিত।
  • অডিও ডিভাইসের জন্য Google Cast শুধুমাত্র Widevine for Digital Right Management (DRM) সুরক্ষিত সামগ্রী সমর্থন করে৷
  • অডিও ডিভাইসের জন্য বেশিরভাগ Google কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশনটি ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে (উদাহরণস্বরূপ, একটি স্পিকার), শুধুমাত্র টিভিতে অডিও উত্স ইনপুটের ভলিউম নয়, যেমন একটি Chromecast ডিভাইসের সাথে।
  • প্রেরক ডিভাইসের সাথে প্লেব্যাক নিয়ন্ত্রণ করা ছাড়াও (উদাহরণস্বরূপ, একটি ফোন), অ্যাপটিকে ডিভাইসের নিজস্ব কন্ট্রোলার যেমন রিমোট কন্ট্রোল, অন-ডিভাইস বোতাম বা একটি বহিরাগত রিমোট অ্যাপ্লিকেশন দিয়ে প্লেব্যাক নিয়ন্ত্রণের জন্য প্রদান করতে হতে পারে।
  • অডিও ডিভাইসের জন্য একটি Google Cast একটি ছোট LCD স্ক্রীন, HDMI আউটপুট (সাউন্ডবার বা অডিও-ভিডিও রিসিভারের জন্য), বা একটি বাহ্যিক দূরবর্তী অ্যাপ্লিকেশন, নির্দিষ্ট ডিভাইস UI এর উপর নির্ভর করে সামগ্রী মেটাডেটা প্রদর্শন সমর্থন করতে পারে৷

উন্নয়ন

অডিওর জন্য Google Cast সমর্থন করার জন্য একটি কাস্ট অ্যাপ্লিকেশন বিকাশের প্রথম ধাপ হল অডিও-ভিডিওর জন্য একটি কাস্ট অ্যাপ্লিকেশন বিকাশ করা এবং এটি একটি Chromecast এ চলে তা নিশ্চিত করা৷ এই দস্তাবেজটি অনুমান করে যে আপনি এমন একটি অ্যাপ তৈরি করেছেন এবং পরীক্ষা করেছেন৷

একটি অ্যাপ অডিও-ভিডিও এবং অডিও-শুধু ডিভাইস উভয়ই সমর্থন করতে পারে। এটি কখন একটি বনাম অন্যটিতে কাস্ট করা হয় তা জানতে হবে এবং প্রদত্ত পরিস্থিতিতে সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করার জন্য ব্যবস্থা গ্রহণ করতে হবে।

উদাহরণস্বরূপ, দ্বৈত ভিডিও এবং অডিও অ্যাপগুলি (যেমন স্থানীয়/এনএএস ফাইল প্লেব্যাক অ্যাপ্লিকেশনগুলি) অডিও ফাইলগুলি চালানো সমর্থন করার জন্য শুধুমাত্র অডিও ডিভাইসগুলিতে কাস্টিং সক্ষম করা উচিত, তবে অ্যাপটি ব্যবহারকারীকে শুধুমাত্র অডিও ডিভাইসে ভিডিও ফাইল পাঠানোর অনুমতি দেবে না। অ্যাপটি ডিভাইসের জন্য উপযুক্ত বিষয়বস্তু নির্ধারণ করতে নীচে বর্ণিত প্রেরকদের জন্য ডিভাইস ক্ষমতা API ব্যবহার করতে পারে।

অডিওর জন্য Google Cast সমর্থন করতে, আপনার অ্যাপকে অবশ্যই নিম্নলিখিতগুলি করতে হবে:

  • শুধুমাত্র-অডিও সমর্থন করুন: স্ট্রিমিং সঙ্গীত এবং অডিও ফাইল, রেডিও, ইত্যাদি। ওয়েব রিসিভার অ্যাপে স্ট্রিম করা মিডিয়া অবশ্যই একটি ভিডিও স্ট্রিম হতে হবে না। এছাড়াও, অ্যাপ্লিকেশন লঞ্চের সময় এবং মেমরি ব্যবহার উন্নত করতে স্ট্রিমিং গ্রাফিক্স এবং চিত্রগুলি এড়িয়ে চলুন। নীচে মেমরি ব্যবহারের নির্দেশিকা দেখুন।

  • অডিও ডিভাইসের জন্য কাস্টের পাশাপাশি নিয়মিত Chromecast-এ প্রত্যাশিতভাবে চালান।

ডিভাইসের ক্ষমতা

আপনার অ্যাপ্লিকেশানটি ডিভাইসের সক্ষমতা APIগুলির গুণে, ডিভাইস থেকে পাওয়া যায় বা প্রেরক বা রিসিভার APIগুলির মাধ্যমে এটি একটি অডিও-অডিও ডিভাইসে চলছে কিনা তা জানতে পারে৷

ডিভাইস HTTP হেডার

অ্যাপ্লিকেশন লঞ্চের সময় কাস্ট ডিভাইস দ্বারা প্রদত্ত CAST-DEVICE-CAPABILITIES HTTP শিরোনাম ডিভাইসের ক্ষমতা বর্ণনা করে৷ ডিভাইসটি ওয়েব রিসিভার অ্যাপ হোস্ট করা সার্ভারে এই হেডার সহ একটি অনুরোধ পাঠায়। শুধুমাত্র-অডিও ডিভাইসের শিরোনামটি CAST-DEVICE-CAPABILITIES: {"display_supported":false}

যখন আপনার সার্ভার ডিভাইস থেকে অনুরোধ গ্রহণ করে, তখন আপনি এই শিরোনামের তথ্য ব্যবহার করে অনুরোধটিকে ওয়েব রিসিভার অ্যাপে রিডাইরেক্ট করতে পারেন যা অডিও ডিভাইসের জন্য অপ্টিমাইজ করা হয়েছে।

ওয়েব রিসিভার API

যখন ওয়েব রিসিভার অ্যাপটি লোড হয় তখন আপনি CastReceiverManager.getDeviceCapabilities() কল করে একই ডিভাইসের ক্ষমতার বস্তু পেতে পারেন।

আরও তথ্যের জন্য ডিভাইসের ক্ষমতা দেখুন।

প্রেরক API

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

মেমরি ব্যবহারের নির্দেশিকা

অডিও ডিভাইসে চলমান ওয়েব রিসিভার অ্যাপগুলিকে অবশ্যই মেমরির ব্যবহার নিম্নরূপ পরিচালনা করতে হবে:

  • মেমরি ফুটপ্রিন্ট কমাতে এবং প্লেব্যাক শুরু না হওয়া পর্যন্ত সময় কমাতে কোনো ছবি বা গ্রাফিক্স সম্পদ ডাউনলোড বা ব্যবহার করা এড়িয়ে চলুন।
  • মিডিয়া সোর্স এক্সটেনশন (MSE) ব্যবহার করার সময়, অ্যাপ্লিকেশনগুলিকে অবশ্যই স্ট্রীম বাফার 2MB পর্যন্ত সীমাবদ্ধ করতে হবে। মিডিয়া প্লেয়ার লাইব্রেরি (MPL) ব্যবহার করলে, অ্যাপ্লিকেশনটির স্ট্রীম বাফার আকার ইতিমধ্যে MPL দ্বারা সংজ্ঞায়িত করা হয়েছে।
  • HTMLMediaElement ব্যবহার করার সময়, অ্যাপ্লিকেশনটির স্ট্রীম বাফার আকার স্ট্রীম হারের উপর ভিত্তি করে Chrome দ্বারা সংজ্ঞায়িত করা হয়। অডিও বিটরেট প্রতি সেকেন্ডে 2 মেগাবিটে সীমাবদ্ধ করুন, যা সমর্থিত মিডিয়াতে বর্ণিত সমস্ত কোডেককে সমর্থন করে (48KHz/16bit পর্যন্ত)।

ভলিউম নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য বেশিরভাগ Google কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশনটি ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে, শুধু অডিও উৎস ইনপুট ভলিউম নয়, Chromecast ডিভাইসের মতো। এর মানে হল অডিও-অডিও অ্যাপ্লিকেশনের জন্য ভলিউম পরিবর্তনের বৃদ্ধি অবশ্যই ছোট হতে হবে। আপনার অ্যাপে ভলিউম নিয়ন্ত্রণ প্রদানের নির্দেশিকাগুলির জন্য নিম্নলিখিত নথিগুলি দেখুন:

ডিভাইস নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য Google Cast এর নিজস্ব প্লেব্যাক নিয়ন্ত্রণ থাকতে পারে (যেমন বোতাম, রিমোট)। এগুলি urn:x-cast:com.google.cast.media নামস্থানের জন্য সংজ্ঞায়িত মিডিয়া প্লেব্যাক বার্তাগুলি ব্যবহার করে, যেমন মিডিয়া প্লেব্যাক বার্তাগুলিতে বর্ণিত হয়েছে, রিসিভার অ্যাপ্লিকেশনে প্লেব্যাক নিয়ন্ত্রণ করতে৷ ডিভাইসের প্লেব্যাক নিয়ন্ত্রণগুলিকে সমর্থন করার জন্য আপনার রিসিভার অ্যাপ্লিকেশনটিকে অবশ্যই এই মিডিয়া প্লেব্যাক বার্তাগুলিকে সমর্থন করতে হবে৷

এছাড়াও, আপনার প্রেরক অ্যাপটি রিসিভার থেকে প্রেরকের বার্তাগুলিকে সমর্থন করবে যাতে ব্যবহারকারী যদি ডিভাইস নিয়ন্ত্রণের সাথে মিডিয়া অবস্থা পরিবর্তন করে, আপনার প্রেরক অ্যাপটি প্রাপকের কাছ থেকে একটি স্থিতি বার্তা পেতে পারে এবং সেই অনুযায়ী UI আপডেট করতে পারে।

ডিভাইস প্রদর্শন

অডিও ডিভাইসের জন্য একটি Google কাস্ট ডিভাইসে একটি LCD স্ক্রিন বা একটি ডিভাইস-নির্দিষ্ট নিয়ন্ত্রণ অ্যাপ্লিকেশন থাকতে পারে যা মিডিয়া মেটাডেটা প্রদর্শন করে। আপনার রিসিভার অ্যাপটিকে অবশ্যই সমস্ত অডিও ট্র্যাকের জন্য এই মেটাডেটা প্রদান করতে হবে এবং মেটাডেটা প্রদর্শনে যথাযথভাবে প্রদর্শিত হয় তা নিশ্চিত করতে এটি বর্তমানে বাজানো সামগ্রীর সাথে সিঙ্কে রয়েছে তা নিশ্চিত করতে হবে। যদি অ্যাপ্লিকেশনটি কাস্টম মেটাডেটা ব্যবহার করে, তবে এটি অবশ্যই মানক অডিও মেটাডেটা (ট্র্যাক নাম, শিল্পীর নাম, অ্যালবামের শিরোনাম, ইত্যাদি) প্রদান করতে হবে যা নীচের প্রতিটি প্ল্যাটফর্মের জন্য বর্ণনা করা হয়েছে৷

রিসিভার মিডিয়া লোড করার সময় প্রেরকের কাছ থেকে মেটাডেটা পায়। আপনার প্রেরক অ্যাপে, রিসিভারে মিডিয়া লোড করার কমান্ড সহ, আপনাকে অবশ্যই নীচে বর্ণিত ক্ষেত্রগুলি নির্দিষ্ট করতে হবে যাতে মেটাডেটা অডিও ডিভাইসের জন্য Google Cast-এ প্রদর্শিত হয়৷ নিম্নলিখিত API ব্যবহার করুন:

কাস্ট অ্যাপ যদি রিসিভারে বা ক্লাউডে একটি মিডিয়া সারি পরিচালনা করে, তাহলে ওয়েব রিসিভারকে অবশ্যই urn:x-cast:com.google.cast.media নামস্থান ব্যবহার করে যেকোন মিডিয়া স্ট্যাটাস আপডেট সম্প্রচার করতে হবে যাতে সমস্ত প্রেরক সিঙ্ক্রোনাইজ হয়৷

নিবন্ধন

আপনাকে অবশ্যই পরীক্ষার জন্য অডিও ডিভাইসের জন্য আপনার Google Cast নিবন্ধন করতে হবে এবং Google Cast SDK বিকাশকারী কনসোল ব্যবহার করে অডিও ডিভাইসের জন্য Google Cast সমর্থন করতে আপনার অ্যাপ নিবন্ধন করতে হবে৷

  • ডিভাইস নিবন্ধন সম্পর্কে আরো তথ্যের জন্য ডিভাইস দেখুন.
  • আপনার অ্যাপটিকে অডিও ডিভাইসের জন্য Google Cast আবিষ্কার করার অনুমতি দিতে আপনার অ্যাপ্লিকেশন নিবন্ধন করার সময় আপনাকে অবশ্যই কেবলমাত্র অডিও ডিভাইসগুলিতে কাস্টিং সমর্থন করে চেকবক্সটি চেক করতে হবে৷ আপনার আবেদন নিবন্ধন দেখুন.

অপ্রকাশিত অ্যাপ্লিকেশানগুলির জন্য, যেমন পরীক্ষার জন্য ব্যবহার করা হয়, আপনাকে অবশ্যই অডিও-অডিও ডিভাইসগুলিকে সমর্থন করার বিকল্পটি নির্বাচন করতে হবে যাতে অ্যাপটি কেবলমাত্র অডিও ডিভাইসগুলি আবিষ্কার করতে পারে৷

গুগল অডিও 2.0 এর জন্য কাস্ট

গুগল কাস্ট ফর অডিও (জিসি 4 এ) ২.০ হ'ল পরবর্তী প্রজন্মের কাস্ট অডিও প্ল্যাটফর্ম যা কম মেমরি ডিভাইসগুলিকে লক্ষ্য করার জন্য ডিজাইন করা হয়েছে, ডিভাইসগুলির বাস্তুতন্ত্রকে প্রসারিত করতে আপনার সামগ্রীটি প্রবাহিত করতে পারে। যেহেতু জিসি 4 এ 2.0 অডিও প্ল্যাটফর্মগুলিকে লক্ষ্য করে, ওয়েব এপিআই সেটটি প্রদর্শনহীন ডিভাইসের সাথে সারিবদ্ধ হওয়ার জন্য হ্রাস করা হয়। জিসি 4 এ 2.0 নতুন এবং বিদ্যমান স্পিকারগুলিতে রোল আউট করছে যা কাস্টকে সমর্থন করে।

পরীক্ষা এবং ডিবাগিং

যেহেতু সমস্ত সমর্থিত স্পিকারগুলি জিসি 4 এ 2.0 এ স্থানান্তরিত হবে, অডিও অ্যাপ্লিকেশন বিকাশকারীরা তাদের অ্যাপ্লিকেশনগুলি জিসি 4 এ 2.0 এ পরীক্ষা করা গুরুত্বপূর্ণ। আপনি এখানে তালিকাভুক্ত জিসি 4 এ 2.0 ডিভাইসের যে কোনওটিতে জিসি 4 এ 2.0 এর জন্য আপনার কাস্ট অ্যাপটি পরীক্ষা করতে পারেন।

জিসি 4 এ 2.0 ক্রোম রিমোট ডিবাগার সমর্থন করে না। আপনি যদি আপনার অ্যাপটি ডিবাগ করতে চান তবে গুগল কাস্ট ডিবাগ লগারটি ব্যবহার করার পরামর্শ দেয়।

উপলব্ধ GC4A 2.0 ডিভাইস

এটি জিসি 4 এ 2.0 ডিভাইসের একটি অ-বিস্তৃত তালিকা:

  • বোস: ওয়াইফাই স্পিকার এবং স্মার্ট সাউন্ডবার
  • জেবিএল: চার্জ 5 ওয়াই-ফাই / বুমবক্স 3 ওয়াই-ফাই / প্রমাণীকরণ 200, 300, এবং 500
  • স্যামসুং: সঙ্গীত ফ্রেম / সাউন্ডবার
  • এলজি: সাউন্ডবারস এস 90 টি/এসজি 10 টি/এসই 70 কিউ/এস 80 কিউ/এস 90 কিউ
  • ব্যাং এবং ওলুফসেন বিওসাউন্ড 2 / বোকোর কানেক্ট
  • সোনোরো মায়েস্ট্রো 2 / মিস্টারস্ট্রাক 2
  • কেমব্রিজ অডিও এমএক্সএন 10
  • কেএফ এলএস 60 / এলএসএক্স II
  • টিউফেল মোটিভ হোম
  • নর্ডিক আর্গন অডিও
  • ওয়াইম সিআই মোড এস / আল্ট্রা

জিসি 4 এ 2.0 এ সমস্ত অ্যাপ্লিকেশন বৈশিষ্ট্যগুলির পরীক্ষার প্রস্তাব দেওয়া হয়। সমস্ত মিডিয়া প্রকার (পডকাস্ট, স্ট্রিমস ইত্যাদি) খেলতে, বিরতি, স্ক্রাবিং, এড়িয়ে যাওয়া, প্লেলিস্ট পরিবর্তন করা, থামানো এবং কাস্ট পুনরায় সংযোগ স্থাপনের পরীক্ষা অন্তর্ভুক্ত করার বিষয়ে নিশ্চিত হন।

সমর্থিত API

জিসি 4 এ 2.0 নিম্নলিখিত এপিআইগুলিকে সমর্থন করে:

  • এইচটিএমএল
  • জাভাস্ক্রিপ্ট ইসিএমএ 6
  • ডমপার্সার
  • Xmlserializer
  • নথি এবং সাবক্লাস
  • ডকুমেন্ট ফ্র্যাগমেন্ট
  • Htmlmediaelement & htmlaudioelement
  • এইচটিএমএলভিডোইলিমেন্ট (কেবল অডিও সামগ্রী খেলতে পারে)
  • Htmlscriptelement
  • এইচটিএমএলবেসেলিমেন্ট
  • Htmltemplateelement
  • কাস্টম উপাদান
  • ছায়া DOM
  • স্ক্রিপ্ট মডিউল / অ্যাসিঙ্ক / মুলতুবি
  • আনুন / এক্সএইচআর
  • ওয়েবসকেট
  • মেসেজপোর্ট
  • কুকিজ
  • এমএসই (মিডিয়া উত্স এক্সটেনশন)
  • ইএমই (এনক্রিপ্টড মিডিয়া এক্সটেনশন)
  • স্থানীয় / সেশন স্টোরেজ

জিসি 4 এ 2.0 সমর্থন করে না :

  • গতিশীল মডিউল আমদানি (2024 সালে যুক্ত করা হবে)
  • সিএসএস
  • আইফ্রেম
  • টেক্সটট্র্যাকস

শনাক্তকরণ

যদিও কাস্ট রিসিভার অ্যাপ্লিকেশনগুলি সমস্ত কাস্ট ডিভাইসের জন্য সর্বজনীন বলে আশা করা হচ্ছে, আপনি কোন ডিভাইসে আপনি চালাচ্ছেন তা সনাক্ত করতে কখনও কখনও সহায়ক হতে পারে। জিসি 4 এ 2.0 ডিভাইসগুলি ব্যবহারকারী এজেন্ট স্ট্রিং ব্যবহার করে চিহ্নিত করা যেতে পারে।

  • সমস্ত কাস্ট ডিভাইসে CrKey/ এবং একটি সংস্করণ রয়েছে। প্রাক্তন: CrKey/1.68.000001
  • জিসি 4 এ 2.0 ডিভাইসে Castlite/ এবং একটি সংস্করণ রয়েছে। প্রাক্তন: Castlite/1.0

যোগাযোগ

আপনার যদি পরীক্ষার জন্য সেট আপ করার প্রয়োজন হয় বা বোস স্পিকার ব্যবহার করতে অক্ষম হন তবে দয়া করে GC4A-Support- এক্সটার্নাল@google.com এ যোগাযোগ করুন।

,

অডিও ডিভাইসগুলির জন্য গুগল কাস্ট কেবল অডিও প্লেব্যাক সমর্থন করে। এই গাইডটি কীভাবে অডিও-কেবলমাত্র ডিভাইসের জন্য কাস্ট অ্যাপ্লিকেশনগুলি অনুকূল করতে পারে এবং মেমরি, সিপিইউ এবং নেটওয়ার্ক ব্যান্ডউইথ ব্যবহারের ক্ষেত্রে হ্রাস করা চাহিদাগুলির সুবিধা গ্রহণ করতে পারে তা বর্ণনা করে।

অডিওর জন্য গুগল কাস্টকে সমর্থন করে এমন একটি অ্যাপ্লিকেশন অবশ্যই নিম্নলিখিতগুলি বিবেচনায় নিতে হবে:

  • অডিও ডিভাইসের জন্য গুগল কাস্ট ভিডিও বা গ্রাফিক্স প্রদর্শন করে না। যাইহোক, অনেক অডিও ডিভাইসে মেটাডেটা দেখানোর জন্য একটি প্রদর্শন রয়েছে যেমন প্লেব্যাক স্টেট (বাজানো বা বিরতি দেওয়া) এবং অগ্রগতি। আপনার অ্যাপ্লিকেশনটি অবশ্যই রিসিভারে এই জাতীয় সমালোচনামূলক ব্যবহারকারীর তথ্য প্রদর্শন করবে না; সমালোচনামূলক তথ্য এবং বেশিরভাগ ব্যবহারকারী ইন্টারফেস অবশ্যই প্রেরকের উপর প্রদর্শিত হবে।
  • ওয়েব রিসিভার অ্যাপ্লিকেশনগুলি সঠিকভাবে চালানোর জন্য, অডিও ডিভাইসগুলির জন্য গুগল কাস্টের জন্য এখনও গ্রাফিক্স রেন্ডার করতে হবে, যদিও সেগুলি প্রদর্শিত হবে না। যেহেতু ডিভাইসগুলি হার্ডওয়্যার-এক্সিলারেটেড গ্রাফিক্স অপারেশনগুলিকে সমর্থন করতে পারে না, তাই রিসিভার অ্যাপ্লিকেশনগুলি গ্রাফিক্স-নিবিড় ক্রিয়াকলাপ যেমন রঙ গ্রেডিয়েন্টস, রোটেশন, আলফা মিশ্রণ এবং প্রতি সেকেন্ডে একাধিকবার অগ্রগতি বারের মতো বড় বড় অবজেক্টগুলিকে পুনরায় আঁকানো এড়ানো উচিত।
  • অডিও ডিভাইসগুলির জন্য গুগল কাস্ট কেবল ডিজিটাল রাইটস ম্যানেজমেন্ট (ডিআরএম) সুরক্ষিত সামগ্রীর জন্য ওয়াইডভাইনকে সমর্থন করে।
  • অডিও ডিভাইসের জন্য বেশিরভাগ গুগল কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশন ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে (উদাহরণস্বরূপ একটি স্পিকার), কেবল ক্রোমকাস্ট ডিভাইসের মতো টিভিতে অডিও উত্স ইনপুটটির ভলিউম নয়।
  • প্রেরক ডিভাইসের সাথে প্লেব্যাক নিয়ন্ত্রণ করার পাশাপাশি (উদাহরণস্বরূপ একটি ফোন), অ্যাপ্লিকেশনটিকে ডিভাইসের নিজস্ব নিয়ামক যেমন রিমোট কন্ট্রোল, অন-ডিভাইস বোতামগুলি বা একটি বাহ্যিক দূরবর্তী অ্যাপ্লিকেশনগুলির সাথে প্লেব্যাক নিয়ন্ত্রণ করার জন্য সরবরাহ করতে হতে পারে।
  • অডিও ডিভাইসের জন্য একটি গুগল কাস্ট একটি ছোট এলসিডি স্ক্রিন, এইচডিএমআই আউটপুট (সাউন্ডবার বা অডিও-ভিডিও রিসিভারগুলির জন্য), বা নির্দিষ্ট ডিভাইস ইউআইয়ের উপর নির্ভর করে একটি বাহ্যিক দূরবর্তী অ্যাপ্লিকেশন সহ সামগ্রী মেটাডেটা প্রদর্শনকারী সমর্থন করতে পারে।

উন্নয়ন

অডিওর জন্য গুগল কাস্টকে সমর্থন করার জন্য কাস্ট অ্যাপ্লিকেশন বিকাশের প্রথম পদক্ষেপটি হ'ল অডিও-ভিডিওর জন্য একটি কাস্ট অ্যাপ্লিকেশন বিকাশ করা এবং এটি নিশ্চিত করা যায় যে এটি ক্রোমকাস্টে চলে। এই দস্তাবেজটি ধরে নিয়েছে যে আপনি এই জাতীয় অ্যাপ্লিকেশনটি বিকাশ করেছেন এবং পরীক্ষা করেছেন।

একটি অ্যাপ্লিকেশন অডিও-ভিডিও এবং কেবলমাত্র অডিও-কেবল ডিভাইস উভয়কেই সমর্থন করতে পারে। এটি যখন অন্যটির বিপরীতে কাস্ট করা হয় তখন এটি জানতে হবে এবং প্রদত্ত দৃশ্যের অধীনে সেরা ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করার জন্য ব্যবস্থা গ্রহণ করা উচিত।

উদাহরণস্বরূপ, দ্বৈত ভিডিও এবং অডিও অ্যাপ্লিকেশনগুলি (স্থানীয়/এনএএস ফাইল প্লেব্যাক অ্যাপ্লিকেশনগুলির মতো) অডিও ফাইলগুলি খেলতে সমর্থন করার জন্য অডিও-কেবলমাত্র ডিভাইসে কাস্টিং সক্ষম করা উচিত, তবে অ্যাপ্লিকেশনটি ব্যবহারকারীকে কেবল অডিও-কেবল ডিভাইসে ভিডিও ফাইলগুলি প্রেরণ করতে দেয় না। ডিভাইসটির জন্য উপযুক্ত সামগ্রী নির্ধারণ করতে অ্যাপটি নীচে বর্ণিত প্রেরকদের জন্য ডিভাইস ক্ষমতা এপিআই ব্যবহার করতে পারে।

অডিওর জন্য গুগল কাস্ট সমর্থন করতে, আপনার অ্যাপ্লিকেশনটি অবশ্যই নিম্নলিখিতগুলি করতে হবে:

  • সমর্থন অডিও-কেবল: স্ট্রিমিং মিউজিক এবং অডিও ফাইল, রেডিও ইত্যাদি ওয়েব রিসিভার অ্যাপে স্ট্রিম করা মিডিয়া কোনও ভিডিও স্ট্রিম হওয়া উচিত নয়। এছাড়াও, অ্যাপ্লিকেশন লঞ্চের সময় এবং মেমরির ব্যবহার উন্নত করতে গ্রাফিক্স এবং চিত্রগুলি স্ট্রিমিং এড়িয়ে চলুন। নীচে মেমরি ব্যবহারের নির্দেশিকা দেখুন।

  • অডিও ডিভাইসের পাশাপাশি নিয়মিত ক্রোমকাস্টের জন্য কাস্টে প্রত্যাশিত হিসাবে চালান।

ডিভাইসের ক্ষমতা

আপনার অ্যাপ্লিকেশনটি জানতে পারে যে এটি ডিভাইস সক্ষমতা এপিআইগুলির গুণাবলী দ্বারা বা প্রেরক বা রিসিভার এপিআইয়ের মাধ্যমে উপলব্ধ ডিভাইস সক্ষমতা এপিআইগুলির গুণাবলী দ্বারা এটি কেবল একটি অডিও-ডিভাইসে চলছে কিনা।

ডিভাইস http শিরোনাম

অ্যাপ্লিকেশন লঞ্চ চলাকালীন কাস্ট ডিভাইস দ্বারা সরবরাহিত CAST-DEVICE-CAPABILITIES এইচটিটিপি শিরোনাম ডিভাইসের ক্ষমতাগুলি বর্ণনা করে। ডিভাইসটি ওয়েব রিসিভার অ্যাপ্লিকেশন হোস্টিং সার্ভারে এই শিরোনাম সহ একটি অনুরোধ প্রেরণ করে। একটি অডিও-কেবল ডিভাইসের শিরোনামটি CAST-DEVICE-CAPABILITIES: {"display_supported":false}

যখন আপনার সার্ভারটি ডিভাইস থেকে অনুরোধটি গ্রহণ করে, আপনি এই শিরোনামে তথ্যটি ওয়েব রিসিভার অ্যাপ্লিকেশনটিতে অনুরোধটি পুনর্নির্দেশ করতে ব্যবহার করতে পারেন যা অডিও ডিভাইসের জন্য অনুকূলিত।

ওয়েব রিসিভার এপিআই

ওয়েব রিসিভার অ্যাপটি লোড হয়ে গেলে আপনি CastReceiverManager.getDeviceCapabilities() কল করে একই ডিভাইস ক্ষমতা অবজেক্টটি পেতে পারেন।

আরও তথ্যের জন্য ডিভাইস ক্ষমতা দেখুন।

প্রেরক এপিআই

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

স্মৃতি ব্যবহারের নির্দেশিকা

অডিও ডিভাইসে চলমান ওয়েব রিসিভার অ্যাপ্লিকেশনগুলি অবশ্যই মেমরির ব্যবহারগুলি নিম্নলিখিত হিসাবে পরিচালনা করতে হবে:

  • মেমরির পদচিহ্ন হ্রাস করতে এবং প্লেব্যাক শুরু না হওয়া পর্যন্ত সময়টি সংক্ষিপ্ত করতে কোনও চিত্র বা গ্রাফিক্স সম্পদ ডাউনলোড করা বা ব্যবহার করা এড়িয়ে চলুন।
  • মিডিয়া সোর্স এক্সটেনশনস (এমএসই) ব্যবহার করার সময়, অ্যাপ্লিকেশনগুলি অবশ্যই স্ট্রিম বাফারটিকে 2 এমবিতে সীমাবদ্ধ করতে হবে। যদি মিডিয়া প্লেয়ার লাইব্রেরি (এমপিএল) ব্যবহার করে তবে অ্যাপ্লিকেশনটির স্ট্রিম বাফার আকারটি ইতিমধ্যে এমপিএল দ্বারা সংজ্ঞায়িত করা হয়েছে।
  • এইচটিএমএলমিডিয়েলিমেন্ট ব্যবহার করার সময়, অ্যাপ্লিকেশনটির স্ট্রিম বাফার আকারটি স্ট্রিম হারের ভিত্তিতে ক্রোম দ্বারা সংজ্ঞায়িত করা হয়। অডিও বিটরেটকে প্রতি সেকেন্ডে 2 মেগাবিটগুলিতে সীমাবদ্ধ করুন, যা সমর্থিত মিডিয়াতে বর্ণিত সমস্ত কোডেককে সমর্থন করে (48kHz/16 বিট পর্যন্ত)।

ভলিউম নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য বেশিরভাগ গুগল কাস্টের জন্য, প্রেরক অ্যাপ্লিকেশনটি ক্রোমকাস্ট ডিভাইসের মতো কেবল অডিও উত্স ইনপুট ভলিউম নয়, ডিভাইসের সম্পূর্ণ ভলিউম পরিসীমা নিয়ন্ত্রণ করে। এর অর্থ অডিও-কেবলমাত্র অ্যাপ্লিকেশনগুলির জন্য ভলিউম পরিবর্তন ইনক্রিমেন্টগুলি আরও ছোট হতে হবে। আপনার অ্যাপ্লিকেশনটিতে ভলিউম নিয়ন্ত্রণ সরবরাহের জন্য নির্দেশিকাগুলির জন্য নিম্নলিখিত নথিগুলি দেখুন:

ডিভাইস নিয়ন্ত্রণ

অডিও ডিভাইসের জন্য গুগল কাস্টের নিজস্ব প্লেব্যাক নিয়ন্ত্রণ থাকতে পারে (যেমন বোতাম, রিমোটস)। এগুলি urn:x-cast:com.google.cast.media নেমস্পেস, যেমন মিডিয়া প্লেব্যাক বার্তাগুলিতে বর্ণিত, রিসিভার অ্যাপ্লিকেশনটিতে প্লেব্যাক নিয়ন্ত্রণ করতে। আপনার রিসিভার অ্যাপ্লিকেশনটি অবশ্যই ডিভাইসের প্লেব্যাক নিয়ন্ত্রণগুলি সমর্থন করতে এই মিডিয়া প্লেব্যাক বার্তাগুলিকে সমর্থন করবে।

এছাড়াও, আপনার প্রেরক অ্যাপ্লিকেশনটির রিসিভার থেকে প্রেরকের কাছে বার্তাগুলি সমর্থন করা উচিত যাতে ব্যবহারকারী যদি ডিভাইস নিয়ন্ত্রণের সাথে মিডিয়া স্টেট পরিবর্তন করে তবে আপনার প্রেরক অ্যাপ্লিকেশনটি রিসিভার থেকে একটি স্থিতি বার্তা পেতে পারে এবং সেই অনুযায়ী ইউআই আপডেট করতে পারে।

ডিভাইস প্রদর্শন

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

মিডিয়া লোড করার সময় রিসিভার প্রেরকের কাছ থেকে মেটাডেটা পায়। আপনার প্রেরক অ্যাপে, রিসিভারে মিডিয়া লোড করার কমান্ড সহ, আপনাকে অবশ্যই নীচে বর্ণিত ক্ষেত্রগুলি নির্দিষ্ট করতে হবে যাতে মেটাডেটা অডিও ডিভাইসের জন্য গুগল কাস্টে প্রদর্শিত হবে। নিম্নলিখিত এপিআই ব্যবহার করুন:

যদি কাস্ট অ্যাপটি রিসিভারে বা মেঘে কোনও মিডিয়া সারি পরিচালনা করে তবে ওয়েব রিসিভারকে অবশ্যই urn:x-cast:com.google.cast.media নেমস্পেস ব্যবহার করে যে কোনও মিডিয়া স্ট্যাটাস আপডেটগুলি সম্প্রচার করতে হবে যাতে সমস্ত প্রেরককে সিঙ্ক্রোনাইজ করা যায়।

নিবন্ধন

গুগল কাস্ট এসডিকে বিকাশকারী কনসোলটি ব্যবহার করে আপনাকে অডিও ডিভাইসের জন্য গুগল কাস্ট সমর্থন করার জন্য আপনার অ্যাপ্লিকেশনটির জন্য আপনার গুগল কাস্টের জন্য অডিও ডিভাইসের জন্য নিবন্ধন করতে হবে এবং নিবন্ধন করতে হবে।

  • ডিভাইসগুলি নিবন্ধকরণ সম্পর্কে আরও তথ্যের জন্য ডিভাইসগুলি দেখুন।
  • আপনার অ্যাপ্লিকেশনটি অডিও ডিভাইসের জন্য গুগল কাস্ট আবিষ্কার করার জন্য আপনার অ্যাপ্লিকেশনটি নিবন্ধভুক্ত করার সময় আপনাকে অবশ্যই অডিও-কেবলমাত্র ডিভাইসগুলি চেকবক্সে কাস্টিংগুলি পরীক্ষা করতে হবে। আপনার অ্যাপ্লিকেশন নিবন্ধন দেখুন।

অপ্রকাশিত অ্যাপ্লিকেশনগুলির জন্য যেমন পরীক্ষার জন্য ব্যবহৃত হয়, আপনাকে অ্যাপ্লিকেশনটিকে অডিও-কেবলমাত্র ডিভাইসগুলি আবিষ্কার করার জন্য আপনাকে অবশ্যই অডিও-কেবলমাত্র ডিভাইসগুলিকে সমর্থন করার বিকল্পটিও নির্বাচন করতে হবে।

গুগল অডিও 2.0 এর জন্য কাস্ট

গুগল কাস্ট ফর অডিও (জিসি 4 এ) ২.০ হ'ল পরবর্তী প্রজন্মের কাস্ট অডিও প্ল্যাটফর্ম যা কম মেমরি ডিভাইসগুলিকে লক্ষ্য করার জন্য ডিজাইন করা হয়েছে, ডিভাইসগুলির বাস্তুতন্ত্রকে প্রসারিত করতে আপনার সামগ্রীটি প্রবাহিত করতে পারে। যেহেতু জিসি 4 এ 2.0 অডিও প্ল্যাটফর্মগুলিকে লক্ষ্য করে, ওয়েব এপিআই সেটটি প্রদর্শনহীন ডিভাইসের সাথে সারিবদ্ধ হওয়ার জন্য হ্রাস করা হয়। জিসি 4 এ 2.0 নতুন এবং বিদ্যমান স্পিকারগুলিতে রোল আউট করছে যা কাস্টকে সমর্থন করে।

পরীক্ষা এবং ডিবাগিং

যেহেতু সমস্ত সমর্থিত স্পিকারগুলি জিসি 4 এ 2.0 এ স্থানান্তরিত হবে, অডিও অ্যাপ্লিকেশন বিকাশকারীরা তাদের অ্যাপ্লিকেশনগুলি জিসি 4 এ 2.0 এ পরীক্ষা করা গুরুত্বপূর্ণ। আপনি এখানে তালিকাভুক্ত জিসি 4 এ 2.0 ডিভাইসের যে কোনওটিতে জিসি 4 এ 2.0 এর জন্য আপনার কাস্ট অ্যাপটি পরীক্ষা করতে পারেন।

জিসি 4 এ 2.0 ক্রোম রিমোট ডিবাগার সমর্থন করে না। আপনি যদি আপনার অ্যাপটি ডিবাগ করতে চান তবে গুগল কাস্ট ডিবাগ লগারটি ব্যবহার করার পরামর্শ দেয়।

উপলব্ধ GC4A 2.0 ডিভাইস

এটি জিসি 4 এ 2.0 ডিভাইসের একটি অ-বিস্তৃত তালিকা:

  • বোস: ওয়াইফাই স্পিকার এবং স্মার্ট সাউন্ডবার
  • জেবিএল: চার্জ 5 ওয়াই-ফাই / বুমবক্স 3 ওয়াই-ফাই / প্রমাণীকরণ 200, 300, এবং 500
  • স্যামসুং: সঙ্গীত ফ্রেম / সাউন্ডবার
  • এলজি: সাউন্ডবারস এস 90 টি/এসজি 10 টি/এসই 70 কিউ/এস 80 কিউ/এস 90 কিউ
  • ব্যাং এবং ওলুফসেন বিওসাউন্ড 2 / বোকোর কানেক্ট
  • সোনোরো মায়েস্ট্রো 2 / মিস্টারস্ট্রাক 2
  • কেমব্রিজ অডিও এমএক্সএন 10
  • কেএফ এলএস 60 / এলএসএক্স II
  • টিউফেল মোটিভ হোম
  • নর্ডিক আর্গন অডিও
  • ওয়াইম সিআই মোড এস / আল্ট্রা

জিসি 4 এ 2.0 এ সমস্ত অ্যাপ্লিকেশন বৈশিষ্ট্যগুলির পরীক্ষার প্রস্তাব দেওয়া হয়। সমস্ত মিডিয়া প্রকার (পডকাস্ট, স্ট্রিমস ইত্যাদি) খেলতে, বিরতি, স্ক্রাবিং, এড়িয়ে যাওয়া, প্লেলিস্ট পরিবর্তন করা, থামানো এবং কাস্ট পুনরায় সংযোগ স্থাপনের পরীক্ষা অন্তর্ভুক্ত করার বিষয়ে নিশ্চিত হন।

সমর্থিত API

জিসি 4 এ 2.0 নিম্নলিখিত এপিআইগুলিকে সমর্থন করে:

  • এইচটিএমএল
  • জাভাস্ক্রিপ্ট ইসিএমএ 6
  • ডমপার্সার
  • Xmlserializer
  • নথি এবং সাবক্লাস
  • ডকুমেন্ট ফ্র্যাগমেন্ট
  • Htmlmediaelement & htmlaudioelement
  • এইচটিএমএলভিডোইলিমেন্ট (কেবল অডিও সামগ্রী খেলতে পারে)
  • Htmlscriptelement
  • এইচটিএমএলবেসেলিমেন্ট
  • Htmltemplateelement
  • কাস্টম উপাদান
  • ছায়া DOM
  • স্ক্রিপ্ট মডিউল / অ্যাসিঙ্ক / মুলতুবি
  • আনুন / এক্সএইচআর
  • ওয়েবসকেট
  • মেসেজপোর্ট
  • কুকিজ
  • এমএসই (মিডিয়া উত্স এক্সটেনশন)
  • ইএমই (এনক্রিপ্টড মিডিয়া এক্সটেনশন)
  • স্থানীয় / সেশন স্টোরেজ

জিসি 4 এ 2.0 সমর্থন করে না :

  • গতিশীল মডিউল আমদানি (2024 সালে যুক্ত করা হবে)
  • সিএসএস
  • আইফ্রেম
  • টেক্সটট্র্যাকস

শনাক্তকরণ

যদিও কাস্ট রিসিভার অ্যাপ্লিকেশনগুলি সমস্ত কাস্ট ডিভাইসের জন্য সর্বজনীন বলে আশা করা হচ্ছে, আপনি কোন ডিভাইসে আপনি চালাচ্ছেন তা সনাক্ত করতে কখনও কখনও সহায়ক হতে পারে। জিসি 4 এ 2.0 ডিভাইসগুলি ব্যবহারকারী এজেন্ট স্ট্রিং ব্যবহার করে চিহ্নিত করা যেতে পারে।

  • সমস্ত কাস্ট ডিভাইসে CrKey/ এবং একটি সংস্করণ রয়েছে। প্রাক্তন: CrKey/1.68.000001
  • জিসি 4 এ 2.0 ডিভাইসে Castlite/ এবং একটি সংস্করণ রয়েছে। প্রাক্তন: Castlite/1.0

যোগাযোগ

আপনার যদি পরীক্ষার জন্য সেট আপ করার প্রয়োজন হয় বা বোস স্পিকার ব্যবহার করতে অক্ষম হন তবে দয়া করে GC4A-Support- এক্সটার্নাল@google.com এ যোগাযোগ করুন।