সাউন্ড কার্ড এবং এইচডিএমআই উভয় যখন ইন্টেল এইচডিএ ড্রাইভার ব্যবহার করে তখন শব্দটি কাজ করছে না। তাদের ডিভাইস লোডিং অর্ডার কীভাবে বিনিময় করবেন?


10

আমার কাছে একটি এসার অ্যাসপায়ার ওয়ান 522 নেটবুক রয়েছে যা কনেক্সট্যান্ট সিএক্স20584 চিপসেটের উপর ভিত্তি করে একটি ইন্টেল এইচডিএ সাউন্ড কার্ড রয়েছে। যদিও শুরুর দিকে কেডিপি আউটপুট সাউন্ড করে, ফ্ল্যাশ এবং সম্ভবত অন্যান্য অনেক অ্যাপ যা /dev/dspডিভাইসের সন্ধান করে কেবল এটির মাধ্যমে আউটপুট আউটপুট দেয় না, এটি বেশ কার্যকরভাবে অকেজো মাল্টিমিডিয়া অভিজ্ঞতা উপস্থাপন করে।

আমি যখন আমার এএলএসএ প্লেব্যাক ডিভাইসগুলি পরীক্ষা করেছিলাম তখন আমি aplay -lদেখতে পেতাম যে মূল অডিও ডিভাইসটি 0 এর পরিবর্তে কার্ড 1 হিসাবে স্বীকৃতি পাচ্ছে, যা পরিবর্তে এইচডিএমআই পর্যন্ত সংযুক্ত ছিল:

**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: SB [HDA ATI SB], device 0: CONEXANT Analog [CONEXANT Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

এইভাবে আমি একটি পেয়েছি /dev/dsp1, তবে বেশিরভাগ অ্যাপ্লিকেশনগুলি কেবল ব্যবহারের জন্য হার্ডকোডযুক্ত বলে মনে হয় /dev/dsp, তাই আমি কার্ড সূচকগুলি বিনিময় করার কোনও উপায় অনুসন্ধান করতে গিয়েছিলাম। ALSA ডকুমেন্টেশনের মাধ্যমে কিছু গবেষণা করার পরে, এই /etc/modprobe.d/asound.confফাইলটি দিয়ে এইচডিএমআই এবং ইন্টেল এইচডিএ দ্বারা ব্যবহৃত ড্রাইভার মডিউলগুলিতে সূচি নির্ধারণ করার চেষ্টা করেছি :

options snd cards_limit=2
options snd-hda-codec-conexant index=0
options snd-hda-codec-hdmi index=1
options snd slots=snd-hda-codec-conexant,snd-hda-codec-hdmi

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

এটি বলেছিল, ডিভাইসগুলি একই ALSA ড্রাইভার মডিউল ব্যবহার করার ক্ষেত্রে সঠিক কার্ড সূচকগুলি সংজ্ঞায়নের কোনও উপায় আছে (এই ক্ষেত্রে ইন্টেল এইচডিএ)?

উত্তর:


10

অবশেষে আমি অন্য ফোরামের এই পোস্টের ভিত্তিতে এই সমস্যার উত্তর খুঁজে পেয়েছি (রেফারেন্সের জন্য "চেষ্টা 1 বি" দেখুন)। এটি অনুসারে, একটি ব্যবহৃত মডিউল আইডি নির্দিষ্ট করতে পারে, যদিও ব্যবহৃত ড্রাইভার একই রকম হয়:

alias char-major-116 snd
alias snd-card-0 snd-hda-intel
alias snd-card-1 snd-hda-intel

options snd cards_limit=2

options snd-hda-intel id=SB index=0
options snd-hda-intel id=HDMI index=1

এইভাবে সঠিক কার্ডের অর্ডারটি দেওয়া এবং প্রত্যাশার মতো শব্দ তৈরি করা:

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: SB [HDA ATI SB], device 0: CONEXANT Analog [CONEXANT Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

অনুরূপ অন্যান্য ক্ষেত্রে আবেদন করার জন্য, আপনি /proc/asoundআপনার কার্ডগুলিতে সিমলিংকের জন্য পরিদর্শন করতে পারেন , সেগুলি আপনার পছন্দসই মডিউল আইডি হবে:

$ ls -l /proc/asound/
total 0
lrwxrwxrwx 1 root root 5 Jan 26 19:19 HDMI -> card1
lrwxrwxrwx 1 root root 5 Jan 26 19:19 SB -> card0
dr-xr-xr-x 4 root root 0 Jan 26 19:19 card0
dr-xr-xr-x 3 root root 0 Jan 26 19:19 card1
-r--r--r-- 1 root root 0 Jan 26 19:19 cards
-r--r--r-- 1 root root 0 Jan 26 19:19 devices
-r--r--r-- 1 root root 0 Jan 26 19:19 hwdep
-r--r--r-- 1 root root 0 Jan 26 19:19 modules
dr-xr-xr-x 2 root root 0 Jan 26 19:19 oss
-r--r--r-- 1 root root 0 Jan 26 19:19 pcm
dr-xr-xr-x 2 root root 0 Jan 26 19:19 seq
-r--r--r-- 1 root root 0 Jan 26 19:19 timers
-r--r--r-- 1 root root 0 Jan 26 19:19 version
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.