वॉल्यूम बदलने के लिए कमांड लाइन का उपयोग कैसे करें?


72

मैं अपनी प्रोग्रामिंग स्क्रिप्ट का उपयोग करके वॉल्यूम को नियंत्रित करने का प्रयास कर रहा हूं। मैं फेडोरा 15, उबंटू लिनक्स में निम्नलिखित कैसे कर सकता हूं?

  1. म्यूट / अनम्यूट करें
  2. वॉल्यूम ऊपर और वॉल्यूम नीचे

नोट: कृपया ध्यान दें कि मैं एक वेब USB माइक्रोफोन / स्पीकर और एनालॉग माइक्रोफोन / स्पीकर का उपयोग करता हूं। मुझे यकीन है कि सभी के लिए आवेदन करना चाहते हैं।


1
अगर किसी के यहाँ आने से उनके वॉल्यूम नियंत्रण बटन को ठीक करने के लिए lubuntu से <command>amixer -D pulse sset Master 3%+ unmute</command>संबंधित keybind में डाल ~/.config/openbox/lubuntu-rc.xmlरहा है और फिर openbox --reconfigureइसे मेरे लिए तय किया गया है
rhombidodecahedron

जवाबों:


80

आप एमिक्सर का उपयोग कर सकते हैं । यह alsa-utilsउबंटू और डेबियन पर पैकेज में है ।

amixerडिफ़ॉल्ट डिवाइस के लिए अपने नियंत्रण के बारे में अवलोकन प्राप्त करने के लिए मापदंडों के बिना चलाएं ।

alsamixerअधिक विज़ुअल ओवरव्यू प्राप्त करने के लिए आप बिना मापदंडों (एक ही पैकेज से) का उपयोग कर सकते हैं । उपकरणों के बीच देखने और स्विच करने के लिए F6 का उपयोग करें। आमतौर पर आपके पास चयन करने के लिए PulseAudio और एक हार्डवेयर साउंडकार्ड हो सकता है।

फिर वॉल्यूम सेट करने के amixerलिए setकमांड के साथ उपयोग करें । उदाहरण के लिए, मास्टर चैनल को 50% पर सेट करने के लिए:

amixer set Master 50%

Master नियंत्रण नाम है और आपको पैरामीटर्स के बिना चलने पर एक को देखना चाहिए।

%संकेत पर ध्यान दें , इसके बिना मान 0 - 65536 के स्तर पर माना जाएगा।

यदि PulseAudio आपका डिफ़ॉल्ट उपकरण नहीं है, तो आप -Dस्विच का उपयोग कर सकते हैं :

amixer -D pulse set Master 50%

अन्य उपयोगी कमांड ने टिप्पणी में बताया:

+/-संख्या के बाद वॉल्यूम उपयोग को बढ़ाने / घटाने के लिए उपयोग करें

amixer set Master 10%+
amixer set Master 10%-

म्यूट, अनम्यूट या अनम्यूट स्थिति के बीच म्यूट करना या टॉगल करना, उपयोग करना

amixer set Master mute
amixer set Master unmute
amixer set Master toggle

यह भी ध्यान दें कि दो अलग-अलग प्रतिशत पैमाने हो सकते हैं, डिफ़ॉल्ट कच्चे और कुछ उपकरणों के लिए डेसिबल पर आधारित एक अधिक प्राकृतिक पैमाने , जिसका उपयोग भी किया जाता है alsamixer-Mउत्तरार्द्ध का उपयोग करने के लिए उपयोग करें ।

अंत में, यदि आप केवल PulseAudio में रुचि रखते हैं, तो आप बाहर pactlदेखना चाहते हैं (अन्य उत्तरों में से एक देखें)।


4
धन्यवाद! ऐसा करने के दो तरीके हैं 1. अपने उत्कृष्ट उदाहरण के रूप में: एमिक्सर मास्टर म्यूट सेट करें; एमिक्सर सेट मास्टर अनम्यूट; 2. yum -y स्थापित xdotool; xdotool कुंजी XF86AudioRaiseVolume; xdotool कुंजी XF86AudioLowerVolume;
युयुम्यम

15
और एक अतिरिक्त के रूप, आप को बढ़ाने या द्वारा मात्रा कम कर सकते हैं amixer set Master 10%+औरamixer set Master 10%-
उपयोगकर्ता

2
यह उबंटू में काम नहीं करता है।
सेरिन

2
मैं @Cerin असहमत हूं। यह अभी Ubuntu LTS 12 पर काम करता है। ध्यान दें कि Mगुरु में है केस संवेदी (अपरकेस होना चाहिए)।
ashes999

5
सेरिन सही है। यह काम नहीं करता। क्या काम करता है:amixer -D pulse sset Master 50%
shivams

30

म्यूट करने के लिए:

amixer -D pulse sset Master mute

अनम्यूट करने के लिए:

amixer -D pulse sset Master unmute

5% की मात्रा चालू करने के लिए:

amixer -D pulse sset Master 5%+

5% की मात्रा नीचे करने के लिए:

amixer -D pulse sset Master 5%-


1
जब आप वॉल्यूम (सुविधा के लिए) बदलते हैं तो आप स्वचालित रूप से अनम्यूट करने के लिए बाद वाले आदेशों में अनम्यूट जोड़ सकते हैं:amixer -D pulse sset Master unmute 5%+
रोमन गोकिशेव

16

pactl / pacmd (विपरीत amixer) 100% से अधिक की मात्रा बढ़ाने की अनुमति देता है :-)।

pactl set-sink-mute 0 toggle  # toggle mute
pactl set-sink-volume 0 0     # mute (force)
pactl set-sink-volume 0 100%  # max
pactl set-sink-volume 0 +5%   # +5% (up)
pactl set-sink-volume 0 -5%   # -5% (down)

100% से अधिक मैन्युअल सेटिंग्स pavucontrol(इसके विपरीत alsamixer) में संभव है ।

नोट: यदि आप अलग-अलग सिंक के साथ अलग-अलग मेजबानों पर समान कमांड साझा करना चाहते हैं, तो आप @DEFAULT_SINK@संख्या के बजाय सिंक के रूप में उपयोग कर सकते हैं 0:

pactl set-sink-volume @DEFAULT_SINK@ +5%

आप अपने डिफ़ॉल्ट सिंक को pactl set-default-sink my-sink-name(सूची नामों के साथ pactl list short sinks) सेट करते हैं ।

अद्यतन: जोड़ा toggle mute(डॉन जो करने के लिए धन्यवाद)।

स्रोत: askubuntu.com , wiki.archlinux.org


5

अधिक मात्रा:

amixer set Master 3%+

कम मात्रा:

amixer set Master 3%-

टॉगल करें:

amixer set Master toggle

i3/ के लिए उदाहरण कीबाइंडिंग sway, कमांड execनिम्न हैं :

bindsym XF86AudioRaiseVolume exec amixer set Master 3%+
bindsym XF86AudioLowerVolume exec amixer set Master 3%-
bindsym XF86AudioMute exec amixer set Master toggle
bindsym Ctrl+$alt+Up  exec amixer set Master 3%+
bindsym Ctrl+$alt+Down exec amixer set Master 3%-

4

यदि उपयोगकर्ता ने डिवाइस को म्यूट कर दिया है तो आपको इसे 'अनम्यूट' करना होगा। अन्यथा प्रतिशत सेट करना काम करेगा लेकिन ध्वनि अभी भी बंद है

amixer set 'Master' 100% unmute
/usr/bin/amixer set 'PCM' 100% unmute

3

पुलिकैडियो के लिए पिविक का उत्तर लगभग सही है, जिसमें दो बातों का उल्लेख है:

  • ऋणात्मक आयतन परिवर्तन आदेश एक त्रुटि उत्पन्न करेगा क्योंकि इसका कुछ-कुछ भाग एक अलग (अपरिचित) विकल्प के रूप में व्याख्या किया जाएगा; आपको नकारात्मक संख्या से पहले कहीं डबल-माइनस के साथ पार्सिंग विकल्प बंद करने की आवश्यकता है, जैसे "-5%"

  • सही म्यूट अवस्था कुछ ऐसी है जिसे एक ही कुंजी के साथ टॉगल करना संभव होना चाहिए, जो काम नहीं करेगा यदि आप वॉल्यूम को 0 के निश्चित मान पर सेट कर रहे हैं, तो इसके लिए सही कमांड होगा:

pactl set-sink-mute @DEFAULT_SINK@ toggle

LE: क्या पहला संकेत लागू होता है, आप पर चल रहे PulseAudio के संस्करण पर या डिस्ट्रो में कुछ और पर निर्भर हो सकते हैं - मुझे लगता है कि Ubuntu 16 पर यह "-" के बिना काम करता है और यदि मैं जोड़ता हूं तो यह विफल रहता है - " नकारात्मक प्रतिशत के सामने।


बहुत अच्छा thx, जो इसे सही बनाता है जब हम बेहतर गेमिंग एफपीएस के लिए फ़्लाई पर विंडो मैनेजर को बदलते हैं, इसलिए मैं उपयोग करता xbindkeys-configहूं और मुझे X को पुनः आरंभ करने की भी आवश्यकता नहीं है) (lol the smile ... no pun इच्छित lol)
कुंभ राशि पॉवर

2

amixer ने मेरे लिए काम किया लेकिन मुझे वह अच्छा एनीमेशन नहीं मिला जो मुझे तब मिलता है जब मैं अपने कीबोर्ड पर वॉल्यूम अप बटन दबाता हूं।

मैंने xteकमांड लाइन से उस कुंजी को सीधे दबाने के लिए उपयोग करने का निर्णय लिया :

ध्वनि तेज: xte 'key 0x1008ff13'

आवाज निचे: xte 'key 0x1008ff11'

म्यूट: xte 'key 0x1008ff12'

मैंने उपयोग करके चाबियों (कि हेक्स संख्या) का पता लगा लिया xev

sudo apt-get install xbindkeys xautomation
xev

और फिर की-बोर्ड प्राप्त करने के लिए अपने कीबोर्ड पर वॉल्यूम अप बटन दबाएँ। सिस्टम से सिस्टम के लिए मुख्य सिम्पल भिन्न हो सकते हैं, इसलिए इसे एक्सवी से खोजना सबसे विश्वसनीय तरीका होगा।

परिणाम मेरे लिए इस तरह दिखता है:

KeyRelease घटना, धारावाहिक 37, सिंथेटिक NO, विंडो 0x2c00001, रूट 0xef, subw 0x0, समय 6660080, (566,573), रूट: (664,651), राज्य 0x0, keycode 123 (keyym 0x1008ff13, XF86AudioRaiseVolume, वीप्लूम, इत्यादि) : XFilterEvent रिटर्न: गलत

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.