Khi tôi nhấn phím tắt tiếng trên bàn phím, cả kênh chính Alsa và kênh chính PulseAudio đều bị tắt tiếng, nhấn lại chỉ tắt tiếng kênh chính alsa, kênh chính của pulseaudio sẽ bị tắt tiếng. Kết quả: không có âm thanh. Làm thế nào để tôi sửa nó?
Khi tôi nhấn phím tắt tiếng trên bàn phím, cả kênh chính Alsa và kênh chính PulseAudio đều bị tắt tiếng, nhấn lại chỉ tắt tiếng kênh chính alsa, kênh chính của pulseaudio sẽ bị tắt tiếng. Kết quả: không có âm thanh. Làm thế nào để tôi sửa nó?
Câu trả lời:
Chạy lệnh này:
amixer -D pulse set Master 1+ unmute
amixer -D pulse set Master 1+ toggle
nó đơn giản hơn nhiều
amixer -D pulse set Master Playback Switch toggle
đặt cái này làm phím nóng thành "Tắt tiếng \ Tắt tiếng". điều khiển âm lượng có thể được để lại như họ đang có.
Mint 15 Mate - tự mình tìm ra nó, hoạt động tốt với tôi.
amixer -D pulse set Master toggle
sẽ làm. Amixer mong đợi một tên điều khiển bộ trộn đơn giản cho lệnh set hoặc sset và ngay cả khi nó chấp nhận một tên điều khiển bộ trộn hoàn chỉnh, bạn sẽ phải trích dẫn một tên nhiều từ như vậy. Bạn có thể sử dụng công cụ sửa đổi tùy chọn playback
trong lệnh như thế này: amixer -D pulse set Master playback toggle
nhưng không cần thiết, nếu Master
không có khả năng chụp. Bằng cách sử dụng các công cụ sửa đổi tùy chọn, bạn cũng có thể kiểm soát lệnh nào được áp dụng, nếu hệ thống của bạn có khả năng âm thanh vòm.
Tôi gặp vấn đề tương tự khi chạy máy tính để bàn MATE trên phiên bản Linux Mint Debian (201204).
Hành động "Tăng âm lượng" không thể bật tiếng cho âm lượng. Tôi nhận ra rằng vấn đề là do Pulseaudio, nhưng gói mate-media-gstreamer
và mate-settings-daemon-gstreamer
nơi được cài đặt theo mặc định. Bằng cách cài đặt mate-media-pulse
và mate-settings-daemon-pulse
(đã gỡ cài đặt mate-media-gstreamer
và mate-settings-daemon-gstreamer
) và tadam ... hành động "Tăng âm lượng" đã có thể bật lại âm lượng!
Tôi hy vọng điều này cũng sẽ làm việc cho bạn!
amixer -D pulse set Master xxx
là một lần bắn hoặc cần được ánh xạ thủ công vào một phím tắt. Giải pháp đề xuất ở đây trông giống như ý nghĩa của nó.
Đó là một vấn đề với pulseaudio, các lệnh cho alsa hoặc amixer sẽ không gửi đúng cách để bật xung. Khi các lệnh alsa gửi tín hiệu tắt tiếng, đó là lệnh chuyển đổi (gửi cùng một lệnh để tắt tiếng / bật tiếng).
Bây giờ trong pulseaudio họ có mã tắt tiếng và tắt tiếng riêng biệt! Nhiều báo cáo rằng việc không cài đặt pulseaudio sẽ giải quyết vấn đề, nhưng đối với một số người không thực sự là một câu trả lời chấp nhận được (như tôi, bởi vì xung rất hữu ích cho nhiều ứng dụng).
Vì vậy, để giải quyết điều này, chúng ta cần tạo một kịch bản,
1- Tạo một biểu tượng trống mới trong trình soạn thảo văn bản như gedit hoặc mousepad,
2- Dán mã này vào doccument, Soruce của mã: 2
#!/bin/bash
#### Create ~/.pulse/mute if not exists
ls ~/.pulse/mute &> /dev/null
if [[ $? != 0 ]]
then
echo "false" > ~/.pulse/mute
fi
####Create ~/.pulse/volume if not exists
ls ~/.pulse/volume &> /dev/null
if [[ $? != 0 ]]
then
echo "65536" > ~/.pulse/volume
fi
CURVOL=`cat ~/.pulse/volume` #Reads in the current volume
MUTE=`cat ~/.pulse/mute` #Reads mute state
if [[ $1 == "increase" ]]
then
CURVOL=$(($CURVOL + 3277)) #3277 is 5% of the total volume, you can change this to suit your needs.
if [[ $CURVOL -ge 65536 ]]
then
CURVOL=65536
fi
elif [[ $1 == "decrease" ]]
then
CURVOL=$(($CURVOL - 3277))
if [[ $CURVOL -le 0 ]]
then
CURVOL=0
fi
elif [[ $1 == "mute" ]]
then
if [[ $MUTE == "false" ]]
then
pactl set-sink-mute 0 1
echo "true" > ~/.pulse/mute
exit
else
pactl set-sink-mute 0 0
echo "false" > ~/.pulse/mute
exit
fi
fi
pactl set-sink-volume 0 $CURVOL
echo $CURVOL > ~/.pulse/volume # Write the new volume to disk to be read the next time the script is run.
3- Đặt tên cho tệp là "volume" (không cần phần mở rộng) đặt nó ở đâu đó bạn có thể tìm và sẽ không xóa nó như thư mục nhà của bạn
4- Làm cho tệp có thể thực thi được bằng cách nhấp chuột phải vào tệp, đi đến Thuộc tính, sau đó là tab Quyền và sử dụng hộp kiểm để đánh dấu tệp có thể thực thi được, điều này sẽ cho phép tập lệnh được chạy. mark-file-as-execible-gui
5- Tiếp theo chúng ta cần liên kết các lệnh với bàn phím, các lệnh cho mã là tăng, giảm và tắt tiếng.
Vì vậy, hãy chuyển đến cài đặt bàn phím - how-do-i-change-my-keyboard-Phím-in-xubfox , Trong vùng phím tắt, nhấp vào thêm, sau đó mở, Mở tệp "âm lượng" chúng tôi đã tạo, sau đó thêm lệnh đối với mã sau âm lượng, đọc tăng âm lượng hoặc tắt âm lượng ect. nhưng với vị trí của tệp mã trước nó như "/ home / username / volume shut"
Sau đó gán nó cho bàn phím bằng cách nhấn phím hoặc nếu phím đã được sử dụng,
~ Rất có thể là trường hợp ~ tìm chúng và thay thế lệnh.
Các phím tắt có khả năng được gọi là XF86AudioRaiseVolume, XF86AudioLowerVolume, XF86AudioMute . Vì chỉ có người câm bị hỏng nên tập trung nỗ lực của bạn vào việc thay đổi điều đó trước.
Lỗi: 1
XF86AudioMute
ánh xạ tới lệnh amixer set Master toggle
. Các phím tăng và giảm âm lượng được ánh xạ tương tự như amixer
các lệnh.
pactl set-sink-volume 0 +5%
, pactl set-sink-volume 0 -5%
và pactl set-sink-mute 0 toggle
để tăng âm lượng, giảm âm lượng và chuyển đổi âm lượng, tương ứng.
Xem:
https://bugs.launchpad.net/xfce4-volumed/+orms/883485/comments/3
xfce4-mixer có một cài đặt active-card
, phải được đặt thành Pulseaudio, nếu không nó sẽ sử dụng Alsa.
Đối với người dùng KDE và kmix, nếu bạn sử dụng tập lệnh này, bạn vẫn sẽ có phản hồi trực quan hoạt động:
#! /bin/bash
DBUS=qdbus 2> /dev/null
case "$1" in
volup)
pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo 0
${DBUS} org.kde.kmix /kmix/KMixWindow/actions/increase_volume com.trolltech.Qt.QAction.trigger
;;
voldn)
pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo 0
${DBUS} org.kde.kmix /kmix/KMixWindow/actions/decrease_volume com.trolltech.Qt.QAction.trigger
;;
mute)
${DBUS} org.kde.kmix /kmix/KMixWindow/actions/mute com.trolltech.Qt.QAction.trigger
pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo $(${DBUS} org.kde.kmix /Mixers/0/Master_0 org.kde.KMix.Control.mute | sed 's/false/0/g;s/true/1/g')
;;
*)
echo "Usage: mixctl <volup|voldn|mute>" >&2
exit 1
;;
esac
exit 0
Sử dụng:
1) Lưu dưới dạng ~ / bin / mixctl
2) Hủy ánh xạ các phím tắt bàn phím kmix mặc định cho Tăng âm lượng / Giảm âm lượng và Tắt tiếng
3) Tạo ba phím tắt tùy chỉnh mới có tên 'Tăng âm lượng', 'Giảm âm lượng' và 'Tắt tiếng'
- > loại phím tắt: lệnh
-> khi các lệnh sử dụng ~ / bin / mixctl volup , ~ / bin / mixctl voldn và ~ / bin / mixctl tắt tiếng tương ứng
Tôi gặp vấn đề tương tự trên nhiều máy Xubfox 12.04 được nâng cấp lên XFCE 4.10. Dưới đây là một cách rất nhanh để giải quyết vấn đề này từ dòng lệnh (hoặc với một bash
tập lệnh).
Không giống như các giải pháp trước đây cung cấp các tập lệnh stop-gap, giải pháp này khôi phục hoàn toàn chức năng của nút tắt / bật tiếng.
Chỉ cần đưa ra hai lệnh sau một lần, để giải quyết vấn đề một lần và mãi mãi:
$ xfconf-query --channel xfce4-mixer --property /active-card --set PlaybackInternalAudioAnalogStereoPulseAudioMixer --reset
$ xfconf-query --create --channel xfce4-keyboard-shortcuts --property /commands/custom/XF86AudioMute --type string --set 'amixer -D pulse set Master 1+ toggle'
Tôi tìm thấy một giải pháp đơn giản phù hợp với tôi trong diễn đàn này . Cụ thể, bạn cần thêm phần này vào /etc/asound.conf
:
pcm.pulse {
type pulse
}
ctl.pulse {
type pulse
}
pcm.!default {
type pulse
}
ctl.!default {
type pulse
}
Và sau đó đặt phím tắt cho phím tắt tiếng với lệnh là:
amixer set Master toggle
Bạn có thể sử dụng cài đặt bàn phím để đặt nút tắt tiếng để thực thi lệnh được tìm thấy TẠI ĐÂY . Mặc dù phương pháp đầu tiên được liệt kê trên liên kết này là vô ích đối với tôi, nhưng phương pháp thứ hai hoạt động rất tốt cho XFCE4 : $ pactl set-sink-mute 0 toggle
. Bạn cũng có thể tạo một tập lệnh hoặc trình khởi chạy để thực thi lệnh khi nhấp chuột.
FYI, nếu bạn đang sử dụng một cái gì đó như Cinnamon (và có lẽ là các máy tính để bàn dựa trên gnome khác) thì gợi ý trên của người dùng197761 có vẻ tốt hơn, vì applet âm thanh của quế nhận ra âm lượng bị tắt: amixer -D pulse set Master Playback Switch toggle
(nếu bạn thích lệnh sau này, vui lòng nêu lên câu trả lời của anh ấy / cô ấy, không phải của tôi.)