Γεννήτρια χαμηλών συχνοτήτων από το PC (Linux)

Κάθε κάρτα ήχου σε Η/Υ μπορεί να χρησιμοποιηθεί ως μια γεννήτρια χαμηλών συχνοτήτων για βασικές μετρήσεις σε κυκλώματα ήχου (λόγος ενίσχυσης, απόκρισης συχνότητας).

Κυκλοφορούν αρκετά ελεύθερα προγράμματα ανοικτού κώδικα (open source) όπως το Audacity που περιέχουν λειτουργίες «γεννήτριας συχνοτήτων» σε γραφικό περιβάλλον.

Εναλλακτική «ελαφριά» λύση είναι τα προγράμματα που «τρέχουν» σε περιβάλλον τερματικού Linux όπως αυτά που περιέχονται στο πακέτο «siggen» που μπορούν να τρέξουν με λίγους πόρους σε πλακέτες «embedded linux». Στα παρακάτω παραδείγματα χρησιμοποιώ Ubuntu 12.04.

Εγκατάσταση από παράθυρο τερματικού (Ctrl+Alt+T):
sudo apt-get install siggen

Περιέχονται τα προγράμματα:
soundinfo – sgen – swgen – siggen – sweepgen – tones – smix – fsynth

Εκτελέστε ένα πρόγραμμα: padsp siggen

Μπορούμε να παράγουμε συχνότητες με απλή εντολή τερματικού, διαβάστε πρώτα τα:
– απλή γεννήτρια: man signalgen
– γεννήτρια σάρωσης (sweep): man swgen

Μετά δοκιμάστε δημιουργία ημιτόνου 1000Hz στο αρχείο tone.wav με δειγματοληψία 44100Hz, ανάλυση 16bits:
signalgen -v -f -w tone.wav -s 44100 -b 16 sin 1000

Παραγωγή τόνου στην έξοδο ήχου (άρα και στο βύσμα ακουστικών) αντιφασικά ημίτονα 2000Hz στα 2 κανάλια, διάρκειας 5sec, με δειγματοληψία 44100Hz, ανάλυση 16bits:
padsp signalgen -v -s 44100 -b 16 -t 5 -2a sin 2000

Σημείωση: Η προεπιλεγμένη «έξοδος» των προγραμμάτων που περιέχονται στο siggen χρησιμοποιεί σύστημα ήχου OSS και είναι απαραίτητη η ύπαρξη του /dev/dsp αλλά στα νεώτερα Ubuntu το σύστημα ήχου ΔΕΝ είναι ίδιο, έτσι η απλή εκτέλεση των προγραμμάτων θα δώσει μήνυμα λάθους:
[signalgen] ... /dev/dsp not found ...
Η λύση που προτείνεται είναι να εκτελέσετε τα προγράμματα μέσα από τον «ρυθμιστή συμβατότητας» padsp χρησιμοποιώντας «padsp signalgen …» αντί «signalgen …». Δεν χρειάζεται το «padsp» αν η έξοδος πάει σε αρχείο όπως επίσης σε παλαιότερες εκδόσεις Ubuntu ή άλλες διανομές linux που χρησιμοποιούν OSS.