Sounds mit Python ausgeben

» home «

Das ALSA Soundsystem ist der Standardmanager für Linuxbasierte Audioverarbeitung. ALSA kann in der GUI oder an der Kommandozeile gleichsam verwendet werden.

Für das ALSA-Soundsystem kann das vorinstallierte Python-Modul pygame herangezogen werden. Leider unterstützt es nur die eingebaute Soundkarte. Um einen USB-Soundadapter mit Python anzusprechen, kann man Linux-Befehle für den SoX-Player oder arecord aufrufen. Über den Lunk am Ende der Seite kann man auch eine kleine Python-Klasse DoSound herunterladen, die einem sogenannten Wrapper für die Systemkommandos bildet.Damit kann die Soundkarte softwaremässig ausgewählt werden.

Das folgende Beispiel zeigt, wie das Abspielen einer Sounddatei von Python aus erfolgt:

#!/usr/bin/env python

import time
from dosound import DoSound

# Device mit ID 1 verwenden  (USB audio adapter)
player = DoSound(1)        
player.play("/home/pi/humptataa.mp3", 0.5) # volume = 0.5
print "isPlaying:", player.isPlaying()
print "stop"
player.stopPlaying()
print "isPlaying:", player.isPlaying()

Oft werden nur bestimmte Signaltöne benötigt, wozu die internen Soundkarte ausreicht. Die Klasse DoSound verwendet playTone(), um einen Ton mit der vorgegebener Frequenz und Dauer abzuspielen. Im folgenden Beispiel werden erst drei Töne nacheinander und dann alle zusammen abgespielt.

#!/usr/bin/env python

from dosound import DoSound
import time

dev = 0  # interner Soundadapter
DoSound.playTone(440, 0.3, dev)
DoSound.playTone(550, 0.3, dev)
DoSound.playTone(660, 0.3, dev)
time.sleep(1)
DoSound.playTone([440, 550, 660], 3, dev)
DoSound.stopPlaying()

Oliver Lohse   •  13.Jun.2020

Navigation


home
Omega 2
ESP32 NodeMCU
Arduino
Raspberry Pi
Python
PHP

Es geht um den heißem Scheiß über den alle reden - IoT (das Internet der Dinge). Doch zunächst der rechtliche Teil auf dieser rein privat betriebenen Webseite.

Die Webseite verwendet keine Cookies oder sonstigen Tracking-Tools, um das Leserverhalten zu speichern.

Schwarzen Bildrand entfernen


Möchten Sie den Bildschirm vollends ausnutzen, dann können Sie den schwarzen Bildrand entfernen, Sie gewinnen damit ein bisschen Auflösung, was gerade kleineren Monitoren zu gute kommt.

Strom sparen


Verbraucht Ihr Raspberry Pi zu viel Strom können Sie ein paar Einstellungen vornehmen um den Stromverbrauch zu reduzieren. Schalten Sie nicht benutzte Komponenten wie HDMI, WLAN, BT, LEDs oder USB einfach ab oder takten herunter.


© by O.Lohse • Impressumhome