Setiap kali saya ingin menggunakan Skype, saya harus memilih preferensi suara. Dan di sana, putar audio-in ke " webcam " dan hapus centang tombol " bisu ". Cukup menyebalkan. Apakah ada cara untuk selalu menjaga konfigurasi yang sama?
Setiap kali saya ingin menggunakan Skype, saya harus memilih preferensi suara. Dan di sana, putar audio-in ke " webcam " dan hapus centang tombol " bisu ". Cukup menyebalkan. Apakah ada cara untuk selalu menjaga konfigurasi yang sama?
Jawaban:
Saat menjalankan pulseaudio, semua pengaturan dapat ditentukan dengan meletakkan file konfigurasi khusus di .pulse
direktori tersembunyi di HOME Anda. Jika file ini belum ada di sana, Anda dapat menggunakan file standar dari /etc/pulse/
sebagai templat. Sebagian besar entri memiliki penjelasan verbal dalam file-file ini.
~/.pulse/default.pa
memuat modul dan menetapkan standar~/.pulse/client.conf
untuk mengkonfigurasi klien untuk server suara~/.pulse/daemon.conf
untuk menentukan laju sampel dan bufferUntuk menjadikan webcam Anda sumber default, kami perlu mengetahui nama dan nomor sumber ini dengan melihat daftar yang dihasilkan oleh perintah berikut di terminal:
pacmd list-sources
Kami kemudian mengedit baris berikut di ~/.pulse/default.pa
:
set-default-source [name]
dan ganti [name]
dengan nama atau nomor sumber untuk sumber yang diinginkan. Kami kemudian perlu memastikan bahwa sumber tidak dibisukan dengan menambahkan baris ini:
set-source-mute [name]|[#n]> 0
Beri nama atau indeks sumber Anda. Anda dapat menambahkan berbagai pengaturan lain yang dirujuk di PulseAudio Wiki (sekarang di halaman manual :)man pulse-cli-syntax
.
Disarankan untuk terlebih dahulu menguji semua perintah melalui antarmuka baris perintah sebelum mengubah file konfigurasi. Ini dapat dibuka dengan pacmd
di terminal
/etc/pulse/default.pa
. Gunakan file ini atau salin ke ~/.pulse
sebelum mengedit.
pacmd list-sources
. Yaitu dengan untuk perangkat saya itu set-default-source alsa_input.usb-0d8c_USB_PnP_Sound_Device-00-Device.analog-mon
.
Saya setuju bahwa masalahnya adalah Pulseaudio tidak menetapkan perangkat USB sebagai default karena tidak ada saat pulsa dimulai.
Soo solusi saya untuk ini adalah untuk menghubungkan ke sistem yang melakukan pemberitahuan ketika perangkat USB yang terhubung ... UDEV!
BTW, instruksi ini sedikit funky, dan saya berasumsi bahwa Anda merasa nyaman melakukan hal-hal di baris perintah, dan menjadi pengguna root untuk memperbarui file udev, dan membuat skrip dapat dieksekusi.
Langkah pertama adalah mencolokkan webcam Anda dan menemukan vendor ajaib dan nomor produk dengan mengetik
lsusb
Saya menggunakan Microsoft Lifecam, dan ditampilkan sebagai
Bus 001 Device 013: ID 045e:072d Microsoft Corp.
bagian yang penting adalah 045e: 072d
Selanjutnya, saat webcam terhubung, cari tahu nama perangkat pulseaudio. Tipe
pacmd list-sources
Sekali lagi, saya mencari baris yang dimulai name:
kemudian memiliki sesuatu tentang Microsoft Lifecam ... ini dia
name: <alsa_input.usb-Microsoft_Microsoft___LifeCam_VX-5500-02-VX5500.analog-mono>
jadi nama perangkat pulseaudio saya akan menjadi alsa_input.usb-Microsoft_Microsoft___LifeCam_VX-5500-02-VX5500.analog-mono
Kemudian saya membuat aturan udev baru yang diaktifkan ketika perangkat USB dengan vendor = 045e dan produk = 072d dimasukkan. Untuk membuat aturan, buat file baru yang disebut /etc/udev/rules.d/
SESUATU.rules
(saya menelepon file saya /etc/udev/rules.d/95-webcam-mic.rules
).
Masukkan baris ini ke dalam file
SUBSYSTEMS=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="072d", ACTION=="add", GROUP="audio", RUN+="/usr/local/bin/webcam-mic"
Ingatlah untuk mengganti ATTR {idVendor} dan ATTR {idProduct} dengan nilai untuk webcam Anda.
Apa aturan ini adalah menjalankan skrip untuk mengatur perangkat usb untuk input, yaitu RUN+="/usr/local/bin/webcam-mic"
bagian.
Waktu ikhtisar cepat. Setiap kali saya menghubungkan webcam saya, saya ingin menjalankan perintah
pacmd set-default-source alsa_input.usb-Microsoft_Microsoft___LifeCam_VX-5500-02-VX5500.analog-mono
Tetapi perintah itu harus dijalankan seperti saya (pengguna yang menjalankan desktop), tetapi udev berjalan sebagai pengguna root - jadi ketika udev menjalankan perintah saya, saya perlu mengubahnya ke pengguna saya kemudian jalankan perintah.
Jadi kami memiliki 2 opsi.
Cepat dan kotor . Buat menjalankan aturan udev su james -c pacmd set-default-source...
ini sooo salah. Aku bahkan tidak bisa menyelesaikan mengetik perintah. Bagaimana jika Anda mengubah webcam? Bagaimana jika Anda menginstal ini untuk pengguna lain?
Pembersih sedikit . Jalankan skrip yang membaca file default yang memiliki nama perangkat pulseaudio, dan nama pengguna Anda di dalamnya. Jika Anda ingin file-file itu ada di GitHub. Pertama skripnya /usr/local/bin/webcam-mic
. File default /etc/default/webcam-mic
hanya perlu mendefinisikan 2 variabel shell, sesuai komentar di intinya. Masukkan skrip ke dalam /usr/local/bin/
dan membuatnya dapat dieksekusi. Kemudian masukkan file default /etc/defaults/
dan edit untuk menggunakan nama pengguna Anda dan perangkat pulseaudio dari sebelumnya.
Semoga berhasil!
Solusi oleh Takkat tidak berfungsi untuk saya, ini solusi saya untuk siapa pun yang masih memiliki masalah dengan ini.
Ada dua masalah bagi saya dengan solusi oleh Takkat. Pertama, saya menyadari bahwa perlu ada penundaan setelah startup sebelum beralih ke mikrofon dapat terjadi (saya menggunakan perintah 'sleep' dalam solusi saya di bawah). Juga, perintah 'set-default-source' berfungsi untuk mengaktifkan mikrofon USB, tetapi entah bagaimana Skype tidak mengenali ini dan terus menggunakan mikrofon internal.
Agar ini berfungsi, pertama berguna untuk menginstal pavucontrol. Di pavucontrol, buka tab 'Konfigurasi', dan amati apa yang terjadi dengan perintah di bawah ini untuk memeriksa apakah semuanya berfungsi sebagaimana dimaksud.
Kemudian, dari terminal masukkan:
pacmd
Dari sana, masukkan:
list-cards
Dalam output, cari nomor indeks audio USB yang Anda inginkan (dalam kasus saya, ini '1'). Kemudian lihat baris yang tercantum di bawah 'profil' untuk kartu default dan kartu USB. Ini harus sama dengan yang terdaftar di pavucontrol, dan bisa berupa 'ouput: input + output', 'off', atau 'input: analog-mono' dll. Masih di baris perintah pacmd, perintah set-card-profile <index number> <profile name>
harus berubah pengaturan di pavucontrol. Apa yang ingin kita lakukan di sini adalah untuk mengganti audio internal dari duplex ke output saja, dan USB ke input.
Setelah menemukan profil yang sesuai, kami ingin membuat perintah startup untuk mengubah beberapa pengaturan setelah startup. Untuk membuat perintah startup, buka tanda hubung dan cari 'aplikasi startup', lalu klik 'tambah', lalu masukkan nama pilihan Anda dan perintah yang sesuai di bawah ini.
Setelah coba-coba, perintah memulai saya akhirnya tampak seperti ini:
bash -c "sleep 30 && pacmd set-card-profile 0 output:analog-stereo && pacmd set-card-profile 1 off && pacmd set-card-profile 1 input:analog-mono"
Penjelasan: Saya menemukan bahwa perintah 'sleep' diperlukan, ini berarti bahwa perintah dijalankan setelah jeda, yang saya setel ke 30 detik (saya pikir ini bisa kurang, bermain-main dengan ini). Perintah selanjutnya (setelah '&&') adalah untuk mendapatkan profil kartu default (internal) untuk beralih dari input + output (duplex, yang merupakan default) ke hanya keluaran. Perintah selanjutnya adalah untuk kartu suara USB (dalam kasus saya, angkanya adalah '1') untuk mematikan. Perintah terakhir adalah untuk kartu yang sama ini untuk dihidupkan kembali dalam mode 'input: analog-mono'
Anda mungkin harus bermain-main dengan pengaturan ini, untuk menemukan yang berfungsi.
Sekarang ketika saya mulai, mikrofon USB saya siap digunakan setelah 30 detik, dan Skype menggunakan mikrofon yang benar.
coba ini, klik pada ikon speaker di panel atas Anda, preferensi klik. di sana Anda dapat memilih opsi input default untuk mikrofon Anda dan mungkin mengubah beberapa konfigurasi perangkat keras agar berfungsi ok.