Ubuntu ses problemlerini gidermek

Ubuntu Türkiye Wiki sitesinden
Gezinti kısmına atla Arama kısmına atla
Dikkat.png Aşağıdaki bölüm, bölüm içindeki komutlar, bilgiler Ubuntu 9.10 Karmic Koala sürümü içindir.


Bu bölüm Ubuntu'da doğru çalışmayan sesle ilgili temel çözümlerini içerir. Ses kartının takılı ve açık olduğu ayrıca Ses Tercihleri uygulamasındaki ayarların kontrol edildiği varsayılır.

Ubuntu Karmic sürümünde genel ses problemleri

Yanlış çekirdek sürümü


Jaunty'den Karmic'e geçen çoğu kişi hala Jaunty'nin çekirdeğini kullanıyor. Problem bazen bu sebepten kaynaklanıyor.

Tanı


Uçbirimi açın ve şu komutu girin:

Görevi: görevi
uname -r

Bunun sonucu eğer "2.6.31" ile başlamıyorsa yanlış çekirdekte (kernel) çalışıyorsunuz demektir.

Düzeltme/Çözüm


Uçbirime şunu girin:

Görevi: görevi
sudo update-grub

Ve bilgisayarı yeniden başlatın. Sonra, yukarıda açıklandığı gibi uname -r komutunu tekrar deneyerek doğru çekirdekle çalıştığınızı onaylayın.

Ses sürücülerini güncelleyin


Özellikle yeni bilgisayarlar sürücüleri standart Karmic ile uyuşmadı. Neyse ki ALSA 1.0.21 gibi daha yeni ses sürücüleri sadece birkaç tık uzaklıktadır.

Tanı


Eğer sesin hiç çalışmıyorsa güncelleme kötü bir denemedir (benim şimdi yaptığım gibi). Eğer kulaklık taktığında hoparlörün otomatik kapanması gibi Jack duyarlılığı ile ilgili problemlerin varsa mikrofon girişim çalışmıyor. Ayrıca uçbirimde şunu deneyin:

Görevi: görevi
dmesg 

Eğer "trying auto-probe from BIOS" (BIOS'dan otomatik yoklama yapılıyor) veya "switching to single_cmd mode" (tekli cmd kibi açılıyor) gibi bir satır görürseniz, bu demektir ki daha yeni ses sürücüsünde düzeltilmiştir. Fakat bunu yapmamış olsanız bile, bunu denemek hala kötü bir seçimdir.

Düzeltme/Çözüm


"linux-backports-modules-alsa-karmic-generic" paketini (veya Ubuntu Server Edition için "linux-backports-modules-alsa-karmic-server" paketini) yükleyin. Değişikliklerin etkili olması için bilgisayarı yeniden başlatmalısın.

Diğer bir işlem ses kartını engelliyor


En düşük seviyede aynı anda sadece bir uygulama ses kartını kullanabilir. Ses kartını eş zamanlı olarakçoklu uygulamalarda kullanmayı etkinleştirmek için ses sunucuya ihtiyacın vardır ve çoğu Ubuntu sürümü ses sunucu olarak PulseAudio'yi kullanır. Bununla beraber PulseAudio'dan önce eğer bir uygulama yöneticisi ses kartını çalıştırdıysa, ses çalışmayacaktır.

Tanı


Ses Tercihleri uygulamasında, PulseAudio sahte veya boş bir liste gösteriyor.

Uçbirimi açın ve şu komutu girin:

Görevi: görevi
sudo fuser -v /dev/dsp* /dev/snd/* /dev/seq*

Eğer en sağdaki sütunda "slmodemd" veya "timidity" gibi bir şey görürsen etkinsin demektir.

Düzeltme/Çözüm

Çözüm ses kartını engelleyen işlemin ne olduğuna bağlıdır.
slmodemd
Bu programcık bazen sesi engelleyici olarak bilinen modeminle alakalıdır. Bu problemden kurtulmak için şunlardan birini sürekli olarak yapabilirsin:

  • Eğer modemi kullanmıyorsan sl-modem-daemon paketini kaldırın.
  • Ubuntu audio dev PPA'da kullanılabilen bir PulseAudio paketini kullanın.
  • Eğer Ubuntu geliştirme sürümü çalıştırmanın ne olduğunu biliyorsan sisteminizi Lucid'e yükseltin.

Aksi taktirde, aşağıdaki yönergeleri takip edin.


timidity
timidity, bir MIDI dosya oynatıcısıdır. pulseaudio'nun uyguladığı esound iletişim kuralını kullanarak, /etc/default/timidity düzenleyerek (bunu yapman için yönetici (root) olarak oturum açmalısın) bunu yapılandırabilirsiniz. Bu dosyada 'TIM_ALSASEQPARAMS="-Os"' yazan satırı bulun ve şu şeklide değiştirin:

TIM_ALSASEQPARAMS="-Oe"

Ardından timidity şu komutu kullanarak yeniden başlatın:

Görevi: görevi
sudo /etc/init.d/timidity force-reload

Diğerleri Ses kartı engelleyen uygulamayı iptal etmek için killall komutunu kullanın. Örneğin:

Görevi: görevi
killall slmodemd

...eğer ses kartını engelleyen "slmodemd" ise. sudo fuser -v /dev/dsp* /dev/snd/* komutu yeniden kullanılarak problemin düzeltildiği varsayılır.

Ardından şu komutu kullanarak PulseAudio'yu yeniden başlatın:

Görevi: görevi
killall pulseaudio


Sonra PulseAudio otomatik oluşturacak (kendisini yeniden başlatacak)

İptal ettiğin işlemin ne olduğuna bağlı olarak, onu tekrar çalıştırmana gerek kalmadığından emin olmak için farklı ölçümler yapmalısın.

Gelişmiş karıştırıcı (Ses tercihleri)


ALSA ses tercihleri Karmic'de gizlidir.Çünkü normalde onları değiştirmene gerek yoktur (gereklik olan çoğu şey yeni ses kontrol uygulamasıdır). Fakat bazı sebeplerden dolayı ALSA seviye ses tercihlerine erişmeye ihtiyacın olabilir.

Tanı


Ses kısılmıştır veya çok azdır. Olağan dışı bir karıştırıcı objesini, vb. etkinleştirmelisin. Bazen dijital çıkış ister kısık isterse pasif olsun, analog çıkış çalışır. Bunun terside geçerlidir.

Düzeltme/Çözüm


Uçbirimi açın ve şu komutu girin:

Görevi: görevi
alsamixer

veya şununla ilk ses kartını belirtin:

Görevi: görevi
alsamixer -Dhw:0

alsamixer ile yapacağın bütün şeyler bu konunun dışındadır. Fakat şu komutu girdiğinde alsamixer hakkında neye ihtiyacın olduğunu muhtemelen öğrenebilirsin:

Ses ölçeği anormallikleri


PulseAudio!nun son sürümü kendi karıştırıcı kontrollerini kullanarak ses kartının değerini kontrol etmeye çalışır. Çoğunlukla bu düzgün çalışır, fakat yine de bazı istisnaları vardır.

Tanı


Şunlardan herhangi birini deneyin:

   * Sesi değiştirme, örneğin, %20'nin altındaki * her şey kısıktır ve %21 çok gürültülüdür.
   * Eğer ses belli bir değerin üstünde ise çok yüksektir.
   * Ölçeğin bölümlerinde ses değişiklikleri yok, örneğin, %20, %70'lik bir gürültü gibidir.

Düzeltme/Çözüm


PulseAudio'nun sesi nasıl kontrol ettiği ile ilgili birkaç değişken vardır. Tüm kullanıcılar için davranışı değiştirmek için ya /etc/pulse/default.pa'yı düzenleyin (bunu yapman için root olmalısın) ya da bu dosyayı ~/.pulse/default.pa'ya kopyalayın ve düzenleyin. Davranışı sadece mevcut kullanıcı için değiştimek istiyorsanız yukarda belirtilen dosyayı açın, "load-module module-udev-detect" içeren satırı bulun ve onu şu şekilde değiştirin:

load-module module-udev-detect ignore_dB=1

Değişiklikleri denemek için şu komutu kullanarak alsamixer'i yeniden başlatın:

Görevi: görevi
killall pulseaudio

Sonra PulseAudio otomatik oluşturacak (kendisini yeniden başlatacak)

Yukarıdaki çözümü yeterli bulmadıysan, "#load-module module-alsa-sink" şeklindeki satırı bulun ve şu şeklide onu değiştirin:

load-module module-alsa-sink control=PCM

(satırın başındaki kare işaretini (#) kaldırmayı unutmayın) İsterseniz kontrol edeceğiniz PulseAudio ile PCM'yi değiştirin.

Ardından yukarıda yaptığımız gibi killall pulseaudio komutunu kullanmalısın.

Ses bulunmuyor veya yeniden başlattıktan sonra kısıldı


Hata ayıklama

Tanı/Düzeltme/Çözüm


Ya normal ses kontrolü veya alsamixer'deki sesi yeniden etkinleştirin ya da girişte değerleri ayarlaması için bir betik ayarlayın. Bunun için amixer set komutunu kullanabilirsin.

Ses yok veya SDL tabanlı oyunlarda tutuklanma


Birçok oyun SDL kitaplığını kullanır. Normalde sadece SDL'nin ALSA sürümü yüklenir. Eğer SDL yerine PulseAudio kullanan bazı oyunların daha iyi çalıştığı biliniyor. Bunun sebebi alsa eklentilerindeki hatadan kaynaklanıyor.

Tanı


Synaptic'i açın ve oyunu içeren paketi seçin. Pakete sağ tıklayın ve Özellikleri seçin. "Destek dosyaları" sekmesine gidin ve "destek dosyaları"nı seçin. Eğer destek dosyası olarak "libsdl1.2debian" listelenmişse, oyun etkindir.

Düzeltme/Çözüm


libsdl1.2debian-pulseaudio paketini yükleyin ve oyunu yeniden başlatın.

Nadir olabilecek sebepler


ICE1712 için alternatif kanal eşleştirmesi gerekiyor


Audiophile 2496, Delta 1010LT ve ICE1712 çip kullanan diğer kartların kanal eşleştirmelerinde hata vardır.

Düzeltme/Çözüm


bug #178442 (İngilizce) bakınız.

Kartlar özgür olmayan yazılım gerektiriyor


Bazı yaygın olmayan kartlar başlangıçta indirilebilmesi için yazılıma gerek duyar. Ubuntu bu tür yazılımı içermez.

Tanı


Uçbirimi açıp şu komutu girin:

Görevi: görevi
dmesg 

Eğer "firmware: xxx not found." (buradaki xxx ses kart üreticisinin adıdır) şeklinde * bir şey görürsen, etkinsin.

Düzeltme/Çözüm


alsa-firmware'i yüklemelisin: alsa-firmware'nin ön paketli sürümleri Medibuntu'da bulunabilir. Ayrıca normal Ubuntu deposunda bulunan alsa-firmware-loaders paketinin yüklü olduğundan emin ol. Bu iki paketi yükledikten sonra bilgisayarı yeniden başlatın.

Daha iyi hata raporları


Bütün bunlara rağmen ses hala çalışmıyor mu?

   * Eğer PulseAudio'dan bir rapor aldıysan bir PulseAudio ayrıntı kaydı ekleyin.
   * Eğer Jack duyarlılık hatalarının raporladıysan bir ALSA codec dump ekleyin.
   * Ve her zamanki gibi uygun hata bilgisini rapora eklemek için
Görevi: görevi
ubuntu-bug -p PulseAudio

veya

Görevi: görevi
ubuntu-bug -p alsa-base

kullanın. Teşekkürler!

Ayrıca bakınız

Kaynakça