Σελίδα 1 από 1

Οδηγός επίλυσης προβλημάτων ήχου

ΔημοσίευσηΔημοσιεύτηκε: 26 Σεπ 2010, 12:04
από c7p
Οδηγός επίλυσης προβλημάτων ήχου


Το Ubuntu Linux είναι τέλειο για πολυμέσα, αλλά πολλές φορές είναι δέσμιο των προβλημάτων ήχου. Αυτό μπορεί να είναι πολύ εκνευριστικό για τους νέους καθώς και για τους παλιούς χρήστες του Ubuntu. Αυτός ο οδηγός θα σας βοηθήσει να διαγνώσετε και να λύσετε τα προβλήματα ήχου. Ευτυχώς καλύπτει τα περισσότερα ζητήματα με τον ήχο και μερικές από αυτές τις λύσεις μπορούν ακόμα να εφαρμοστούν και σε άλλες διανομές Linux, αλλά αυτός ο οδηγός δεν γράφτηκε με αυτή την προσδοκία και ούτε είναι εγγυημένη η επιτυχία των λύσεων.

Μερικές σύντομες προειδοποιήσεις πριν ξεκινήσουμε

  • Δεν είναι εγγυημένη η επιτυχία των λύσεις για όλους.
  • Αν έχετε κάποια πρόταση για τη βελτίωση του οδηγού παρακαλώ στείλτε μου ΠΜ.
  • Αν αποτύχετε στην εύρεση λύσης στο πρόβλημα σας σε αυτόν τον οδηγό και βρείτε λύση κάπου αλλού, παρακαλώ ενημερώστε με έτσι ώστε να μπορώ να προσθέσω τη λύση στον οδηγό, η οποία μπορεί να βοηθήσει κάποιον άλλο.
  • Αν δεν ακούτε τίποτα μετά την εγκατάσταση του Ubuntu τότε μπορεί να είναι ένα σφάλμα (bug) και θα ήταν καλό να αναφέρεται το σφάλμα. Οι προγραμματιστές του Ubuntu χρειάζονται την αναπληροφόρηση σου, έτσι ώστε να συνεχίσουν την βελτίωση του λειτουργικού συστήματος.
  • Στο πλαίσιο αυτού του οδηγού Ubuntu σημαίνει Ubuntu, Kubuntu και Xubuntu. Αν χρησιμοποιείτε Kubuntu τότε όπου βλέπετε να χρησιμοποιείται η λέξη "gedit" αντικαταστήστε την με την λέξη "kate" και αντίστοιχα αν χρησιμοποιείτε Xubuntu με την λέξη "mousepad".




Γενικά βήματα (Όταν δεν έχετε κανένα στοιχείο για το τι πρόβλημα υπάρχει)

Βήμα 1: Ανοίξτε το τερματικό και πληκτρολογήστε:

Κώδικας: Επιλογή όλων
aplay -l


  • Επιτυχία: Θα εμφανιστεί μια λίστα με όλες τις κάρτες ήχου που είναι εγκατεστημένες στο σύστημα σας. Αυτό σημαίνει ότι ο ήχος σας μπορεί απλά να είναι σε σίγαση. Δείτε την ενότητα του alsamixer παρακάτω.
  • Αποτυχία: Θα εμφανιστεί ένα μήνυμα παρόμοια με το:

    aplay: device_list: 221: no soundcard found...

    (συνεχίστε στο δεύτερο βήμα)

Βήμα 2:
Γράψτε την ακόλουθη εντολή στο τερματικό:

Κώδικας: Επιλογή όλων
lspci -v

  • Επιτυχία: Σε αυτό το σημείο θα πρέπει να δείτε την κάρτα ήχου σας στη λίστα. Αυτό είναι καλό σημάδι διότι το Ubuntu εντόπισε την κάρτα ήχου σας. Ωστόσο αυτό σημαίνει ότι οι οδηγοί της κάρτας δεν είναι εγκατεστημένοι ή δεν λειτουργούν σωστά.
  • Αποτυχία: Αν η κάρτα ήχου σας δεν είναι στη λίστα τότε υπάρχουν μερικά πράγματα που μπορείτε να κάνετε:
    1. Αν η κάρτα ήχου σας είναι ενσωματωμένη στη μητρική πλακέτα (onboard) τότε μπορεί να είναι απενεργοποιημένη από το BIOS. Επανεκκινήστε το σύστημα και κρατήστε πατημένο το κουμπί που σας εισάγει στο BIOS (συνήθως το F2 ή το Del)
    2. Αν δεν χρησιμοποιείται ενσωματωμένη κάρτα ήχου τότε διπλο-ελέγξετε αν η κάρτα ήχου κάθεται σωστά στο PCI/PCI-E slot. Αν η κάρτα σας δούλευε σωστά σε ένα άλλο λειτουργικό σύστημα τότε δεν υπάρχει περίπτωση να μην είναι τοποθετημένη σωστά.

Βήμα 3: Ελέγξτε αν υπάρχουν οδηγοί ALSA για την κάρτα ήχου σας.

Επισκεφτείτε τη σελίδα http://www.alsa-project.org/main/index.php/Matrix:Main και ψάξτε για τον κατασκευαστή της κάρτα ήχου σας (chipset). Ταιριάξτε το chipset που βρήκατε στο Βήμα 2, με τον οδηγό (driver).

  • Επιτυχία: Βρήκατε τον οδηγό του chipset της κάρτα ήχου σας.
  • Αποτυχία: Δεν βρήκατε τον οδηγό για το chipset (σε αυτή την περίπτωση δεν μπορώ να σας βοηθήσω αυτή τη στιγμή)


Βήμα 4: Γυρίστε στο τερματικό και πληκτρολογήστε:

Κώδικας: Επιλογή όλων
sudo modprobe snd-

Πατήστε το κουμπί Tab ΠΡΙΝ πατήσετε enter για να δείτε τη λίστα των modules. Προσπαθήστε να βρείτε το module που ταιριάζει με τον οδηγό που βρήκατε στο Bήμα 3.

  • Επιτυχία: Αυτό σημαίνει ότι η κάρτα ήχου σας είναι εγκατεστημένη αλλά δεν φορτώνεται. Τώρα πρέπει να τα φορτώσετε για την τρέχουσα συνεδρία. Για να τα φορτώσετε για πάντα (κάτι που είναι καλή ιδέα), θα χρειαστείτε να επεξεργαστείτε το αρχείο /etc/modules. Για να το κάνετε αυτό, πληκτρολογήστε στο τερματικό:

    Κώδικας: Επιλογή όλων
    sudo gedit /etc/modules


    Εισάγετε μόνο το όνομα του module που πρόκειται να φορτωθεί, στο τέλος του αρχείο. Τώρα απλά αποθηκεύετε το αρχείο.
  • Αποτυχία: Υπάρχουν δύο επιλογές σε αυτή την περίπτωση:

    1. Διαβάστε την ενότητα Λήψη των οδηγών ALSA από ένα *φρέσκο* πυρήνα. Συνιστάται στους χρήστες που πείραξαν τις ρυθμίσεις του ήχου και θέλουν να επαναφέρουν τον ήχο όπως ήταν αμέσως μετά από την εγκατάσταση του Ubuntu (χωρίς να χρειάζεται να επανεγκατασταθεί το Ubuntu)
    2. Διαβάστε την ενότητα Μεταγλώττιση των οδηγών ALSA


Λήψη των οδηγών ALSA από ένα *φρέσκο* πυρήνα.

Μερικές φορές ο ήχος ρυθμίστηκε σωστά, αλλά τα "πειράγματα" μας προκάλεσαν τη διακοπή λειτουργίας του για κάποιο λόγο. Για να γυρίσετε στην παλιά εγκατάσταση θα μπορούσατε να επανεγκαταστήσετε το Ubuntu αλλά αυτό είναι περιττό. Ένας γρηγορότερος τρόπος είναι να αφαιρέσετε απλώς τα προβληματικά πακέτα και να τα επανεγκαταστήσετε.

  1. Αφαιρέστε τα πακέτα

    Κώδικας: Επιλογή όλων
    sudo apt-get --purge remove linux-sound-base alsa-base alsa-utils

  2. Επανεγκαταστήστε τα ίδια πακέτα:

    Κώδικας: Επιλογή όλων
    sudo apt-get install linux-sound-base alsa-base alsa-utils

    ΣΗΜΑΝΤΙΚH ΣΗΜΕΙΩΣΗ: Οι χρήστες Ubuntu (GΝΟΜΕ) ανέφεραν ότι τα πακέτα 'ubuntu-desktop' και 'gdm' αφαιρούνται μετά την αφαίρεση του πακέτου 'linux-sound-base'. Αν σας συμβεί αυτό τότε τρέξτε την ακόλουθη εντολή:

    Κώδικας: Επιλογή όλων
    sudo apt-get install gdm ubuntu-desktop


    ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ: Οι χρήστες Xubuntu (XFCE) έχουν αναφέρει ότι τα πακέτα 'xubuntu-desktop' και 'gdm' αφαιρούνται μετά την αφαίρεση του πακέτου 'linux-sound-base'. Αν σας συμβεί το ίδιο, τότε τρέξτε την ακόλουθη εντολή:

    Κώδικας: Επιλογή όλων
    sudo apt-get install gdm ubuntu-desktop


  3. Επανεκκίνηση

    Το μυστικό εδώ είναι η επιλογή --purge. Αυτή αφαιρεί όλες τις επιπλέον πληροφορίες που συσσωρεύθηκαν μετά από το πείραγμα και επανεγκαθιστά τα πακέτα στην τελείως καθαρή κατάσταση τους.

  4. Τρέξτε την ακόλουθη εντολή:

    Κώδικας: Επιλογή όλων
    aplay -l

    • Επιτυχία: Η κάρτα ήχου σας ανιχνεύθηκε. Συνεχίστε στην ενότητα Χρήση του alsamixer.
    • Αποτυχία: Η κάρτα ήχου σας δεν ανιχνεύθηκε. Θα μπορούσατε να δοκιμάστε να μεταγλωττίσετε τους οδηγούς (χειροκίνητη εγκατάσταση). Συνεχίστε την επόμενη ενότητα Μεταγλώττιση οδηγών ALSA.


Μεταγλώττιση οδηγών ALSA

Αν είστε εδώ τότε είτε οι οδηγοί της κάρτα ήχου σας δεν φορτώθηκαν με το είτε θέλετε να μεταγλωττίσετε τους οδηγούς για σας από την αρχή (δηλ. να τους εγκαταστήσετε χειροκίνητα). Υπάρχουν δύο τρόποι για να εγκαταστήσετε του οδηγούς ALSA. Ο ένας είναι μέσω του συστήματος apt-get, ο οποίος συνιστάται καθώς τα δυσκολότερα πράγματα γίνονται σχεδόν αυτόματα. Ο άλλος τρόπος είναι κατεβάζοντας τους τελευταίους οδηγούς από τη σελίδα alsa-project.org. Αυτή η σελίδα έχει διαθέσιμους τους νεότερους οδηγούς αλλά δεν έχουν δοκιμαστεί με Ubuntu, οπότε πρέπει να χρησιμοποιηθούν με προσοχή.


Χρήση του alsa-source

  1. Πληκτρολογήστε τα ακόλουθα στο τερματικό, (το module-assistant είναι προαιρετικό ωστόσο σας το συνιστούμε. Αυτό θα μεταγλωττίσει δηλ. θα εγκαταστήσει τα πακέτα για εσάς):
    Κώδικας: Επιλογή όλων
    sudo apt-get install build-essential linux-headers-$(uname -r) module-assistant alsa-source
    sudo dpkg-reconfigure alsa-source

  2. Τώρα θα πρέπει να έχει εμφανιστεί ένα μεγάλο μπλε κουτί διαλόγου. Απαντήστε ναι/yes (για ΙSA-PNP - συνιστάται από τους συντηρητές των πακέτων), έπειτα επιλέξτε ναι/yes ξανά (για αποσφαλμάτωση- συνιστάται από τους συντηρητές των πακέτων).

  3. Τώρα πρέπει να διαλέξετε τον οδηγό για εγκατάσταση. Χρησιμοποιήστε το κουμπί space για να επιλέξετε ή να αποεπιλέξετε modules, και τα βελάκια (πάνω-κάτω) για να περιηγηθείτε. Θα πρέπει να ξέρετε τον οδηγό σας απο το γενικό Bήμα 3. Αποεπιλέξτε όλα (Deselect all) και βρείτε και επιλέξτε τον οδηγό σας. Πατήστε enter.

    • Αν επιλέξατε το module-assistant (βλπ 1.):
      Πληκτρολογήστε την παρακάτω εντολή στο τερματικό:

      Κώδικας: Επιλογή όλων
      sudo module-assistant a-i alsa-source

      Αν η γραμμή εξέλιξης φτάσει το 100% χωρίς κανένα σφάλμα, έχετε εγκαταστήσει τους οδηγούς επιτυχώς. Συνεχίστε στο γενικό Bήμα 4.

    • Αν δεν επιλέξατε το module-assistant:

      Να θυμάστε τον αριθμό του οδηγού σας και αντικαταστήστε τον όπου υπάρχει μπλέ κείμενο από εδώ και κάτω.
      Ανοίξτε το τερματικό και δώστε διαδοχικά τις παρακάτω εντολές:

      Κώδικας: Επιλογή όλων
      cd /usr/src sudo tar xjvf alsa-driver.tar.bz2 cd modules/alsa-driver
      sudo ./configure --with-kernel=/usr/src/linux-headers-$(uname -r) --with-cards= --with oss=yes
      sudo make install


      Αν δεν εμφανίστηκε κάποιο μήνυμα σφάλματος τότε έχετε εγκαταστήσει επιτυχώς τους οδηγούς.
      • Επιτυχία: Συνεχίστε από το γενικό βήμα 4
      • Αποτυχία: Παρακαλώ αναφέρεται το πρόβλημα που έχετε μήπως μπορέσει κάποιος απο το φόρουμ να σας βοηθήσει.

Χρήση του ALSA mixer

Γράψτε την παρακάτω εντολή στο τερματικό:

Κώδικας: Επιλογή όλων
alsamixer


Αφού το κάνετε θα δείτε ένα γραφικό equilizer. Χρησιμοποιήστε τα βελάκια για να περιηγηθείτε δεξιά και αριστερά. Τα βελάκια πάνω κάτω ανεβάζουν και χαμηλώνουν την ένταση, αντίστοιχα. Το 'M' προκαλεί σίγαση (mute) και την αναιρεί. Υπάρχει επίσης ένα πρόγραμμα που λέγεται "Gnome ALSA Mixer", το οποίο μπορεί να είναι ευκολότερο στη χρήση για κάποιους χρήστες.


Αποθήκευση ρυθμίσεων ήχου

Αυτή η διαδικασία επιβεβαιώνει ότι οι ρυθμίσεις ήχου του ALSA φορτώνονται σε κάθε εκκίνηση. Πρώτα σιγουρευτείτε ότι οι ρυθμίσεις είναι όπως τις θέλετε στο alsa mixer. Έπειτα τρέξτε (όπου 0 ο αριθμός του οδηγού σας, που βρίκατε λίγο πιο πάνω):

Κώδικας: Επιλογή όλων
sudo alsactl store 0

ή αν αυτή είναι η νιοστή κάρτα ήχου σας τότε αντικαταστήστε το 0 με το ν-1 (το ν είναι ο αριθμός των καρτών).

Ρυθμίστε τις προεπιλεγμένες κάρτες ήχου

Τρέξτε την ακόλουθη εντολή:

Κώδικας: Επιλογή όλων
cat /proc/asound/modules

Αυτή η εντολή θα σας δώσει το όνομα και τον δείκτη κάθε κάρτας ήχου που έχετε. Κρατήστε μια σημείωση με τα ονόματα τους και αποφασίστε ποια κάρτα θέλετε να είναι η προεπιλεγμένη κάρτα ήχου του συστήματος.

Πληκτρολογήστε:

Κώδικας: Επιλογή όλων
sudo gedit /etc/modprobe.d/alsa-base

Στο τέλος του αρχείου προσθέστε: (Σε αυτό το παράδειγμα υποθέτουμε ότι έχουμε τρίς κάρτες ήχου (ABC) με τη σειρά CAB)

options snd-C index=0
options snd-A index=1
options snd-B index=2


Προσθήκη ενός χρήστη στην ομάδα ήχου

Ένας κοινός λόγος που ένας χρήστης δεν έχει ήχο είναι η απουσία του ονόματος του χρήστη από το /etc/group. Για να το ελέγξετε τρέξτε:

Κώδικας: Επιλογή όλων
grep 'audio' /etc/group

Θα πρέπει να εμφανιστεί μια γραμμή παρόμοια με αυτή:

audio: x:29:

ακολουθούμενη απο ένα όνομα χρήστη. Σε αντίθετη περίπτωση μπορείτε να προσθέσετε το όνομα χρήστη στο αρχείο τρέχοντας την εντολή:

Κώδικας: Επιλογή όλων
sudo gedit /etc/group

Ψάξτε για μια γραμμή η οποία θα μοιάζει με αυτή:

audio:x:29:root

και αλλάξτε την σε

audio:x:29:root:όνομα_χρήστη


Αντικαταστήστε το όνομα_χρήστη με το ακριβές όνομα χρήστη, και αποθηκεύστε το αρχείο.

Τέλος :)

Ο παρόν οδηγός είναι αποτέμεσμα μετάφρασης του οδηγού http://lotphelp.com/lotp/the-ubuntu-sound-problem-solution-guide απο την
Ομάδα Μετάφρασης του Ubuntu-gr (μεταφράζουμε κυρίως οδηγούς και wiki-αναρτήσεις. Η ομάδα είναι πάντα ανοιχτή για νέα μέλη).
Παρόλο που το αυτή τη στιγμή το παρόν κείμενο αποτελεί απλώς μετάφραση του αρχικού, το κείμενο είναι ανοιχτό για οποιεσδήποτε προσθήκες.