কীভাবে আলসাকে পছন্দসই সাউন্ড ডিভাইসটি স্বয়ংক্রিয়ভাবে বাছাই করা যায়?


36

আমি একটি ইউএসবি সাউন্ড কার্ড কিনেছি। আমি আমার লিনাক্স ডেস্কটপটি সেটআপ করতে চাই যাতে এটি ইউএসবি ডিভাইসটিকে পছন্দ করে, যদি এটি প্লাগ ইন করা থাকে এবং ডিভাইসটি প্লাগ-ইন করা হিসাবে স্বয়ংক্রিয়ভাবে স্যুইচ হয়। এটা কি সম্ভব এবং কিভাবে?


দেবিয়ান এর পরিবর্তে পালসওডিও ব্যবহার করে।
ব্রায়াম

উত্তর:


36

এর সাথে আপনার কার্ডটি সন্ধান করুন

$ cat /proc/asound/cards

বৈধ ALSA কার্ডের নাম পেতে, ব্যবহার করুন aplay:

$ aplay -l

এবং তারপরে /etc/asound.confনিম্নলিখিতটি তৈরি করুন :

pcm.!default {
    type hw
    card 1
}

ctl.!default {
    type hw           
    card 1
}

উপরে উল্লিখিত আপনার কার্ডের নম্বর বা নাম দিয়ে "কার্ড 1" প্রতিস্থাপন করুন।

বিকল্পভাবে, আপনি আপনার কার্ডগুলির ক্রম পরিবর্তন করতে পারেন যাতে আপনার ইউএসবি কার্ডটি কার্ড 0 হবে এবং এটি সম্পাদনা ছাড়াই কাজ করবে asound.conf


2
আমি আপনার পরামর্শটি চেষ্টা করেছি, কিন্তু যখন ইউএসবি কার্ডটি প্লাগ লাগানো হয় তখন অডিও বিল্ট-ইন কার্ডে স্যুইচ না করে পুরোপুরি কাজ করা বন্ধ করে দেয়।
পেটর পুদলক

2
আরপিআই 2 ব্যবহার করে, এই সমাধানটি আমার পক্ষে কাজ করেছিল। বাকি সমস্ত চেষ্টা করেছিলাম, কিন্তু আমি এটি না করা পর্যন্ত কিছুই কাজ করেনি। (খনিতে "কার্ড 0" ব্যবহার করতে হয়েছিল)।
রব গিবনস

2
উপরের কনফিগারেশনটি ব্যবহার করে, পালেমুনে ইউটিউবে থাকা শব্দগুলি আমার পক্ষে কাজ করে না, এই defaults.pcm.card 1 defaults.ctl.card 1 কনফিগারটিটি
ভিউটোপিক.এফপি ?

এই একদিনের জন্য! এবং আপনি আমার পাছা সবেমাত্র!
আলামিন

2
সাধারণ লোকদের উত্তরের জন্য গৌরবময় ব্যাচ প্রসেসিং হ্যাকারি ব্যবহার করবেন না। আউটপুট থেকে কলামগুলি বের করে এমন এক-লাইনার লেখার পরিবর্তে কীভাবে পূর্ণ আউটপুটে পছন্দসই তথ্য সন্ধান করতে হয় তা কথায় বর্ণনা করুন।
জাজেপ্পান হোয়েসজেউস্কি

16

আলসায় এটি ডিফল্ট সাউন্ড কার্ড নির্বাচন করার পদ্ধতি। আপনি যদি পালস অডিও ব্যবহার করছেন তবে এই পদ্ধতিটি ব্যবহার করার জন্য আপনি আলসা ইনস্টল করতে চাইতে পারেন।

বিড়াল / প্রকোপ / আসাউন্ড / মডিউল

আপনার শব্দ মডিউলগুলি তালিকাভুক্ত করবে the কমান্ডের আউটপুটটি এই জাতীয় (যেমন) হবে:

0 snd_hda_intel

1 snd_usb_intel

উপর থেকে আপনার ইউএসবি সাউন্ড কার্ডটি কোনটি আপনি সহজেই বুঝতে পারবেন।

ন্যানো /etc/modprobe.d/alsa-base.conf

এই আলসা-বেস.কমকে এমনভাবে সম্পাদনা করুন যাতে আপনার পছন্দসই কার্ডটির সূচক = -2 / 0 থাকে এবং অন্য কার্ডে সূচক = -1 / 1 থাকে (-2 এবং -1 দিয়ে থাকুন)

বিকল্পসমূহ snd_hda_intel সূচক = -1

বিকল্পগুলি snd_usb_intel সূচক = -2

এই ক্ষেত্রে ইউএসবি ডিভাইস পছন্দসই ডিভাইস।

আপনার যদি আউটপুট থেকে একই নামের সাথে দুটি পৃথক কার্ড থাকে তবে:

বিকল্পগুলি snd_hda_intel

বিকল্পগুলি snd_hda_intel

কোনটি কোনটি তা জানতে এই আদেশটি জারি করুন:

বিড়াল / proc / asound / কার্ড

তারপরে এইভাবে মডিউলগুলি সম্পাদনা করুন:

বিকল্পগুলি snd_hda_intel সক্ষম = 1 সূচক = 0

বিকল্পগুলি snd_hda_intel সক্ষম = 0 সূচক = 1

একটি রিবুট প্রয়োজনীয় হতে পারে so সুতরাং আপনাকে নিজের সাউন্ড কার্ডগুলি নিজে নিজেই স্যুইচ করতে পারেন।


"আউটপুট পরিবর্তন করে" বলতে কী বোঝ? আমি কীভাবে আউটপুট পরিবর্তন করতে পারি?
পেটর পুদলক

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

ধন্যবাদ. আমি কীভাবে সেটআপ যাচাই করতে পারি? আমি কার্ডগুলি চিহ্নিত করেছি, উপযুক্ত বিকল্পগুলি যুক্ত করেছি, রিবুট করেছি, তবে আমি কোনও পরিবর্তন দেখতে পাচ্ছি না - এখনও অভ্যন্তরীণ (ইন্টেল) কার্ডটি পছন্দসই।
পেটর পুদলক

চেষ্টা করুন> বিকল্পগুলি এসএনডি-ইউএসবি-ইন্টেল সক্ষম = 1 সূচক = 0 (সক্ষম করতে)> বিকল্পগুলি এসএনডি-এইচডিএ-ইন্টেল সক্ষম = 0 সূচক = 1 (অক্ষম করতে) বা> বিকল্পসমূহ এসএনডি-এইচডিএ-ইন্টেল সক্ষম = 0 সূচক = 0> বিকল্পগুলি এসএনডি-ইউএসবি-ইন্টেল সক্ষম = 1 সূচক = 1 এবং পুনরায় বুট করুন
আশিল্ডার

উদাহরণস্বরূপ, সক্ষম = 0 বা 1 ব্যবহার করে ইউএসবি অপরটিকে অক্ষম করুন, এটিও তদ্বিপরীত করুন i আপনার পক্ষে কোনটি কাজ করবে তা নিশ্চিত নয় re রিবুট প্রয়োজনীয় i আমি ইওর সমস্যা সমাধান করতে চাই
আশিল্ডার

4

আমি আমার ইউএসবি ডিভাইস থেকে আউটপুট পেতে পারি না। আমার cat /proc/asound/modulesআউটপুটটি ছিল:

0 snd_hda_intel

1 snd_hda_intel

2 snd_usb_audio

আমি এখানে বর্ণিত উভয় উত্তর দিয়ে চেষ্টা করেছি যা কোন সাহায্য করতে পারে নি (অনেকগুলি সূচক সংমিশ্রণ এবং প্রচুর পুনঃসূচনা সহ)। আমি মনে করি সমস্যাটি আমার ইউএসবি ডিভাইসটি বুট-আপের পরে শুরু হয়েছিল। যাই হোক না কেন, তাই আমার ওয়ার্কিং সলিউশন /etc/modprobe.d/blacklist.confহিসাবে আপডেট করে অন্যান্য 2 সাউন্ড ডিভাইসকে কালো তালিকাভুক্ত করছে :

blacklist snd_hda_intel

3

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

defaults.pcm.!card Generic_1
defaults.ctl.!card Generic_1
defaults.pcm.!device 0
defaults.ctl.!device 0

রেকর্ডের জন্য: ALSA দুর্বল নথিভুক্ত, এবং বিশেষত এই খুব সাধারণ জিনিস যা কোন কার্ডটি ব্যবহার করতে হবে তা নির্বাচন করা খুব শক্ত। সবচেয়ে খারাপ, এটি সিস্টেমের মধ্যে পরিবর্তিত বলে মনে হচ্ছে। এছাড়াও, আমি অ্যাপ্লে-এল থেকে সেই "জেনেরিক_1" ট্যাগটি পেয়েছি যেখানে এটি তালিকায় "কার্ড 1" হিসাবে আসে। অন্যান্য লোকেরা এটি ব্যবহার করছে বলে মনে হয়েছিল, তাই আমিও তাই করেছি ... এর অর্থ কী আমি বলতে পারি না।


1

আপনি .Aoundrc বা সিস্টেম asound.conf সম্পাদনা করে ডিফল্ট আলসা কার্ড পরিবর্তন করতে পারেন তবে এই পদ্ধতির সাথে বেশ কয়েকটি উল্লেখযোগ্য সমস্যা রয়েছে।

এটি ভঙ্গুর, এবং সম্মানের জন্য অ্যাপ্লিকেশন পুনরায় চালু হওয়া প্রয়োজন।

আপনি যদি ফ্লাইতে কার্ডগুলি স্যুইচ করতে চান তবে আপনাকে সত্যিই এমন একটি সাউন্ডসার্ভার ব্যবহার করতে হবে যা সাউন্ডকার্ড থেকে অ্যাপ্লিকেশনগুলি সঠিকভাবে পালস করে যেমন পালসওডিও।


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

-1

এখানে মাতিজা নালিস এবং টেলের উত্তরগুলির একটি বৈকল্পিক। এটিই আমার পক্ষে কাজ করেছে:

~ / .Asoundrc

defaults.pcm.!card 1
defaults.ctl.!card 1

(ওড্রয়েড সি 0, ডেবিয়ান জেসি, কার্ড 0 হিসাবে এইচডিএমআই অডিও এবং অ্যাপল-এল অনুসারে কার্ড 1 হিসাবে ইউএসবি সাউন্ড কার্ড)

দ্রষ্টব্য: অন্যান্য পদ্ধতিগুলি আমার পক্ষে কাজ করে নি, যেমন / proc / asound / মডিউলগুলি বিদ্যমান নেই এবং কালো তালিকাভুক্ত করার জন্য কোনও hdmi অডিও মডিউল নেই বা নিম্ন অগ্রাধিকার হিসাবে রাখা হয়েছে, এটি কার্নেলের মধ্যে এমবেড করা আছে। দেখে মনে হচ্ছে এটি সম্পূর্ণরূপে নিষ্ক্রিয় করতে hdmi অডিও সমর্থন ছাড়াই আমাকে কার্নেলটি পুনরায় সংশ্লেষ করতে হবে।


sudo modprobe $ সাউন্ডকার্ড_ড্রাইভার আপনি যা চান / প্রো / / আসাউন্ড / মডিউলগুলি চান তা করবে
linuxdev2013

@ linuxdev2013 আপনি এমন কোনও ড্রাইভারকে কীভাবে Modprobe করতে পারবেন না যে Modprobe- সক্ষম নয়? উপরে বর্ণিত হিসাবে এটি কোনও মডিউল নয়, এটি কার্নেলের সাথে এমবেড করা রয়েছে।
astooooooo
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.