วิธีปิดใช้งานไมโครโฟนจากการปรับระดับเสียงอินพุตโดยอัตโนมัติ


45

ฉันต้องการปิดการใช้งานวิธีที่ไมโครโฟนลดระดับเองขึ้นอยู่กับอินพุต นี่คือภาพ:

ป้อนคำอธิบายรูปภาพที่นี่

ไมโครโฟนเริ่มต้นที่ 100% และเริ่มช้าลงไปยังตำแหน่งที่ภาพกำลังแสดง นี่เป็นเพราะเสียงพื้นหลังหรือผู้ใช้เพิ่มเสียงของพวกเขา ไม่ว่าในกรณีใดฉันอยากจะห้ามพฤติกรรมนี้เพราะเมื่อมันต่ำเกินไปความต้องการในการเพิ่มเสียงจะเป็นที่ต้องการจริง

ดังนั้นจึงมีตัวเลือกหรือไฟล์กำหนดค่าที่หนึ่งสามารถแก้ไขและเปลี่ยนแปลงพฤติกรรมนี้ได้หรือไม่

สิ่งนี้ไม่เกี่ยวข้องกับแอปเดียว แต่มีหลายแอพตั้งแต่ Skype ไปจนถึง Google Hangouts, Empathy to Teamspeak และอีกมากมาย ดังนั้นโปรดไม่มีคำตอบที่กล่าวถึงเพียงแอปเดียวหากการแก้ปัญหาไม่ช่วยแก้ปัญหาสำหรับผู้อื่น

แอพ pulseaudio (gui และเทอร์มินัล) ถูกใช้ไปแล้ว Alsamixer ก็ใช้เช่นกัน ในทั้งสองกรณีการปรับระดับไมโครโฟนไม่ได้ช่วย การปรับอัตโนมัติจะเกิดขึ้นเสมอเมื่อมีใครพูดไม่จำเป็นต้องเป็นคนที่พูดเสียงดังพวกเขาเพียงแค่ต้องพูดและหลังจากนั้นไม่กี่วินาทีระดับไมโครโฟนจะเริ่มการปรับอัตโนมัติ ฉันทำซ้ำนี่ไม่ใช่ปัญหา 1 แอพ แต่มีอยู่หลายวิธีดังนั้นวิธีแก้ปัญหาทั่วไปดีกว่า 1 สำหรับแต่ละแอพ (ซึ่งเรากำลังพูดถึงแอพมากกว่า 50 แอพ)


"ร้านค้า alsactl" สามารถช่วยได้
ลุคสแตนลีย์


1
! [ใส่คำอธิบายภาพที่นี่ ] ( i.stack.imgur.com/awiyj.png ) chrome: // ค่าสถานะ - ปิดใช้งาน WEBRTC ECHO CANCELLER: D
Guzpido Krush

@GuzpidoKrush นั่นใช้ได้กับฉัน! (ฉันประสบปัญหานี้กับ WebRTC ใน Chromium เท่านั้น) หากต้องการเข้าถึงการตั้งค่าให้ไปที่ " about: flags "
Geremia

คำตอบ:


22

สำหรับ Skype:

Skype> ตัวเลือก> อุปกรณ์เสียง
และยกเลิกการเลือกอนุญาตให้ skype ปรับระดับมิกเซอร์ของฉันโดยอัตโนมัติ


ขอบคุณ ฉันดิ้นรนกับสิ่งนั้นมาเป็นเวลานาน เมื่อฉันอ่านฉันปิดการใช้งาน Skype และตระหนักว่าปัญหาหยุดทำงาน ขอบคุณที่ชี้นำสิ่งนี้
Rodrigo

18

ไม่แน่ใจว่าสิ่งนี้ใช้ได้กับทุกคนหรือไม่ แต่ถ้าคุณใช้บริการการประชุมผ่านเว็บ / วิดีโอแชทใน Chrome / Chromium เช่น Google Hangouts ทุกประเภทมีโอกาสดีที่จะใช้โปรโตคอล WebRTC น่าเสียดายที่การใช้งาน WebRTC ใน Chromium มาพร้อมกับ "คุณสมบัติ" ที่มีประโยชน์ที่เรียกว่า Automatic Gain Control ที่มีแนวโน้มที่จะสกรูกับระดับเสียงไมโครโฟนของคุณ เว้นแต่ app เว็บของตัวเองจะช่วยให้คุณเลือกที่จะปิดการใช้งานมีตัวเลขที่มิฉะนั้นไม่มีทางปิดและนักพัฒนา Chrome ไม่ต้องการที่จะเพิ่มระดับโลก“ปิด” สำหรับมัน

สิ่งที่ฉันทำคือใช้โซลูชันของ @ lelandbate ตั้งแต่ฉันใช้ PulseAudio ฉันจึงใช้pacmdแทนamixer:

while sleep 0.1; do pacmd set-source-volume alsa_input.???-?????.analog-stereo 90000; done

โปรดทราบว่า 65535 สอดคล้องกับ 100% ดังนั้น 90000 ประมาณ 135% ชื่อของอุปกรณ์ ( alsa_input.???-?????.analog-stereo) ควรถูกแทนที่ด้วยสิ่งที่คุณค้นหาด้วยการเรียกใช้pacmd list-sources | grep name::

name: <alsa_input.???-?????.analog-stereo>

ถ้า AGC ไม่ดูดมากฉันก็ไม่รังเกียจ แต่มันจะปรับไมโครโฟนภายในของฉันจนกว่าคุณจะได้ยินเสียงเหมือนเครื่องยนต์ไอพ่นไม่ว่าฉันจะทำอะไร ถอนหายใจ อาจต้องเรียกใช้การประชุมทางวิดีโอผ่านเว็บผ่าน firefox ด้วยเหตุนี้
Scott Marlowe

นั่นคือ bash loop ที่มีประโยชน์อย่างเหลือเชื่อเพื่อนของฉัน
krispy

9

ตั้งไมโครโฟนของคุณเป็นไม่ขยาย 100% ลองติดตั้งตัวควบคุมระดับเสียงของพัลส์

sudo apt-get install pavucontrol

จากนั้นเปิด: pavucontrol


อันดับแรกสำหรับ skype "Skype" -> "ตัวเลือก" -> "อุปกรณ์เสียง" -> ยกเลิกการเลือก "อนุญาตให้ skype ปรับระดับมิกเซอร์ของฉันโดยอัตโนมัติ" ที่สองใน pavucontrol -> "Input Devises" ตั้งค่าระดับเป็น "Base"
burtsevyg

5

ฉันยังคงทำงานเกี่ยวกับปัญหาที่น่ารำคาญนี้ (ตัวเลือกควรรวมอยู่ในแท็บอุปกรณ์ป้อนข้อมูลเพื่อ "บังคับ" ระดับเสียงอินพุตให้อยู่ในตำแหน่งที่ผู้ใช้ต้องการตั้งค่าซึ่งจะใช้กับกรณีเฉพาะที่ผู้ใช้ทราบว่าต้องการปริมาณเท่าใด สำหรับแอปเฉพาะและคุณสมบัติปรับอัตโนมัติไม่ทำงานอย่างถูกต้องอย่างไรก็ตามเมื่อต้องการตั้งค่าเป็นโหมด "กึ่งคู่มือ" แทนที่จะปรับอัตโนมัติสำหรับ Google Apps เช่นแฮงเอาท์สร้าง / แก้ไขตัวเลือกไฟล์ใน:

nano ~/.config/google-googletalkplugin/options

และเพิ่มบรรทัด:

audio-flags=1

หรือเรียกใช้บรรทัดต่อไปนี้:

echo "audio-flags=1" > ~/.config/google-googletalkplugin/options

บันทึกไฟล์และปิดแอปที่เกี่ยวข้องกับ Google ระดับเสียงของอุปกรณ์อินพุตควรหยุดการปรับอัตโนมัติ ทำงานได้ 50/50 นี่คือเหตุผลที่ฉันกำลังมองหาวิธีการแก้ปัญหาอย่างถาวร


3
audio-flagsกำหนดค่าตัวเลือกไม่ได้มีผลกระทบใด ๆ ในรุ่นล่าสุดจาก Google แฮงเอาท์ซึ่งเป็นรุ่นที่ใช้โปรโตคอล WebRTC ดูคำตอบของฉันสำหรับคำอธิบาย
Rufflewind

4

สิ่งนี้ใช้ได้กับเรา (เราไม่ได้ใช้ Skype):

https://nzeid.net/pulseaudio-disable-auto-volume

# Disable auto adjusting of gain on mic:
# Edit as root: /usr/share/pulseaudio/alsa-mixer/paths/analog-input-internal-mic.conf
# Edit as root: /usr/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
# Under "[Element Internal Mic Boost]" set "volume"  to "zero".
# Under "[Element Int Mic Boost]" set "volume"  to "zero".
# Under "[Element Mic Boost]" set "volume"  to "zero".

1
เพียงเพื่อทราบด้วยตัวเองก่อนที่ฉันจะเปลี่ยนการตั้งค่า: ค่าดั้งเดิมของจำนวนคือ "ผสาน"
Qi Fan

มันก็ใช้ได้กับฉันเช่นกัน
Enmanuel Durán

หลังจากรีสตาร์ทหยุดทำงาน: c
Enmanuel Durán

2

ฉันพบปัญหานี้กับ Skype คุณต้องปิดการใช้งานปรับระดับมิกเซอร์อัตโนมัติ (บางทีคุณต้องตรวจสอบการตั้งค่าขั้นสูงหรืออะไรทำนองนั้น)


2

ฉันมีปัญหานี้ แต่ด้วยวิดีโอแชททุกประเภทที่ฉันพยายามใช้ใน Xubuntu ทุกอย่างจาก Google Hangouts ถึง appr.tc จะปรับระดับเสียงไมโครโฟนโดยอัตโนมัติ โดยเฉพาะอย่างยิ่งดูเหมือนว่าจะเพิ่มระดับเสียงหากได้ยินเสียงใด ๆ ในพื้นหลังราวกับว่าพยายามทำให้ได้ยินเสียงที่เงียบที่สุด

อย่างไรก็ตามการแก้ไขของฉันคือการกำหนดระดับเสียงไมโครโฟนของฉันด้วยคำสั่งบรรทัดคำสั่งใส่ในขณะที่ลูปและทำงานทุกสิบของวินาที ดังนั้นนี่คือเชลล์ oneliner ที่แก้ปัญหาของฉัน:

while true; do amixer -c 1 set 'Mic Boost' 0db > /dev/null; amixer -c 1 set 'Capture' 35db > /dev/null;  sleep 0.1; done;

ในคอมพิวเตอร์ของคุณเพื่อให้อุปกรณ์ใช้งานได้คุณอาจต้องเปลี่ยนอุปกรณ์ที่จะปรับและช่องที่จะเปลี่ยน ที่จะหาข้อมูลที่คุณอาจต้องการที่จะใช้ Alsa ผสม, alsamixerสามารถเข้าถึงได้ด้วย


2

ฉันแก้ไขปัญหาในเครื่องของฉันโดยปิดใช้งานไมโครโฟนอื่น ๆ บนเดสก์ท็อปของฉัน ฉันพบว่ากล้องไมค์หยิบเสียงมันจะทำให้ชุดหูฟังลดลง ฉันปิดการใช้งานกล้องของไมค์และชุดหูฟังคงที่แล้ว

ไม่แน่ใจว่ามันช่วยได้หรือไม่ แต่คิดว่ามันควรค่าแก่การกล่าวขวัญ


2

คำตอบจากคำถาม"ซ้ำซ้อน"นี้สำหรับฉันที่ดีที่สุดฉันจะให้เครดิตแก่ผู้ที่ตอบคำถาม

ในไฟล์กำหนดค่า/usr/share/pulseaudio/alsa-mixer/paths/analog-input-internal-mic.conf(คุณอาจต้องค้นหาไฟล์ที่ถูกต้องสำหรับไมโครโฟนของคุณ) ฉันเปลี่ยนvolume =ส่วน100ที่เป็นเปอร์เซ็นต์แทนmerge

[Element Capture]
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right

ไปยัง

[Element Capture]
switch = mute
volume = 100
override-map.1 = all
override-map.2 = all-left,all-right

และหลังจาก a sudo alsa force-reloadแอปพลิเคชันจะไม่เปลี่ยนระดับเสียงไมโครโฟนอย่างน่าอัศจรรย์อีกต่อไป


0

หากนี่เป็นปัญหาเฉพาะกับ WebRTC ใน Chromium ให้ปิดใช้งาน WebRTC Echo Canceller โดยไปที่ " about: flags ":

WebRTC Echo Canceller pref


เกิดอะไรขึ้นกับ echos หลังจากปิดการใช้งาน Echo Canceller?
Xen2050

@ Xen2050 ที่จริงแล้วทางออกของฉันที่นี่ไม่ทำงาน Chromium ยังคงเปลี่ยนปริมาณการจับไมค์ของฉัน (กำไร) ...
Geremia
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.