Σύστημα Ήχου στο Ubuntu

...το μέρος για να ξεκινήσετε!

Συντονιστής: adem1

Κανόνες Δ. Συζήτησης
Παρακαλώ να επιλέξετε, με προσοχή, την άδεια που θέλετε να έχουν οι οδηγοί που συγγράφετε.
Πληροφορίες για τις άδειες μπορείτε να βρείτε εδώ.
Άμα επιθυμείτε κάποια άλλη άδεια επικοινωνήστε με κάποιο Διαχειριστή είτε Συντονιστή.

Σημαντικό είναι να χρησιμοποιήσετε την υπηρεσία http://imagebin.ubuntu-gr.org για τις εικόνες.

Σύστημα Ήχου στο Ubuntu

Δημοσίευσηαπό logari81 » 14 Νοέμ 2009, 17:47

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


Σύστημα Ήχου

Στο Ubuntu δεν υπάρχει μόνο ένα σύστημα για τον ήχο, υπάρχουν -όπως συνηθίζεται στο Linux- περισσότερα. Από καθαρά τεχνική σκοπιά είναι δυνατοί σχεδόν όλοι οι πιθανοί συνδυασμοί αυτών των συστημάτων, πρακτικά όμως μόνο ορισμένοι συνδυασμοί έχουν νόημα. Θα έπρεπε λοιπόν κανείς καταρχήν να συλλογιστεί πριν το στήσιμο ενός συστήματος ήχου, ποιες είναι οι απαιτήσεις του από αυτό κι έπειτα να να προχωρήσει στην κατάλληλη υλοποίηση. Το σύστηνα ήχου μιας κανονικής εγκτάστασης Ubuntu βασίζεται στο έργο Advanced Linux Sound Architecture ή εν συντομία ALSA. Το ALSA αναλαμβάνει τον χειρισμό των καρτών ήχου και παρέχει τους κατάλληλους οδηγούς για τις κάρτες ήχου. Αυτοί η οδηγοί αποτελούν ήδη κομμάτι του πυρήνα και γι'αυτό δεν απαιτείται επιπρόσθετη εγκατάστασή τους. Εξ'αυτού στο παρακάτω κείμενο χαρακτηρίζονται ως οδηγοί ALSA.

Ως εναλλακτική των οδηγών ALSA υπάρχουν οι οδηγοί του έργου Open Sound System ή εν συντομία OSS, για την περίπτωση στην οποία οι οδηγοί ALSA πραγματικά δεν μπορούν να λειτουργήσουν με την συγκεκριμένη κάρτα ήχου. Αυτήν είναι όμως μια πολύ σπάνια περίπτωση. Για περισσότερα δείτε παρακάτω.

Επιπλέον υπάρχουν διεπιφάνειες, οι οποίες παρεμβάλλονται στο σύστημα ήχου και οι οποίες έχουν ως στόχο να διευκολύνουν την ζωή των προγραμματιστών, αφορούν όμως ελάχιστα τον χρήστη. Στό GNOME για παράδειγμα πρόκειται για το GStreamer, ενώ στο KDE χρησιμοποιείται από την έκδοση 4 το Phonon.

1. Ρυθμίσεις
Στο Ubuntu παρέχεται πρόσβαση στις ρυθμίσεις του συστήματος ήχου μέσω του μενού "Σύστημα -> Ρυθμίσεις -> Ήχος".

Στο Kubuntu οι ρυθμίσεις του συστήματος ήχου γίνεται μέσω του Κέντρου ελέγχου.

2. Διακομιστής Ήχου
Ένας διακομιστής ήχου αναλαμβάνει την μείξη περισσότερων πηγών ήχου και την προώθηση των ηχητικών σημάτων στους οδηγούς των συσκευών. Υπάρχουν διαθέσιμοι οι εξής διακομιστές ήχου: το ίδιο το ALSA, το ESD (ή Arts στο Kubuntu) και το PulseAudio. Για επαγγελματική επεξεργασία ήχου υπάρχει επίσης το jack.

    2.1 Μείξη μέσω Hardware ή Software
    Απαιτείται ένας διακομιστής ήχου όταν η κάρτα ήχου δεν υποστηρίζει μείξη σε επίπεδο hardware. Mείξη σε επίπεδο hardware σημαίνει ότι η κάρτα είναι σε θέση να αναπαράγει συγχρόνως περισσότερες από μία πηγές ήχου. Δυστυχώς οι κάρτες που παρέχουν αυτή την δυνατότητα είναι λίγες και γι'αυτό κατά κανόνα είναι απαραίτητος ένας διακομιστής ήχου. Αυτή η λειτουργία ενός διακομιστή ήχου λέγεται μείξη μέσω software.

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

      * εύκολη χρήση
      * ποιότητα
      * δυνατότητες παραμετροποίησης
      * υποστήριξη δικτύου
      * ταχύτητα
    Κάθε διακομιστής ήχου έχει υπέρ και κατά:

      2.2.1 PulseAudio
      Από το Ubuntu 8.04 (Hardy Heron) υπάρχει προεγκατεστημένο ως διακομιστής ήχου το PulseAudio (συχνά αποκαλούμενο 'pa'). Παρέχει πληθώρα δυνατοτήτων και διαθέτει μια απλή γραφική διεπιφάνεια για τον έλεγχο των ηχητικών λειτουργιών στον υπολογιστή. Επιπλέον υποστηρίζει την αναπαραγωγή ήχου μέσω δικτύου. Από την άλλη έχει κάποιες συγκεκριμένες απαιτήσεις σε υπολογιστική ισχύ, οι οποίες σε παλαιότερους υπολογιστές μπορούν να οδηγήσουν σε διακοπτόμενο ήχο. Στο Ubuntu 8.04 το PulseAudio προκαλεί συχνά προβλήματα, από το Ubuntu 8.10 φαίνεται να έχει ξεπερασθεί το μεγαλύτερο μέρος αυτών των προβλημάτων και από το 9.04 το PulseAudio έχει πλέον καθιερωθεί. ...

      2.2.2 ALSA
      Καθότι σε μία κανονική εγκατάσταση Ubuntu το ALSA είναι έτσι κι αλλιώς πάντα ενεργό, αποτελεί τον ευκολότερη τρόπο να επιτύχουμε αναπαραγωγή ήχου. Συγχρόνως αποτελεί τον συντομότερο δρόμο για την επεξεργασία του ηχητικού σήματος και απαιτεί ελάχιστο υπολογιστικό χρόνο. Για κάποιον που προτιμάει έναν κατά το δυνατόν αναλλοίωτο ήχο το ALSA είναι η καλύτερη επιλογή. ...

      2.2.3 jack
      Το jack τους χαμηλούς χρόνους υστέρησης κι ένα εξαίρετο routing στοχεύει κυρίως στην επαγγελματική χρήση. Όποιος δεν το έχει πραγματική ανάγκη είναι καλό να εξετάσει αν όνυως τον χρειάζεται, καθότι ο κόπος για την εκμάθησή του δεν είναι αμελητέος και η ρύθμισή του απαιτητική. Αν κάποιος θέλει ένα στούντιο ήχου σε αυτήν την περίπτωση είναι το jack το κατάλληλο μέσο. Συγκριτικά με τις ικανότητές του αρκείτε το jack με σχετικά λίγο υπολογιστικό φορτίο, αν όμως χρησιμοποιείται σε συνδυασμό με το Ardour για παράδειγμα τότε απαιτείται ένας ισχυρός υπολογιστής. Προσ διευκόλυνση των ρυθμίσεών του υπάρχει πληθώρα σχετικών εργαλείων.

      2.2.4 OSS4
      Η τρέχουσα έκδοση του OSS (Open Sound System) το οποίο στο παρελθόν αποτέλεσε για πολύ καιρό το προεπιλεγμένο σύστημα ήχου του Linux. Το OSS4 μπορεί υπό συγκεκριμένες συνθήκες να φέρει πλεονεκτήματα σε σχέση με το ALSA. Στο Ubuntu όμως η εγκατάστασή του είναι δυνατή μόνο χειροκίνητα.

      2.2.5 ESD
      Ο ESD (Enlightened Sound Daemon) έχει βασικά μόνο ένα χαρακτηριστικό: χρησιμεύει ως software μείκτης ήχου. Στην ουσία δεν υπάρχει κάποιος ιδιίτερος λόγος για την χρήση του αλλά ούτε κάποια σοβαρή αιτία για να τον αποφύγει κανείς. Μετά την έκδοση του Ubuntu 8.04 αντικαταστάθηκε η χρήση του στο GNOME από το PulseAudio.

      2.2.6 arts
      Το arts ήταν αντίστοιχα για το KDE ότι ήταν το ESD για το GNOME. Καθότι το arts έχει την φήμη ότι προκαλεί περισσότερα προβλήματα απ'όσα λύνει, θα ήταν καλύτερο ως σύστημα ήχου να οριστεί απλώς το ALSA.
      Από την έκδοση 4 του KDE το arts καταργήθηκε πλήρως και αντικαταστάθηκε από το Phononon.

    2.3 Routing
    Ο όρος routing δηλώνει τον δρόμο που ακολουθούν τα ηχητικά σήματα, καθώς οδηγούνται μέσω του υπολογιστή. Ξεκινώντας από την πηγή ήχου, για παράδειγμα μια εφαρμογή αναπαραγωγής μουσικής ή βίντεο, μέχρι την κάρτα ήχου. Υπάρχουν πολλές δυνατότητες για την οδήγηση του ήχητικού σήματος. Σε αυτό το σημείο δίνουμε έμφαση σε εκείνες τις δυνατότητες που έχουν κάποιο νόημα καθότι υπάρχουν και περιπτώσεις που δεν έχουν κανένα πρακτικό νόημα.
    Είναι συχνά σκόπιμο να παρέχεται στα προγράμματα αναπαραγωγής ήχου η πληροφορία για το ποιον διακομιστή ήχου θα πρεπει να χρησιμοποιήσουν. Διότι σε αντίθετη περίπτωση μπορεί το ηχητικό σήμα που εξάγουν απλώς να χάνεται με αποτέλεσμα ο χρήστης να μην ακούει ήχο. Σε τεχνικούς όρους: θα πρέπει η πηγή ήχου να έχει ρυθμιστεί κατά τέτοιο τρόπο ώστε να χρησιμοποιείται η κατάλληλη διεπιφάνεια εξόδου του ήχου.

      2.3.1 PulseAudio
      Από την έκδοση 8.04 του Ubuntu χρησιμοποιείται ως διακομιστής το PulseAudio:
      * Πηγή ήχου -> Διακομιστής ALSA -> PulseAudio -> Οδηγοί ALSA -> Hardware
      Εν τω μεταξύ μπορούν ήδη πολλά προγράμματα να επικοινωνούν κατευθείαν με το PulseAudio:
      * Πηγή ήχου -> PulseAudio -> Οδηγοί ALSA -> Hardware
      Το PulseAudio υποστηρίζει και δίκτυα:
      * Πηγή ήχου -> PulseAudio -> Δίκτυο -> PulseAudio -> Οδηγοί ALSA -> Hardware
      Αυτό σημαίνει για παράδειγμα: αν σε δυο διαφορετικούς υπολογιστές εκτελείται το PulseAudio, μπορεί να τρέχει στον έναν το πρόγραμμα αναπαραγωγής ήχου και ο ήχος να ακούγεται από τον δεύτερο υπολογιστή. Κάτι τέτοιο είναι δυνατόν, με την προϋπόθεση μιας γρήγορης σύνδεσης, ακόμα και διαμέσου του διαδικτύου.

      2.3.2 ALSA
      Ο συντομότερος δρόμος είναι η απευθείας επικοινωνία με τους οδηγούς ALSA:
      * Πηγή ήχου -> Οδηγοί ALSA -> Hardware
      Αυτή η λύση έχει όμως ένα μειονέκτημα: ότι κάρτες ήχου χωρίς δυνατότητα μείξης σε επίπεδο hardware, μπορούν να αναπαράγουν κάθε φορά μόνο μία πηγή ήχου. Γι'αυτόν τον λόγο η βασική εγκατάσταση του Ubuntu περιλαμβάνει ενεργόποιημένο τον διακομιστή ALSA:
      * Πηγή ήχου -> Διακομιστής ALSA -> Οδηγοί ALSA -> Hardware
      Ο διακομιστής ALSA είναι στο Ubuntu έτοιμος προς χρήση, τουλάχιστον δεν απαιτείται από τον χρήστη κάποια ιδιαίτερη ρύθμιση. Εάν παρόλ'αυτά κάποιος θέλει να παρέμβει, μπορεί μέχρι το Ubuntu 9.04 να χρησιμοποιήσει τα εργαλεία asoundconf ή να επεξεργαστεί το αρχείο .asoundrc με το χέρι.

      2.3.3 jack
      Για επαγγελματικές απαιτήσεις διατίθεται το jack:
      * Πηγή ήχου -> jack -> Οδηγοί ALSA -> Hardware
      η ρύθμιση του jack δεν είναι εύκολη και γι'αυτό η χρήση του συνίσταται μόνον όταν κάποιος πραγματικά το χρειάζεται.
    2.4 Συσκευές
    Η μετάδοση των δεδομένων ήχου από τις διάφορες εφαρμογές στον εκάστοτε διακομιστή ήχου λαμβάνει χώρα μέσω των αποκαλούμενων συσκευών ήχου (στα αγγλικά "sound devices"). Γενικά το Ubuntu αναλαμβάνει όλες τις απαραίτητες ρυθμίσεις για την χρήση αυτών των συσκευών. Επειδή όμως υπάρχουν περισσότεροι διακομιστές ήχου είναι απαραίτητο να δηλώσει ο χρήστης στο Ubuntu ποιον διακομιστή επιθυμεί.

      2.4.1 PulseAudio
      Σε περίπτωση χρήσης του PulseAudio οι αναπαραγόμενοι ήχοι οδηγούνται με την βοήθεια του routing του ALSA στον διακομιστή ήχου PulseAudio. Εναλλακτικά είναι δυνατόν να ορισθεί στο εκάστοτε πρόγραμμα η απευθείας επικοινωνία με το PulseAudio. Η πρόσβαση στις επιμέρους συσκευές του PulseAudio είναι δυνατή μέσω της γραφικής διεπιφάνειας του μείκτη του PulseAudio, pavucontrol όπου η κάθε συσκευή έχει το όνομα του αντίστοιχου προγράμματος αναπαράγωγής ήχου. Από το Ubuntu 9.10 αυτή η λειτουργία του μείκτη pavucontrol έχει ενσωματωθεί στο gnome-volume-control.

      2.4.2 ALSA
      Στην περίπτωση του ALSA χρησιμοποιείται κατευθείαν σε επίπεδο (hw) η πρώτη κάρτα ήχου (νούμερο μηδέν), π.χ. "hw:0". Σε περίπτωση που υπάρχουν περίσσοτερες κάρτες ήχου, μπορεί κανείς να αναφερθεί για παράδειγμα στην δεύτερη με "hw:1". Κάτι τέτοιο είναι σπανίως απαραίτητο.
      Σε περίπτωση χρήσης του asoundconf για την ρύθμιση του διακομιστή ALSA, δημιουργείται μία προεπιλεγμένη συσκευή με το όνομα "default". Αυτή η συσκευή δέχεται τα δεδομένα ήχου και τα αναπαράγει. Το όνομά της μπορεί να ορισθεί στις ρυθμίσεις του εκάστοτε προγράμματων αναπαραγωγής (σε περίπτωση που δεν είναι ήδη ορισμένο). Επιπλέον μπορεί κάποιος μέσω του αρχείου .asoundrc να ορίσει δικές του συσκευές.
      Στο Ubuntu η συσκευή default είναι συνήθως προεπιλεγμένη κι έτσι δεν απαιτείται κάποια ιδιαίτερη παρέμβαση.

      2.4.3 jack
      Σε ότι αφορά το jack συνίσταται η χρήση του προγράμματος qjackctl.

      2.4.4 ESD
      Το ESD δημιουργεί επίσης μία προκαθορισμένη συσκευή, η οποία μπορεί πολύ απλά να χρησιμοποιηθεί, επιλέγοντας ως σύστημα ήχου το ESD.

      2.4.5 OSS
      Ιδιαίτερη περίπτωση αποτελούν οι αποκαλούμενες oss-devices (συσκευές oss). Στις απαρχές του Linux η αναπαραγωγή οποιουδήποτε ήχου διεκπεραιωνόταν μέσω του αρχείου-συσκευή /dev/dsp. Ορισμένα προγράμματα χρησιμοποιούν ακόμη αυτή και μόνον αυτή την συσκευή για την αναπαραγωγή ήχου. Επειδή όμως η συσκευή /dev/dsp έχει καταργηθεί, οι διακομιστές ήχου παρέχουν προσομοίωση αυτής της συσκευής. Στην περίπτωση του διακομιστή ALSA η ενεργοποίηση αυτής της προσομοίωσης μπορεί να γίνει με την εγκατάσταση του πακέτου alsa-oss. ...
3. Μείκτης
Ο μείκτης (επίσης αποκαλούμενος ως ρύθμιση έντασης) επεμβαίνει στους επιμέρους ρυθμιστές στάθμης που παρέχονται απευθείας από τους οδηγούς. Μία επισκόπηση των διαθέσιμων ρυθμιστών παρέχει ο alsamixer. Τα διάφορα γραφικά περιβάλλοντα (Gnome, KDE, ...) περιλαμβάνουν δικούς τους μείκτες, οι οποίοι στην ουσία δεν κάνουν τίποτα διαφορετικό από τον alsamixer. Απλώς προσφέρουν μία διαφορετική αναπαράσταση και δίνουν την δυνατότητα απόκρυψης ορισμένων ρυθμιστών. Τα παραπάνω δεν ισχύουν για την έκδοση GNOME από το Ubuntu 9.10 κι έπειτα καθότι ο προϋπάρχον μείκτης εδώ αντικαταστάθηκε με έναν μείκτη που βασίζεται στο PulseAudio.

Ο καθ'αυτού μείκτης του PulseAudio λέγεται pavucontrol και σε αντίθεση με τους προαναφερθέντες μείκτες τύπου alsamixer, παρέχει για κάθε εφαρμογή ανεξάρτητους ρυθμιστές έντασης.

4. Σε περίπτωση προβλημάτων
Σε περίπτωση που μία κάρτα ήχου είναι πραγματικά αδύνατο να λειτουργήσει με τους οδηγούς ALSA, μπορεί κανείς να χρησιμοποιήσει το Open Sound System. Για μη εμπορικούς σκοπούς η χρήση του είναι δωρεάν. Μία λίστα με τις υποστηριζόμενες κάρτες υπάρχει στην ιστοσελίδα του OSS. Μέχρι πρόσφατα για κάρτες του τύπου Soundblaster X-Fi ήταν απαραίτητη η εφαρμογή αυτής της λύσης καθότι το έργο ALSA υποστήριζε τέτοιες κάρτες πολύ υποτυπωδώς.
...
Γενικά είναι μια καλή πρακτική σε περίπτωση προβλημάτων να αρχίζουμε με ένα κατά το δυνατόν απλό σύστημα ήχου. Στην πράξη αυτό σημαίνει χρήση αποκλειστικά του συστήματος ALSA. Κατόπιν αφότου επιβαβαιωθεί η αναπαραγωγή ήχου με αυτό το βασικό σύστημα, μπορεί κανείς να επεκτείνει το σύστημα ήχου κατά προτίμηση.

5. Κάρτες ήχου με μείξη σε επίπεδο hardware
...

6. Σχετικοί σύνδεσμοι
ALSA Wiki: http://www.alsa-project.org
Skype Linux Sound FAQ: http://forum.skype.com/viewtopic.php?t=10858
ALSA - Audio-Plugins: http://www.alsa-project.org/alsa-doc/al ... ugins.html
http://opensourceecology.org/


Λειτουργικό: Ubuntu 10.04 lucid 64-bitΠροδιαγραφές: 4x Intel Core i5 CPU M 450 2.40GHz ‖ RAM 3696 MiB ‖ Lenovo KL3 - LENOVO IdeaPad Y560
Κάρτα γραφικών: ATI Device [1002:68c0]Ασύρματο: wlan0: Atheros Inc. AR928X Wireless Network Adapter (PCI-Express) [168c:002a] (rev 01)
logari81
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6074
Εγγραφή: 14 Μάιος 2008, 10:40
Εκτύπωση

  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Οδηγοί - How to - Tutorials

cron