Android 14 দিয়ে শুরু করে, অডিও HAL ইন্টারফেসটি Stable AIDL ব্যবহার করে সংজ্ঞায়িত করা হয়েছে। অংশীদার এবং SoC বিক্রেতাদের একটি AIDL ইন্টারফেস প্রদানের জন্য তাদের অডিও HAL পুনরায় প্রয়োগ করতে উত্সাহিত করা হয়৷
libaudiohal
লাইব্রেরির প্রসারণ AIDL HAL-এর জন্য কাঠামো সমর্থন যোগ করে। AIDL বাস্তবায়নের সাথে, অডিও নীতি কনফিগারেশন স্পেসিফিকেশন AIDL HAL-এ সরানো হয়। এই পরিবর্তনের সাথে, অডিও পলিসি ম্যানেজার (APM) বিক্রেতা-প্রদত্ত XML ফাইল থেকে এটি গ্রহণ করার পরিবর্তে HAL থেকে কনফিগারেশন পায়।
অডিও AIDL HAL API
এই বিভাগে AIDL-এর জন্য মূল, প্রভাব এবং সাধারণ HAL API-গুলি বর্ণনা করা হয়েছে।
কার্নেল ড্রাইভারের সাথে ইন্টারঅ্যাক্ট করে এমন অডিও HAL-এর নতুন সংস্করণ প্রয়োগ করার সময় রেফারেন্স হিসাবে /hardware/interfaces/audio/aidl/default/
এ AIDL API-এর ডিফল্ট বাস্তবায়ন ব্যবহার করুন।
AIDL-এর জন্য অডিও HAL ডিরেক্টরি কাঠামোর জন্য অডিও HAL README ফাইলটি দেখুন।
কোর HAL
AIDL ব্যবহার করে Core HAL-এর কিছু মূল ইন্টারফেস নিম্নরূপ:
-
IModule.aidl
হল এপিআই-এর এন্ট্রি পয়েন্ট। - স্ট্রীমগুলি একমুখী এবং
IStreamOut.aidl
এবংIStreamIn.aidl
মাধ্যমে HAL থেকে অডিও পাঠাতে বা গ্রহণ করতে AudioFlinger ব্যবহার করে। -
ITelephony.aidl
টেলিফোনি ফাংশনগুলির জন্য নির্দিষ্ট নিয়ন্ত্রণ প্রদান করে। -
IBluetooth.aidl
BT SCO এবং HFP নিয়ন্ত্রণগুলি প্রদান করে যেগুলি HIDL API-এরIPrimaryModule
এ ছিল৷ -
IConfig.aidl
সিস্টেম-ব্যাপী কনফিগারেশন পরামিতি প্রদান করে। -
ISoundDose.aidl
শব্দ ডোজ সমর্থন প্রদান করে। আরও তথ্যের জন্য সাউন্ড ডোজ দেখুন। - বিকাশে Core HAL API এর সর্বশেষ সংস্করণটি
/hardware/interfaces/audio/aidl/android/hardware/audio/core/
এ রয়েছে। - Core HAL API-এর সর্বশেষ প্রকাশিত সংস্করণটি হল
/hardware/interfaces/audio/aidl/aidl_api/android.hardware.audio.core/
এ।
প্রভাব HAL
AIDL ব্যবহার করে Effects HAL-এর কিছু মূল ইন্টারফেস নিম্নরূপ:
-
IFactory.aidl
হল এপিআই-এর এন্ট্রি পয়েন্ট। -
Descriptor.aidl
প্রভাব বাস্তবায়নের জন্য ক্ষমতা এবং বৈশিষ্ট্যের মতো সমস্ত তথ্য রয়েছে। -
Capability.aidl
প্রভাব ক্ষমতা সংজ্ঞায়িত করে যা রানটাইমে পরিবর্তন হয় না। -
Parameter.aidl
ইফেক্ট ইনস্ট্যান্স দ্বারা সমর্থিত সমস্ত প্যারামিটার সংজ্ঞায়িত করে। -
IEffect.aidl
কনফিগার এবং নির্দিষ্ট প্রভাব দৃষ্টান্ত নিয়ন্ত্রণ করতে ব্যবহৃত হয়। প্রভাব-নির্দিষ্ট পার্সেবলগুলি প্রভাবের নামে নামকরণ করা হয়েছে।
Effects HAL API-এর সর্বশেষ সংস্করণটি বিকাশে রয়েছে
/hardware/interfaces/audio/aidl/android/hardware/audio/effect/
এ।Effects HAL API-এর সর্বশেষ প্রকাশিত সংস্করণটি হল
/hardware/interfaces/audio/aidl/aidl_api/android.hardware.audio.effect
।
আরো তথ্যের জন্য অডিও প্রভাব দেখুন.
সাধারণ HAL
ডেটা স্ট্রাকচার এবং ইন্টারফেস বিভিন্ন HAL-এর মধ্যে শেয়ার করা হয় যেমন BT HAL, কোর এবং ইফেক্ট অডিও HALগুলি কমন HAL-এ রয়েছে।
বিকাশে কমন এআইডিএল এইচএএল-এর সর্বশেষ সংস্করণটি হল
/hardware/interfaces/audio/aidl/android/hardware/audio/common/
।কমন HAL API-এর সর্বশেষ প্রকাশিত সংস্করণটি হল
/hardware/interfaces/audio/aidl/aidl_api/android.hardware.audio.common/current/android/hardware/audio/common/
তে।
সাধারণ স্থিতিশীল ডেটা প্রকার
স্থিতিশীল ডেটা স্ট্রাকচার সংজ্ঞাগুলি HAL এবং ফ্রেমওয়ার্ক উভয়ই ব্যবহার করে।
বিকাশে স্থিতিশীল ডেটা প্রকারের সর্বশেষ সংস্করণটি
/system/hardware/interfaces/media/aidl/android/media/audio/common/
এ রয়েছে।স্থিতিশীল ডেটা প্রকারের সর্বশেষ প্রকাশিত সংস্করণটি হল
/system/hardware/interfaces/media/aidl_api/android.media.audio.common.types/
এ।
অডিও AIDL HAL API পরীক্ষা করা হচ্ছে
AIDL ইন্টারফেসের জন্য নতুন VTS পরীক্ষা দেওয়া হয়।
নতুন HAL সংস্করণে এমন কোনো পরিবর্তন নেই যা নিরাপত্তাকে প্রভাবিত করতে পারে।