কেন পালসিউডিও কোনও বিটি ডিভাইসে শব্দ মানের সংযোগ পরিচালনা করে?


11

আমি লিনাক্সে নতুন এবং ব্লুটুথ স্ক্রিপ্টিংয়েও নতুন। আমি এখন পর্যন্ত যা আবিষ্কার করেছি তা হ'ল:

  1. ব্লুজ হ'ল ডিফল্ট বিটি স্ট্যাক।
  2. ব্লুজেটুলস হল এমন একটি ইউটিলিটির সেট যা আপনি আরও সহজেই ব্লুজের সাথে ইন্টারঅ্যাক্ট করতে ব্যবহার করতে পারেন
  3. ডিবিস হ'ল হার্ডওয়ারের সাথে সরাসরি যোগাযোগ করার সময় ব্লুজ ইন্টারফেসের সাথে ইন্টারফেস directly
  4. সিস্টেমে অডিও তৈরির জন্য পালস অডিও একটি সাবসিস্টেম হিসাবে দায়বদ্ধ।

এইবার বুঝতে পারছি. সুতরাং আসুন আমি বলি যে আমার কাছে ব্লুথুথ হেডফোনগুলির একটি সেট রয়েছে, যা আমি প্রত্যাশা করব তা হ'ল (জুটি বাঁধার এবং বিশ্বাসের পরে), বিটি হেডফোনগুলির একটি নির্দিষ্ট প্রোফাইলের সাথে সরাসরি সংযোগ করতে পারে এমন একটি কমান্ড দিতে সক্ষম হবেন।

আমার মনে যে প্রযুক্তিগত পথটি রয়েছে তা হ'ল কিছু:

  1. হেডফোন চালু করুন।
  2. একটি ব্লুজটুলস কমান্ড জারি করুন - যেমন বিটি-অডিও-সি
  3. আমার পরে যে পরিষেবাটি রয়েছে তার সাথে ডিভাইসটির সংযোগ স্থাপনের জন্য অপেক্ষা করুন
  4. পালস অডিওকে এখন একটি নতুন আউটপুট ডিভাইস নেওয়া উচিত
  5. নতুন আউটপুট অডিও (বিটি হেডফোন) এ অডিও যা ছিল তা থেকে পরিবর্তন করতে অন্য কমান্ড জারি করুন।
  6. অবিরাম শোনার অভিজ্ঞতা উপভোগ করুন।

এগুলি সমস্ত যৌক্তিক বলে মনে হয়, তবে প্রকৃত বাস্তবায়ন এর মতো নয় এবং আমি WHW এর সন্ধান করছি, তাই আমি সমস্যাটি আরও ভালভাবে বুঝতে পারি এবং চেষ্টা করে ঠিক করতে পারি।

আসলে এটি ঘটে:

  1. হেডফোন চালু করুন।
  2. একটি ব্লুজটুলস কমান্ড জারি করুন - যেমন বিটি-অডিও-সি
  3. আমার পরে যে পরিষেবাটি রয়েছে তার সাথে ডিভাইসটির সংযোগ স্থাপনের জন্য অপেক্ষা করুন
  4. পালস অডিওকে এখন একটি নতুন আউটপুট ডিভাইস নেওয়া উচিত
  5. টেলিফোনের গুণমান থেকে উচ্চ বিশ্বস্ততায় অডিও প্রোফাইল পরিবর্তন করতে একটি পালস অডিও কমান্ড জারি করুন।

আমাকে এই কিছুটা প্রসারিত করুন। ব্লুটুথ হেডসেটটি 2 মানের মোড (টেলিফোন এবং উচ্চ বিশ্বস্ততা) সরবরাহ করে। শুধুমাত্র 1 সঙ্গীত শোনার জন্য উপযুক্ত।

আমি আশা করব যে বিটি হেডফোনগুলি প্রতিটি মানের মোডকে পরিষেবা হিসাবে প্রকাশ করে, এটা কি ঠিক? এই অনুমানটি ভুল হতে পারে তবে আমি এরকম কিছু আশা করব

বিটি-অডিও-সি হাইফিডেলিটিপ্রোফাইল

অথবা

বিটি-অডিও-চেঞ্জপ্রোফাইল হাইফিডেলিটিপ্রোফাইল

পরিবর্তে এটি দেখে মনে হচ্ছে যে ব্লুজ কেবল ডিভাইসটিতে RAW সংযোগটি পরিচালনা করে এবং সেখান থেকে আপনাকে একটি: প্যাকএমডি সেট-কার্ড-প্রোফাইল issue INDEX a2dp জারি করতে হবে

এটি কেবল মৌলিকভাবে ভুল বলে মনে হচ্ছে। অডিও সাবসিস্টেমের মান নিয়ন্ত্রণ কেন, তাই নাড়ি বা আলসার জন্য বা অন্য কোনও সাউন্ড সাব সিস্টেমের জন্য আলাদা বাস্তবায়ন প্রয়োজন?

আমি কী মিস করছি? কেন ব্লুজ / ব্লুজটুলস ইত্যাদি ব্যবহার করে কোনও নির্দিষ্ট প্রোফাইলের সাথে সরাসরি সংযোগ করা সম্ভব হচ্ছে না?

উত্তর:


3

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

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

ফলস্বরূপ, এটি পালস অডিওকে ব্লুটুথ অডিও প্রসেসিংয়ে মোটামুটি গভীরভাবে জড়িত থাকার জন্য বোঝায়: সেখানে যত বেশি হস্তক্ষেপকারী স্তর রয়েছে, সঠিক প্রতিক্রিয়া বজায় না করে ডেটা বাফার করার সম্ভাবনা তত বেশি হয়, যার ফলে ঠোঁট-সিঙ্কটি নষ্ট হয়।

প্রকৃতপক্ষে, পালস অডিওর অস্তিত্বের আগে ব্লুটুথ অডিওর জন্য একটি ALSA ব্যাকএন্ড ছিল, তবে এটি অবহেলা করা হয়েছিল। আমি মনে করি সমস্যাটি ছিল যে সেই সময়কার ALSA এর ইন্টারফেসগুলি মূলত traditionalতিহ্যবাহী সাউন্ড কার্ডগুলির জন্য ডিজাইন করা হয়েছিল এবং ব্লুটুথের সম্ভাব্য পরিবর্তনশীল অডিও বিলম্বিতা নিয়ে কাজ করা কঠিন ছিল।

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

হ্যাঁ, এটি একটি পালস অডিও মডিউলের পরিবর্তে ব্লুজেডে প্রয়োগ করা যেতে পারে; তবে তারপরে, ব্লুজেডগুলিকে অ্যাপ্লিকেশনগুলির জন্য একটি অডিও ইন্টারফেস উপস্থাপন করতে হবে। এবং যেহেতু পালস অডিও একটি সিস্টেমে "সমস্ত" অডিও হ্যান্ডেল করতে চায় (আপনি বর্তমানে স্পিকার থেকে ব্লুটুথে বা অডিওতে উল্লিখিত অডিওটি স্থানান্তর করতে সক্ষম হবেন), তাই এটি পালস অডিও সাথে ইন্টারফেস করতে হবে যাইহোক যাইহোক।


2

আমি মনে করি অবশেষে আমি একটি সমাধান খুঁজে পেয়েছি (দুটি লিনাক্স মিন্ট সিস্টেমে পরীক্ষিত) তবে কেন আমাকে এই সঠিক পদক্ষেপগুলি অনুসরণ করতে হবে তা আমার কোনও ধারণা নেই:

প্রাথমিক পদক্ষেপ:

  1. ব্লুম্যান ইনস্টল করুন: ন্যুডোম্যান ইনস্টল করুন install
  2. ব্লুটুথ ফাইল সম্পাদনা করুন: sudo ন্যানো /etc/bluetuth/main.conf এবং এই লাইনটি শেষে যুক্ত করুন: অক্ষম = হেডসেট

প্রতিটি রান জন্য:

  1. ব্লুটুথ পরিষেবাটি পুনঃসূচনা করুন: সুডো পরিষেবা ব্লুটুথ পুনঃসূচনা
  2. সিস্টেম ট্রেতে ব্লুম্যান থেকে ডিভাইসগুলি খুলুন বা টার্মিনালে ব্লুম্যান-ম্যানেজারটি টাইপ করুন
  3. আপনার ব্লুটুথ অডিও ডিভাইসের জন্য অনুসন্ধান করুন
  4. আপনার ডিভাইসে রাইট-ক্লিক করুন এবং হেডসেট হিসাবে সংযুক্ত করুন
  5. সিস্টেম সেটিংস থেকে শব্দে যান
  6. একবারে ক্লিক করে আপনার ডিভাইসটি নির্বাচন করুন
  7. এখন আবার ব্লুম্যান-ম্যানেজারের কাছে যান
  8. আপনার ব্লুটুথ ডিভাইসে ডান ক্লিক করুন এবং অডিও প্রোফাইলটিকে উচ্চ বিশ্বস্তত্বে প্লেব্যাকে সেট করুন (A2DP সিঙ্ক)

আপনি যদি কোনও পদক্ষেপ মিস করেন তবে পদক্ষেপ 1 এ যান এবং আবার চেষ্টা করুন। যদি এটি কাজ করে তবে আমাকে জানান।

সম্পাদনা করুন : লিনাক্স মিন্ট 19-এ, ডিফল্ট ব্লুটুথ ম্যানেজার হাই ফিডিলিটি প্লেব্যাকের সাথে পুরোপুরি কাজ করে, কোনও কনফিগারেশন লাগবে না !!


0

এটি আপনার কনফিগারেশনের পরিবর্তিত হতে পারে, এমন কিছু ভাল পরীক্ষিত আদেশ রয়েছে commands

আপনার ডিভাইসটিকে বিশ্বাসযোগ্য হিসাবে সেট করা দরকার। এটি গুইয়ের মাধ্যমে করা যেতে পারে।

sdptool ব্রাউজ লক্ষ্য ডিভাইসে উপলব্ধ প্রোটোকল এবং চ্যানেলগুলি সম্পর্কে অনেক বিবরণ দেবে।

এটা তোলে যখন এটি যুগপত অডিও আউটপুট ব্যবহার করে, সেটআপ করার অডিও বেসিনে a2p একটি Bluetooth সেট করতে, টুল দেখতে সহজ paprefs

sudo apt install bluetooth 
sudo apt install bluez bluez-tools
sudo apt install rfkill rfcomm

ডিভাইস শুরু করুন, এটি যাইহোক hci0 হওয়া উচিত:

sudo hciconfig hci0 up

দূরবর্তী ডিভাইসগুলির তালিকা করুন:

sudo rfkill list

ব্লুটুথ নেটওয়ার্কগুলি তালিকাবদ্ধ করুন:

hcitool scan

উপলব্ধ প্রোটোকলগুলি ব্রাউজ করুন:

sdptool browse 43:23:00:02:23:A7

একটি ডিভাইস সংযুক্ত করুন:

sudo rfcomm connect hci0 43:23:00:02:23:A7

একটি ফাইল পাঠান:

sudo bt-obex -p 43:23:00:02:23:A7 ~/images/tof.png

একটি ফাইল পাবেন:

sudo bt-obex -s /

কোনও চ্যানেলে ডেটা স্ক্যান করুন / অপেক্ষা করুন (এখানে চ্যানেল ১৯) এবং হোম ফোল্ডারে ডাম্প নামে একটি ফাইলে ডেটা লিখুন:

sudo apt install bluez-hcidump

hcidump -i hci0 -O 19 -w ~/dump

বিকল্প: কখনও কখনও জুড়ি জন্য দরকারী:

sudo apt install bluetoothctl

bluetoothctl
power on
connect 43:23:00:02:23:A7
trust 43:23:00:02:23:A7
info 43:23:00:02:23:A7

[bluetooth]# agent on
[bluetooth]# default-agent
[bluetooth]# discoverable on
[bluetooth]# pairable on
[bluetooth]# scan on
[bluetooth]# pair 43:23:00:02:23:A7
[agent]PIN code: ####
[bluetooth]# trust 43:23:00:02:23:A7
[bluetooth]# connect 43:23:00:02:23:A7
[bluetooth]# info 43:23:00:02:23:A7
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.