bei meinem Programm (Python) stockt manchmal die Audiowiedergabe.
Im Terminal wird folgende Meldung angezeigt:
[font="Menlo"]"ALSA lib pcm.c:7843:(snd_pcm_recover) underrun occurred"[/font]
Hardware:
- Pi3
- USB-Soundkarte
- Soundwiedergabe über pygame
[font="Menlo"] pygame.mixer.music.load(tFileName)[/font]
[font="Menlo"] pygame.mixer.music.set_volume(1)[/font]
[font="Menlo"] pygame.mixer.music.play(1)[/font]
[font="Menlo"] while (pygame.mixer.music.get_busy()):[/font]
[font="Menlo"] [/font][font="Menlo"]continue[/font]
bei der Initialisierung habe ich auch schon verschiedene Einstellung ausprobiert:
[font="Menlo"]pygame.mixer.pre_init(frequency=22050,size=-16,channels=2,buffer=16384)[/font]
[font="Menlo"]pygame.init()[/font]
[font="Menlo"]#frequency=22050,size=16,channels=2,buffer=16384[/font]
[font="Menlo"]#frequency=48000,size=16,channels=1,buffer=4096[/font]
[font="Menlo"]nach ca. 2-3 Minuten eine Pause von ca: 2-10 Sekunden (unterschiedlich)[/font]
so sieht die CPU-Auslastung ohne Fehler aus:
im Kern CPU2 sieht man eine 100% Auslastung, dabei tritt der Fehler auf:
Die 100% Auslastung auf dem Kern 2 tritt auch auf, wenn mein Programm nicht ausgeführt wird. ich habe schon mit htop versucht den Übeltäter herauszufinden.
Hat jemand eine Idee, wie man da weiter "debuggen" kann? - Carsten
Automatisch zusammengefügt:
lasse gerade das Journal mitlaufen:
[font="monospace"]sudo journalctl -f[/font]
wenn der Fehler auftaucht sieht man folgendes:
oder
oder
[font="Menlo"]mmcblk0: error -110 transferring data, sector 140016, nr 8, cmd response 0x900, card status 0xc00[/font]
[font="Menlo"]blk_update_request: I/O error, dev mmcblk0, sector 140016[/font]
[font="Menlo"]Buffer I/O error on dev mmcblk0p2, logical block 350, lost async page write[/font]
[font="Menlo"]w1_master_driver w1_bus_master1: Family 0 for 00.b60000000000.ef is not registered.[/font]
kann das jemand deuten?