স্যাম্পেল রেট কনভার্সন

এই নিবন্ধে Android-এর মধ্যে স্যাম্পেল রেট কনভার্সন বর্ণনা করা হয়েছে, এটি রিস্যাম্পেলিং নামেও পরিচিত। স্যাম্পেল রেট কনভার্সন সম্পর্কিত পরিভাষার জন্য, পরিভাষা দেখুন।

স্যাম্পেল রেট কনভার্সন হল একটি স্যাম্পেল রেট থেকে অন্য স্যাম্পেল রেটে আলাদা স্যাম্পেলের স্ট্রিম পরিবর্তন করার প্রসেস। স্যাম্পেল রেট কনভার্টার বা রিস্যাম্পলার হল এমন একটি মডিউল যা স্যাম্পেল রেট কনভার্সন প্রয়োগ করে। রিস্যাম্পলারের ক্ষেত্রে, আসল স্ট্রিমকে সোর্স সিগন্যাল এবং রিস্যাম্পল করা স্ট্রিমকে সিঙ্ক সিগন্যাল বলা হয়।

Android-এ বিভিন্ন জায়গায় রিস্যাম্পলার ব্যবহার করা হয়। যেমন, একটি MP3 ফাইল ৪৪.১ কিলোহার্ৎজ স্যাম্পেল রেটে এনকোড করা হতে পারে, কিন্তু এটি এমন একটি Android ডিভাইসে চালাতে হবে যা ইন্টার্নালি ৪৮ কিলোহার্ৎজ অডিও সাপোর্ট করে। সেক্ষেত্রে, ৪৪.১ kHz সোর্স স্যাম্পেল রেট থেকে MP3 আউটপুট অডিওকে আপস্যাম্পেল করে Android ডিভাইসে ব্যবহৃত ৪৮ kHz সিঙ্ক স্যাম্পেল রেটে নিয়ে যাওয়ার জন্য রিস্যাম্পলার ব্যবহার করা হবে।

রেস্যাম্পলারের বৈশিষ্ট্য মেট্রিক্স ব্যবহার করে প্রকাশ করা যেতে পারে, যার মধ্যে এগুলি অন্তর্ভুক্ত:

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

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

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

রিস্যাম্পলার ইমপ্লিমেন্টেশন

উপলভ্য রিস্যাম্পলার ইমপ্লিমেন্টেশন ঘন ঘন পরিবর্তিত হয়, এবং OEM-এর মাধ্যমে কাস্টমাইজ করা হতে পারে। সিগন্যাল বিকৃতি কম থেকে বেশি এবং কম্পিউটেশনাল জটিলতা বেশি থেকে কম ক্রমে সাজানো ডিফল্ট রিস্যাম্পলারের মধ্যে এগুলি অন্তর্ভুক্ত:

  • লিনিয়ার
  • ঘন
  • আসল কো-এফিশিয়েন্ট সহ sinc
  • সংশোধিত সহগ সহ সিঙ্ক

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

বেছে নেওয়া নির্দিষ্ট রিস্যাম্পলার ইমপ্লিমেন্টেশন নির্ভর করে ব্যবহারের কেস, লোড এবং সিস্টেম প্রপার্টির ভ্যালুর উপর af.resampler.quality। বিস্তারিত জানতে, AudioFlinger-এ অডিও রিস্যাম্পলার সোর্স কোড দেখুন।