Copying sources and texts (also in parts) for publishing without our permission is NOT ALLOWED. We are fed up with finding our work on other sites (like stackoverflow).
Das Kopieren von Quellcode und Texten (auch in Auszügen) ist nicht erlaubt. Wir haben es gründlich satt, unsere Arbeit auf anderen Webseiten zu finden.

Copying for non-public usage is allowed.           Das private Kopieren und Benutzen ist natürlich erlaubt und erwünscht.

Kategorie "Platinencomputer"

15. Sep
Teaser

Linux: USB Mikrofon zu leise / zu laut

In diesem Besipiel hatte ich ein USB Mikrofon an einem Raspberry Pi angeschlossen und erhielt fast nur Rauschen. Bei Sprachtests wurde die Stimme nur schlecht im Raum aufgenommen und war (wenn überhaupt) nur leise zu hören.

Meine Lösung war die Empfindlichkeit des USB Mikrofons (auch z.Bsp. das in einer USB Kamera eingebaute Mikrofon) zu erhöhen. Das geht über folgenden Befehl:

alsamixer
┌───────────────────────────────────────────────── AlsaMixer v1.0.28 ─────────────────────────────────────────────────┐
│ Card: sunxi-CODEC                                                                           F1:  Help               │
│ Chip: codec Mixer                                                                           F2:  System information │
│ View: F3:[Playback] F4: Capture  F5: All                                                    F6:  Select sound card  │
│ Item: Master                                                                                Esc: Exit               │
│                                                                                                                     │
│                                                                                                                     │
│                                                                                                                     │
│       ┌──┐                                ┌──┐     ┌──┐                       ┌──┐              ┌──┐     ┌──┐       │
│       │  │                                │  │     │  │                       │  │              │  │     │  │       │
│       │  │                                │  │     │  │                       │  │              │  │     │  │       │
│       │  │                                │  │     │  │                       │  │              │  │     │  │       â
│       │▒▒│                                │  │     │  │                       │  │              │  │     │  │       â
│       │▒▒│                                │  │     │  │                       │  │              │  │     │  │       â
│       │▒▒│                                │  │     │  │                       │  │              │  │     │  │       â
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │  │       â
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │  │       â
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │  │       â
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │▒▒│       â
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │▒▒│       â
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │▒▒│       │
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │▒▒│       │
│       │▒▒│                                │▒▒│     │  │                       │  │              │▒▒│     │▒▒│       │
│       └──┘     ┌──┐     ┌──┐     ┌──┐     └──┘     └──┘     ┌──┐     ┌──┐     └──┘     ┌──┐     └──┘     └──┘       │
│                │OO│     │MM│     │MM│                       │MM│     │MM│              │MM│                         │
│                └──┘     └──┘     └──┘                       └──┘     └──┘              └──┘                         │
│        76                                  57       0                          0                 57       33        │
│    < Master >Master C  LineL    LineR   Linein P Mic Inpu Mic Powe Mic1 Boo Mic1 gai Mic2 Boo Mic2 gai   MicL       │
│                                                                                                                     │
│                                                                                                                     │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Um das gewünschte Gerät auszuwählen, drücken Sie die “F6” Taste.

Anschließend können Sie mithilfe der “Tab” Taste durch die Regler wechseln und mit den “Pfeil hoch” und “Pfeil runter” Tasten die Empfindlichkeit (bzw. die Lautstärke) einstellen. Durch die “ESC” Taste beenden Sie das Programm und die Einstellungen werden gespeichert.

Zum Testen habe ich folgenden Befehl genutzt:

arecord -Dplughw:1,0 -d 120 dateiname.wav

Dieser zeichnet eine Audiodate (hier im WAV Format) vom Audiogerät “1,0” auf. Wie Sie die Kennung Ihres gewünschten Gerätes finden, erfahren Sie in diesem Artikel (Raspberry Pi: Angeschlossene Audiogeräte auflisten).

Die Aufnahme habe ich vor der Veränderung gestartet. Dann habe ich mit dem o.a. Beispiel über den “alsamixer” die Empfindlichkeit des Mikrofones (Audio-Einganges) erhöht, sodass diese im oberen Mittelfeld der Empfindlichkeit war. Mit “ESC” habe ich das Programm “alsamixer” beendet und auf das Ende der Aufzeichnung durch “arecord” gewartet. Wenn Sie schnell arbeiten und keine 2 Minuten lange Testdateien brauchen, dann passen Sie den Wert “120” einfach an Ihre gewünschte Aufnahmezeit (in Sekunden) an.

Beim Abspielen der aufgenommenen Datei konnte ich die Veränderung sehr gut bemerken und auf diese Weise eine für mich optimale Einstellung finden.

14. Sep
Teaser

Raspberry Pi: avconf installieren

Viele versuchen auf Linux das Programm “avconf” durch folgenden Befehl zu installieren:

apt-get install avconf

Der ist falsch und führt zu keinem Ergebnis:

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package avconf

Der gesucht Befehl zur Installation lautet:

apt-get install libav-tools
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Die folgenden zusätzlichen Pakete werden installiert:
  libavdevice55 libavfilter5
Vorgeschlagene Pakete:
  frei0r-plugins
Die folgenden NEUEN Pakete werden installiert:
  libav-tools libavdevice55 libavfilter5
0 aktualisiert, 3 neu installiert, 0 zu entfernen und 268 nicht aktualisiert.
Es müssen 758 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 3.646 kB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n]

Wenn Sie diese Frage mit “J” (oder einfach “Enter”) beantworten, wird “avconf” installiert.

13. Sep
Teaser

Raspberry Pi: Angeschlossene Audiogeräte auflisten

Um unter Linux (in diesem Beispiel auf einem Raspberry Pi) eine Liste der erkannten und verfügbaren Geräte für “arecord” zu erhalten, nutzen Sie folgenden Befehl:

arecord -l
**** Liste der Hardware-Geräte (CAPTURE) ****
Karte 1: Camera [USB 2.0 Camera], Gerät 0: USB Audio [USB Audio]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0

Das Mikrofon der USB Kamera können Sie nun z.Bsp. durch folgenden Befehl aufzeichnen lassen:

arecord -Dplughw:1,0 -d 20 dateiname.wav

Sie erhalten eine 20 Sekunden lange Aufnahme (“-d 20”) in der Datei “dateiname.wav”.

Eine Auflistung der Gerätenamen erhalten Sie durch folgenden Befehl:

arecord -L
null
    Discard all samples (playback) or generate zero samples (capture)
pulse
    PulseAudio Sound Server
sysdefault:CARD=Camera
    USB 2.0 Camera, USB Audio
    Default Audio Device
front:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    Front speakers
surround21:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    4.0 Surround output to Front and Rear speakers
surround41:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    Direct sample mixing device
dsnoop:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    Direct sample snooping device
hw:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    Direct hardware device without any conversions
plughw:CARD=Camera,DEV=0
    USB 2.0 Camera, USB Audio
    Hardware device with all software conversions

Ist Ihr gesuchtes Gerät über einen USB Anschluss mit dem Computer verbunden, dann können Sie sich auch alle erkannten USB anzeigen lassen und überprüfen, ob das gesuchte Gerät überhaupt erkannt wurde:

lsusb
Bus 001 Device 008: ID 1c4f:0048 SiGma Micro
Bus 001 Device 005: ID 0c45:6340 Microdia
Bus 001 Device 004: ID 04f3:0103 Elan Microelectronics Corp. ActiveJet K-2024 Multimedia Keyboard
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
27. Aug
Teaser

Raspberry Pi: Eine Partition erweitern

Nachdem ein Raspberry Pi oder banana Pi Image auf eine SD Karte kopiert wurde, nutzt die System-Partition in fast allen Fällen nicht den verfügbaren Speicherplatz auf dem Datenträger. Ob die Partition auf einer SD Karte oder eine Festplatte liegt ist für diese Anleitung nicht wichtig.

Starten Sie das Festplatten-Partitionierungsprogramm zur Anzeige der vorhandenen Partitionen:

sudo fdisk -l
Disk /dev/mmcblk0: 14.8 GiB, 15912140800 bytes, 31078400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000ebf83

Device         Boot  Start     End Sectors  Size Id Type
/dev/mmcblk0p1 *    204800  729087  524288  256M  c W95 FAT32 (LBA)
/dev/mmcblk0p2      
729088
3071999 2342912 1.1G 83 Linux

Notieren Sie sich den Startwert für die Linux-Partition:

729088

Starten Sie das Programm “fdisk” mit root Rechten für die SD Karte / Festplatte:

sudo fdisk /dev/mmcblk0
Welcome to fdisk (util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help):

Durch Drücken vpn “p” (und “Enter”) wird die aktuelle Partitionstabelle angezeigt:

Command (m for help): p
Disk /dev/mmcblk0: 14.8 GiB, 15912140800 bytes, 31078400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000ebf83

Device         Boot  Start     End Sectors  Size Id Type
/dev/mmcblk0p1 *    204800  729087  524288  256M  c W95 FAT32 (LBA)
/dev/mmcblk0p2      729088 3071999 2342912  1.1G 83 Linux

Command (m for help):

Hier sollten Sie nochmals prüfen, ob Sie gerade die richtige SD Karte / Festplatte bearbeiten. Die Partiotion “/dev/mmcblk0p1” (die erste Partition vom Typ “W95 FAT32”) wird nicht verändert. Sie dient zum Booten des Systems und darf auch nicht gelöscht werden.

Die zweite Partition löschen wir jetzt mit “d” und “2”:

Command (m for help): d
Partition number (1,2, default 2): 2

Partition 2 has been deleted.

Jetzt wird die gleiche Partition sofort wieder durch “n” neu angelegt.
Dabei unbedingt aufpassen:
Wenn der Start (“first sector”) angegeben werden soll, den notierten Wert eingeben (hier “729088”) und nicht die Vorgabe übernehmen !

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (2048-31078399, default 2048): 
729088
Last sector, +sectors or +size{K,M,G,T,P} (729088-31078399, default 31078399): Created a new partition 2 of type 'Linux' and of size 14.5 GiB.

Die neuen Angaben jetzt mit “w” speichern:

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy

The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).

Das System muss jeztz neu gestattet werden:

sudo reboot

Nachdem der Neustart abgeschlossen ist, wird die neue Partitionsgröße gesetzt:

sudo resize2fs /dev/mmcblk0p2
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/mmcblk0p2 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/mmcblk0p2 is now 3793664 (4k) blocks long.

Um die neue Größe der Partition zu prüfen, nutzen wir den Befehl “df”:

df -h /
Filesystem      Size  Used Avail Use% Mounted on
/dev/mmcblk0p2   15G  890M   13G   7% /