ChromeOS সামঞ্জস্যপূর্ণ - USB হেডসেট স্পেসিফিকেশন v1.2

সংস্করণ: ১.২.১
সর্বশেষ হালনাগাদ: ২০২৪-০৬-১৪

কিংবদন্তি

পণ্য ক্রিয়া উন্নয়নমূলক পদক্ষেপ
"অবশ্যই" বাধ্যতামূলক পণ্যের প্রয়োজনীয়তা
"উচিত" ঐচ্ছিক সুপারিশ
"মে" থাকলে ভালো

সংক্ষিপ্ত বিবরণ

এই নথিতে একটি ChromeOS Compatible USB হেডসেটের জন্য প্রয়োজনীয় শর্তাবলী বর্ণনা করা হয়েছে। এই স্পেসিফিকেশনটি WWCB পণ্যের জন্য নয়, অথবা Chromebook-এর সাথে একত্রে ডিজাইন ও সার্টিফাই করা কোনো পণ্যের জন্যও নয়।

ইউএসবি

নিরাপত্তা

২.৪ গিগাহার্টজ ওয়্যারলেস ডংগল

  • ২.৪ গিগাহার্টজ ওয়্যারলেস ডিভাইসটি শুধুমাত্র বক্সের সাথে আসা রিসিভারটির (ডঙ্গল) সাথেই স্বয়ংক্রিয়ভাবে পেয়ার হয়।
  • হেডসেটকে অন্য রিসিভারের সাথে অথবা নতুন হেডসেটকে বিদ্যমান রিসিভারের সাথে যুক্ত করতে ব্যবহারকারীর পদক্ষেপ (ডিভাইসে অথবা অ্যাপের মাধ্যমে) প্রয়োজন।
  • হেডসেট/রিসিভারের পেয়ারিং পরিবর্তন করার জন্য যদি কোনো অ্যাপের প্রয়োজন হয়, তবে অ্যাপটিকে অবশ্যই ChromeOS-এ চালাতে হবে, যেমন কোনো এক্সটেনশনের মাধ্যমে। অ্যাপটি WebUSB/WebHID ব্যবহার করে একটি ওয়েব অ্যাপও হতে পারে।
  • যদি কোনো এক্সটেনশনের মাধ্যমে পেয়ারিং করা হয়, তবে এক্সটেনশনটির শুধুমাত্র ইউএসবি পোর্টে অ্যাক্সেস থাকতে হবে। কন্টেন্ট স্ক্রিপ্ট স্পষ্টভাবে নিষিদ্ধ।

ফার্মওয়্যার এবং সংযোগকারী

  • হেডসেটকে অবশ্যই একটি সঠিক অডিও ইন্টারফেস (0x01) ডেসক্রিপ্টর সহ একটি অডিও ডিভাইস হিসাবে ঘোষণা করতে হবে।
    • ইনপুট এবং আউটপুট টার্মিনাল উভয়ের জন্য একটি সংশ্লিষ্ট বর্ণনাকারী অবশ্যই থাকতে হবে।
      • ইউএসবি অডিও ক্লাস (ইউএসি) টার্মিনাল টাইপ রিপোর্ট করার পরামর্শ দেওয়া হয়।
  • যদি এতে কোনো বাটন থাকে, তবে এটিকে HID হিসেবে ঘোষণা করতে হবে।
  • হেডসেটটিকে অবশ্যই WWCB ফার্মওয়্যার এবং কানেক্টরের প্রয়োজনীয়তা পূরণ করতে হবে।

সফটওয়্যার

ফর্ম্যাট

অনুগ্রহ করে অডিও ফরম্যাট দেখুন।

যে ডিভাইসে ইনপুট এবং আউটপুট উভয় অডিও ইন্টারফেস ডেসক্রিপ্টর আছে।

  • অডিও ইন্টারফেস বর্ণনাকারীর উদাহরণ

    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0
      iInterface              0
    

যদি ইনপুট এবং আউটপুটের স্যাম্পল রেট ভিন্ন হয়, তবে ডিভাইসটিকে অবশ্যই একই সময়ে ভিন্ন ভিন্ন স্যাম্পল রেটে প্লেব্যাক এবং ক্যাপচার সমর্থন করতে সক্ষম হতে হবে। অন্যথায়, ডিভাইসটিকে অবশ্যই AudioStreaming Interface Descriptor -> tSamFreq এ একই মান প্রতিফলিত করতে হবে।

  • ৪৮কে ইউএসবি অডিও আউটপুট স্যাম্পল রেটের উদাহরণ

    AudioStreaming Interface Descriptor:
      bLength                11
      bDescriptorType        36
      bDescriptorSubtype      2 (FORMAT_TYPE)
      bFormatType             1 (FORMAT_TYPE_I)
      bNrChannels             2
      bSubframeSize           2
      bBitResolution         16
      bSamFreqType            1 Discrete
      tSamFreq[ 0]        48000
    Endpoint Descriptor:
      bLength                 9
      bDescriptorType         5
      bEndpointAddress     0x02  EP 2 OUT(Output)
      bmAttributes            9
        Transfer Type            Isochronous
        Synch Type               Adaptive
        Usage Type               Data
    
  • ৪৪.১কে ইউএসবি অডিও ইনপুট স্যাম্পল রেটের উদাহরণ

    AudioStreaming Interface Descriptor:
      bLength                11
      bDescriptorType        36
      bDescriptorSubtype      2 (FORMAT_TYPE)
      bFormatType             1 (FORMAT_TYPE_I)
      bNrChannels             2
      bSubframeSize           2
      bBitResolution         16
      bSamFreqType            1 Discrete
      tSamFreq[ 0]        44100
    Endpoint Descriptor:
      bLength                 9
      bDescriptorType         5
      bEndpointAddress     0x81  EP 1 In(Input)
      bmAttributes            9
        Transfer Type            Isochronous
        Synch Type               Adaptive
        Usage Type               Data
    

এইচআইডি কোড

  • প্রতিটি HID ইভেন্টের জন্য, এটি একবারে শুধুমাত্র একবারই একটি ইভেন্ট প্রেরণ করতে পারে।
  • বাটনটি চাপলে সঠিক ইভেন্ট কোড এবং সংশ্লিষ্ট ইভেন্ট কোড পাওয়া উচিত।
    • উদাহরণস্বরূপ, ভলিউম বাড়ান। evtest শুধুমাত্র একটি ভলিউম আপ ইভেন্ট পর্যবেক্ষণ করতে পারে এবং কোডটি অবশ্যই KEY_VOLUME_UP হতে হবে।
  • যদি নিম্নলিখিত কার্যকারিতাগুলি প্রদানের জন্য ডিজাইন করা কোনো ইন্টারফেস থাকে, তবে USB পেরিফেরালটিকে অবশ্যই USB.org HID স্পেসিফিকেশন অনুযায়ী সংশ্লিষ্ট HID ইভেন্টগুলি নির্গমন বা গ্রহণ সমর্থন করতে হবে।
ভোক্তা পৃষ্ঠা (0x0c)
চাবির নাম এইচআইডি ব্যবহারের আইডি ব্যবহারের ধরণ
KEY_PLAY 0x0b0 OOC
KEY_PAUSE 0x0b1 OOC
KEY_NEXTSONG 0x0b5 ওএসসি
KEY_PREVIOUSSONG 0x0b6 ওএসসি
KEY_STOPCD 0x0b7 ওএসসি
KEY_PLAYPAUSE 0x0cd ওএসসি
KEY_PREVIOUSSONG 0x0b6 ওএসসি
KEY_MUTE 0x0e2 OOC
KEY_VOLUMEUP 0x0e9 আরটিসি
KEY_VOLUMEDOWN 0x0ea আরটিসি
টেলিফোনি পৃষ্ঠা (0x0b)
চাবির নাম এইচআইডি ব্যবহারের আইডি ব্যবহারের ধরণ
হুক সুইচ 0x20 OOC
রিংগার 0x9e OOC
এলইডি পৃষ্ঠা (0x08)
চাবির নাম এইচআইডি ব্যবহারের আইডি ব্যবহারের ধরণ
মূক 0x09 OOC
অফ-হুক 0x17 OOC
আংটি 0x18 OOC

জ্যাক সনাক্তকরণ

যদি কোনো USB ডিভাইস USB Audio Class (UAC) সমর্থন না করে, তবে এটি ChromeOS সিস্টেম ট্রে-তে সর্বদা একটি আউটপুট নোড দেখাবে। তবে, যদি USB ডিভাইসটি UAC সমর্থন করে, তাহলে ডিভাইসটি প্রবেশ করালে সিস্টেমটি একটি 3.5mm অডিও জ্যাক সঠিকভাবে শনাক্ত করতে পারবে।

  • ৩.৫ মিমি জ্যাকের জন্য CrOS-কে অবশ্যই উপস্থিতি সনাক্তকরণ ব্যবহার করতে হবে।
    • নিম্নলিখিতগুলির মধ্যে যেকোনো একটির মাধ্যমে ইনসার্ট ডিটেক্ট অবশ্যই সম্পাদন করতে হবে:

অডিও ফর্ম্যাট

প্লেব্যাক রেকর্ডিং
নমুনা হার ≥ ১৬ কিলোহার্টজ ≥ ১৬ কিলোহার্টজ
ফর্ম্যাট S16_LE S16_LE
  • চ্যানেল নম্বর এবং কনফিগারেশন অবশ্যই সঠিক হতে হবে।
  • হেডসেট দ্বারা সমর্থিত বলে ঘোষিত সমস্ত স্যাম্পলিং রেট সঠিকভাবে কাজ করতে হবে।
    • পরিমাপকৃত হার এবং স্যাম্পলিং হারের মধ্যে পার্থক্য অবশ্যই ≤ ০.১% হতে হবে।
    • পরিমাপকৃত হারের রৈখিক রিগ্রেশনের জন্য প্রমিত ত্রুটি অবশ্যই ৩০-এর কম হতে হবে।
  • হেডসেটটিকে অবশ্যই তার দাবিকৃত বিভিন্ন স্যাম্পল রেটে প্লেব্যাক বা ক্যাপচার সমর্থন করতে হবে।

    উদাহরণস্বরূপ, ৪৪.১ কিলোহার্টজের নিচের অডিও চালান কিন্তু একই সাথে ৪৮ কিলোহার্টজের নিচের ভয়েস ক্যাপচার করুন।

    • অন্যথায়, সিস্টেম সাইডে এটি প্রতিরোধ করার জন্য ChromeOS-কে একটি নির্দিষ্ট কনফিগারেশন ফাইল যোগ করতে হয়।

অডিও গুণমান

ক্যাপচার পাথ - মিউট

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

অডিও লেটেন্সি

বিলম্ব

  • আউটপুট লেটেন্সি
    • ব্যবহারকারীর কোনো পদক্ষেপের মাধ্যমে প্লেব্যাক শুরু হওয়ার ৫০০ মিলিসেকেন্ডের মধ্যে অডিও প্লেব্যাক অবশ্যই শুরু হতে হবে।
      • যদি ডিভাইস প্রস্তুতকারক প্রমাণ করতে পারে যে এই শর্ত পূরণে ব্যর্থ হলেও কোনো প্রতিধ্বনি সৃষ্টি হয় না, তবে ছাড়ের জন্য অনুরোধ করা যেতে পারে।

এ/ভি সিঙ্ক

  • অডিও প্লেব্যাক ভিডিও প্লেব্যাকের সাথে সিঙ্ক্রোনাইজড হওয়া উচিত। অডিও প্লেব্যাক ভিডিওর চেয়ে ≤২৫ মিলিসেকেন্ড আগে অথবা ≤৯৫ মিলিসেকেন্ড পরে হতে পারে।

সংশোধনের ইতিহাস

তারিখ সংস্করণ নোট
২০২৪-০৬-১৪ ১.২.১ ChromeOS-এর সাথে সামঞ্জস্যপূর্ণ স্পেসিফিকেশন থেকে উদ্ভূত। অংশীদার সাইটে প্রাথমিক প্রকাশনা।
২০২২-০৯-০১ ১.২ সম্পর্কিত WWCB স্পেসিফিকেশন v1.2
২০২২-০৬-০৬ ১.১ সম্পর্কিত WWCB স্পেসিফিকেশন v1.1
২০২০-০৯-২১ ১.০ সংশ্লিষ্ট WWCB স্পেসিফিকেশন তৈরি করা হয়েছে।