Saya mencoba mengontrol volume menggunakan skrip pemrograman saya. Bagaimana saya dapat melakukan hal berikut di Fedora 15, Ubuntu linux?
- Bungkam / Bunyikan
- Volume naik dan volume turun
Catatan: Harap dicatat bahwa saya menggunakan mikrofon / speaker USB web dan juga mikrofon / pembicara analog. Saya ingin melamar semua untuk memastikan.
linux
command-line
audio
alsa
YumYumYum
sumber
sumber
<command>amixer -D pulse sset Master 3%+ unmute</command>
keybind yang relevan~/.config/openbox/lubuntu-rc.xml
dan kemudian menjalankannyaopenbox --reconfigure
untuk sayaJawaban:
Anda bisa menggunakan amixer . Ada dalam
alsa-utils
paket di Ubuntu dan Debian.Jalankan
amixer
tanpa parameter untuk mendapatkan gambaran umum tentang kontrol Anda untuk perangkat default.Anda juga dapat menggunakan
alsamixer
tanpa parameter (dari paket yang sama) untuk mendapatkan gambaran umum yang lebih visual. Gunakan F6 untuk melihat dan beralih antar perangkat. Umumnya Anda mungkin memiliki PulseAudio dan kartu suara perangkat keras untuk dipilih.Kemudian gunakan
amixer
denganset
perintah untuk mengatur volume. Misalnya, untuk mengatur saluran master ke 50%:Master
adalah nama kontrol dan harus cocok dengan yang Anda lihat ketika berjalan tanpa parameter.Perhatikan
%
tandanya, tanpa itu akan memperlakukan nilai sebagai tingkat 0 - 65536.Jika PulseAudio bukan perangkat default Anda, Anda mungkin dapat menggunakan
-D
sakelar:Perintah lain yang bermanfaat ditunjukkan dalam komentar:
Untuk menambah / mengurangi penggunaan volume
+/-
setelah nomor, gunakanUntuk menonaktifkan, mengaktifkan atau mengaktifkan antara kondisi tidak bersuara / tidak bersuara, gunakan
Perhatikan juga bahwa mungkin ada dua skala persentase yang berbeda, baku baku dan untuk beberapa perangkat skala yang lebih alami berdasarkan desibel , yang juga digunakan oleh
alsamixer
. Gunakan-M
untuk menggunakan yang terakhir.Terakhir, jika Anda hanya tertarik pada PulseAudio, Anda mungkin ingin memeriksa
pactl
(lihat salah satu jawaban lain).sumber
amixer set Master 10%+
danamixer set Master 10%-
M
master in peka huruf besar kecil (harus huruf besar).amixer -D pulse sset Master 50%
Untuk Membisukan:
amixer -D pulse sset Master mute
Untuk Membunyikan Suara:
amixer -D pulse sset Master unmute
Untuk meningkatkan volume 5%:
amixer -D pulse sset Master 5%+
Untuk mengecilkan volume 5%:
amixer -D pulse sset Master 5%-
sumber
amixer -D pulse sset Master unmute 5%+
pactl / pacmd (tidak seperti
amixer
) memungkinkan untuk meningkatkan volume lebih dari 100% :-).Pengaturan manual lebih dari 100% dimungkinkan dalam
pavucontrol
(tidak sepertialsamixer
).CATATAN: Jika Anda ingin berbagi perintah yang sama pada host yang berbeda dengan sink yang berbeda, Anda dapat menggunakan
@DEFAULT_SINK@
sebagai sink sebagai ganti angka0
:Anda mengatur wastafel default Anda dengan
pactl set-default-sink my-sink-name
(daftar nama denganpactl list short sinks
).UPDATE: ditambahkan
toggle mute
(terima kasih kepada Don Joe).Sumber: askubuntu.com , wiki.archlinux.org .
sumber
Volume lebih tinggi:
Volume yang lebih rendah:
Matikan sakelar:
Contoh keybindings untuk
i3
/sway
, perintahnya adalah setelahexec
:sumber
jika pengguna telah membisukan perangkat Anda harus 'unmute' itu. jika tidak, pengaturan persentase akan berfungsi tetapi suara masih mati
sumber
Jawaban pevik hampir benar untuk PulseAudio, dengan dua hal untuk menyebutkan:
perintah perubahan volume negatif akan menghasilkan kesalahan karena bagian minus-sesuatu darinya akan ditafsirkan sebagai opsi terpisah (tidak dikenali); Anda harus mematikan opsi penguraian dengan minus ganda di suatu tempat sebelum angka negatif, misalnya "- -5%"
keadaan mute yang sebenarnya adalah sesuatu yang harus dimungkinkan untuk beralih dengan kunci yang sama, yang tidak akan berfungsi jika Anda hanya mengatur volume ke nilai tetap 0, jadi perintah yang tepat untuk itu adalah:
pactl set-sink-mute @DEFAULT_SINK@ toggle
LE: Apakah petunjuk pertama dapat diterapkan mungkin tergantung pada versi PulseAudio yang Anda jalankan atau pada sesuatu yang lain di distro - Saya perhatikan bahwa di Ubuntu 16 berfungsi tanpa "-" dan gagal jika saya menambahkan "-" di depan persentase negatif.
sumber
xbindkeys-config
dan saya bahkan tidak perlu me-restart X :) (lol senyum ... no pun intended lol)amixer bekerja untuk saya, tetapi saya tidak mendapatkan animasi yang bagus yang saya dapatkan ketika saya menekan tombol volume naik pada keyboard saya.
Saya memutuskan untuk menggunakan
xte
untuk langsung menekan tombol itu dari baris perintah:Volume naik:
xte 'key 0x1008ff13'
Volume turun:
xte 'key 0x1008ff11'
Bisu:
xte 'key 0x1008ff12'
Saya menemukan keysym (nomor hex itu) dengan menggunakan
xev
.dan kemudian tekan tombol volume naik pada keyboard Anda untuk mendapatkan kunci tombol. Sym key dapat bervariasi dari satu sistem ke sistem sehingga menemukan itu dari xev akan menjadi cara yang paling dapat diandalkan.
Hasilnya terlihat seperti ini untuk saya:
sumber