"Hw: 0,0" जैसे ALSA उपकरणों का क्या मतलब है? मैं कैसे पता लगाऊं कि किसका उपयोग करना है?


63

मैंने बार-बार खोज की है और "hw: 0,0" का कोई मतलब नहीं खोज सकता है। मैं अपने USB ऑडियो कार्ड की संख्या कैसे निर्धारित करूं? MPD के लिए मुझे कुछ इस तरह दर्ज करना होगा:

audio_output {
        type                    "alsa"
        name                    "Sound Card"
        device                  "hw:0,0"     # optional
        format                  "44100:16:2" # optional
}

अगर मैं "alsamixer -c 1" करता हूं तो यह USB कार्ड के वॉल्यूम कंट्रोल को खोलता है, लेकिन यह वास्तव में मेरी मदद नहीं करता है।

मुझे अपने सिस्टम पर उपकरण के नाम / संख्याओं की सूची कहां मिल सकती है? क्या वे हार्डवेयर परिवर्तनों के लिए लचीला हैं? अगर मैं कार्ड 2 हटाता हूं, तो क्या कार्ड 3 कार्ड 2 बन जाता है? क्या उपकरणों की पहचान करने के अन्य तरीके हैं? मैं इसमें से किसी के लिए कहां से दस्तावेज ढूंढ सकता हूं?


तो क्या काम खत्म हो गया?
क्वैक

PulseAudio पर स्विच करना, काम करना। :) लेकिन मुझे स्थानीय रूप से लॉग इन किया जाना था और ऑडियो रूटिंग को संशोधित करना था। तब मैंने फैसला किया कि एमपीडी चूसा और छोड़ दिया।
एंडोलिथ

वास्तव में "hw: 1,0" ने शायद काम किया, लेकिन यह कहा कि डिवाइस उपयोग में था (पल्स द्वारा?) मैंने दूसरी विधि की कोशिश नहीं की, लेकिन उम्मीद है कि यह दूसरों की मदद करेगा।
एंडोलिथ

जवाबों:


48

जॉनटी का जवाब एक अच्छा मूल देता है। मैं इसे कैसे आपके सिस्टम पर उपकरणों को खोजने के साथ पालन करेंगे। अपने सिस्टम पर उपकरणों की सूची प्राप्त करने के लिए "aplay -l" का उपयोग करें। Hw: पहला, दूसरा अपने हार्डवेयर के इस मानचित्रण से आता है - इस मामले में, एक्स कार्ड , संख्या, जबकि वाई है युक्ति संख्या।

$ aplay -l   # note lower-case "L" option
**** List of PLAYBACK Hardware Devices ****
card 0: T71Space [Terratec Aureon 7.1-Space], device 0: ICE1724 [ICE1724]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: T71Space [Terratec Aureon 7.1-Space], device 1: IEC1724 IEC958 [IEC1724 IEC958]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: T71Space [Terratec Aureon 7.1-Space], device 2: ICE1724 Surrounds [ICE1724 Surround PCM]
  Subdevices: 3/3
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2

चूँकि ये USB डिवाइस होते हैं, जो हमेशा प्लग-इन, hw: X, Y डिवाइस बदल जाने पर हर बार समान डिवाइस नंबर प्राप्त नहीं कर सकते हैं। सबसे सरल उत्तर है, डेस्कटॉप सिस्टम के लिए, GNOME / KDE / Xfce कॉन्फ़िगरेशन टूल आज़माएं, और देखें कि क्या वे बदलाव लेने के लिए पर्याप्त स्मार्ट हैं।

जटिल तरीका, यदि आप डेस्कटॉप सिस्टम के साथ ऐसा नहीं कर रहे हैं, तो यह दिलचस्प हो जाता है। आप "hw: X, Y" के बजाय डिवाइस उपनामों का उपयोग करने में सक्षम हो सकते हैं - यह "aplay -L" के आउटपुट से पता चलता है। "कुछ: CARD = FOO, DEV = Y" सामान उपनाम है, और शायद अलग-अलग डिवाइस प्लग-इन के बीच नहीं बदलेगा, जहां "hw: X, Y" में X हो सकता है। (मान लें कि आप प्रत्येक बार एक ही USB डोंगल का उपयोग कर रहे हैं।)

$ aplay -L
default:CARD=CK804
    NVidia CK804, NVidia CK804
    Default Audio Device
front:CARD=CK804,DEV=0                 # hw:0,0
    NVidia CK804, NVidia CK804
    Front speakers
surround40:CARD=CK804,DEV=0            # hw:0,1
    NVidia CK804, NVidia CK804
    4.0 Surround output to Front and Rear speakers

तो आपका aplay कमांड "aplay -D front: CARD = CK804, DEV = 0 somefile.wav" बन जाएगा, और आप अपने .asoundrc में उसी डेविज़न का उपयोग कर सकते हैं।


अगर आपको और भी निचले स्तर पर कुछ स्थिर करने की आवश्यकता है, तो वास्तविक कर्नेल डिवाइस, udv जो आप चाहते हैं - वह सिस्टम है जो सिस्टम में हॉटप्लगिंग डिवाइस की अनुमति देता है। आप udv (और यहाँ मैन पेज ) के लिए नियम लिख सकते हैं जो उपकरणों को प्लग में होने पर उसी डेसिनेम को प्राप्त करने की अनुमति देगा।


3
अहा! मुझे बताया गया था aplay -L, जो जैसा आउटपुट देता है वैसा नहीं है aplay -lविलाप
एंडोलिथ

1
आप कैसे कह सकते हैं कि surround40:CARD=CK804,DEV=0है hw:0,1? जहां तक ​​मैं बता सकता हूं hw:0,0कि यह दिया गया है कि यह संदर्भित है DEV=0, लेकिन एक अलग कॉन्फ़िगरेशन में (4 चैनलों के बजाय 2 के रूप में front:CARD=CK804,DEV=0)।
zpon

19

hw:0,0डिफ़ॉल्ट डिवाइस निर्दिष्ट करता है, डिफ़ॉल्ट साउंड कार्ड पर। अपने दूसरे साउंडकार्ड के पहले उपकरण तक पहुँचने के लिए, आप निर्दिष्ट करेंगे hw:1,0। ये आपके में निर्दिष्ट हैं .asoundrcयहाँ इस सब पर अधिक ।


5
विशेष रूप से यहाँ: alsa-project.org/main/index.php/…
एंडोलिथ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.