मुझे यकीन है कि अगर यह एक अलग जवाब के हकदार नहीं हूँ। मैंने एचएससी के उत्तर और "ALSA Wiki - The Dmix Howto" पर उदाहरणों का उपयोग किया। डीमिक्स दस्तावेज वास्तव में थोड़ा निराशाजनक है।
यहां एक उदाहरण ~/.asoundrc
है जो मेरे लिए काम करता है। "बाइंडिंग" खंड अनावश्यक है, लेकिन हाउटो का कहना है कि यह "मल्टीचैनल चिप्स तेजी से काम करने में मदद करता है" (सुनिश्चित नहीं है कि मुझे परवाह है या नहीं?)। अगर मैं "0 1 1 0" बांधता हूं तो यह दाएं/बाएं चैनल स्विच करता है। अगर मैं "0 1 1 1" बांधता हूं तो मुझे अपने दाहिने कान में कचरा मिलता है ... जाहिर है ipc_key
एक आवश्यक पैरामीटर है; मैंने बस एक यादृच्छिक पूर्णांक चुना है।
# example 1
pcm.hw3mix {
type dmix
ipc_key 1939 # must be unique
slave {
pcm "hw:3"
period_time 0
period_size 1024 # must be power of 2
buffer_size 4096
rate 44100
}
bindings {
0 0
1 1
}
}
pcm.!default hw3mix
अंतिम पंक्ति मेरा नया hw3mix
डिफ़ॉल्ट डिवाइस बनाती है।
मैं करने के लिए ऊपर सरलीकृत:
# example 2
pcm.hw3mix {
type dmix
ipc_key 1939 # must be unique
slave { pcm "hw:3" }
}
pcm.!default hw3mix
और यह सिर्फ अच्छा काम करने लगता है।
ऊपर ALSA विकी लिंक पर सुझाव के रूप में, मैं आगे यह करने के लिए आसान बनाने में कर सकते हैं:
# example 3
pcm.dsp0 {
type plug
slave.pcm "dmix"
}
pcm.!default dsp0
और इस के लिए आगे सरल किया जा सकता:
# example 4
pcm.!default {
type plug
slave.pcm "dmix"
}
या यहाँ तक कि:
# example 5
pcm.!default plug:dmix
हालांकि, पिछले तीन उदाहरण मुझे डीएमआईक्स प्लगइन के लिए पैरामीटर निर्दिष्ट करने की अनुमति नहीं देते हैं। मैं एक उपकरण बनाना चाहता था जो कई धाराओं को "एचडब्ल्यू: 3" में मिलाता है। मुझे लगता है कि इसे डीमिक्स के पैरामीटर के रूप में निर्दिष्ट किया जाना चाहिए क्योंकि यह डिफ़ॉल्ट डिवाइस नहीं है, इसलिए मैं ऊपर अपने दूसरे उदाहरण के साथ गया।मेरे वास्तविक ~/.asoundrc
में, "hw: 0,0" के लिए एक ब्लॉक भी है जिसे "hw0mix" कहा जाता है, इसलिए निम्न पंक्तियों पर टिप्पणियों को बदलकर, मैं अपने हेडफ़ोन और स्पीकर के बीच (नव निर्मित) स्ट्रीम का आउटपुट स्विच कर सकता हूं:
#pcm.!default hw0mix
pcm.!default hw3mix
एनबी: और "hw: 3": ऊपर "0,0 hw" जैसे उपकरणों को संदर्भित करता है ... यह थोड़ा पता लगाने के लिए मेरी विभिन्न यूएसबी ध्वनि के लिए स्थिर युक्ति संख्या सुनिश्चित करने के लिए कितना मुश्किल था डिवाइस, मुझे "उसी प्रकार के एकाधिक कार्ड ऑर्डर करने" के तहत निर्देश here मिला। कॉन्फ़िगरेशन में /etc/modprobe.d/
में फ़ाइल में एक पंक्ति होती है। इस तरह रीबूट में एक ही डिवाइस को संदर्भित करने के लिए मुझे 0 और 3 जैसी संख्याएं मिलती हैं।
यह उत्तर बहुत उपयोगी है लेकिन मैं थोड़ा उलझन में हूं और अधिक स्पष्टीकरण की सराहना करता हूं। दूसरे 'एप्ले' कमांड में '-D डिफ़ॉल्ट 'क्यों है, लेकिन पहला नहीं है? 'बाइंडिंग्स' सेक्शन का अर्थ क्या है, और 'ctl.dmixer' क्या है? क्या दो से अधिक धाराओं को मिश्रण करना संभव है, उदा। अगर मैं एक साथ तीन 'एप्ले' आदेश चलाता हूं? 'Dmixer' को इंगित करने वाले प्रकार 'प्लग' का" डिफ़ॉल्ट "डिवाइस क्यों है, क्या हम 'pcm.dmixer' को' pcm।! Default 'के रूप में नामित कर सकते हैं और संकेत से बच सकते हैं? – Metamorphic