Difference between revisions of "Playing multiple sounds at once"
Jump to navigation
Jump to search
Line 22: | Line 22: | ||
Using pydub: | Using pydub: | ||
+ | from pydub import AudioSegment | ||
+ | from pydub.playback import play | ||
+ | sound = AudioSegment.from_wav('/home/pi/laserharp-sounds/samples/harpSound1.wav') | ||
+ | play(sound) | ||
+ | |||
+ | |||
Using pygame: | Using pygame: | ||
+ | import pygame | ||
pygame.init() | pygame.init() | ||
pygame.mixer.init() | pygame.mixer.init() | ||
Line 32: | Line 39: | ||
or | or | ||
+ | import pygame | ||
pygame.init() | pygame.init() | ||
pygame.mixer.init() | pygame.mixer.init() |
Revision as of 20:18, 25 April 2019
Contents
Introduction
This tutorial will explain different methods attempted in getting multiple sounds to play concurrently, as well as the method that was most valuable.
Steps
- Pick wav files desired to be played.
- Load wav files in code and save it to a variable that can be called later.
- Find a line of code that will play the sound.
- Find a line of code that will allow the sound to be played while different notes are being played at the same time.
Libraries tested
- pydub
- multiprocessing
- multithreading
- swmixer
- pygame
Pydub and Pygame
These two libraries were used in finding the best way to play a sound by itself.
Using pydub:
from pydub import AudioSegment from pydub.playback import play sound = AudioSegment.from_wav('/home/pi/laserharp-sounds/samples/harpSound1.wav') play(sound)
Using pygame:
import pygame pygame.init() pygame.mixer.init() firstSound = pygame.mixer.Sound('/home/pi/laserharp-sounds/samples/ambi_dark.wav') secondSound = pygame.mixer.Sound('/home/pi/laserharp-sounds/samples/ambi_choir.wav') firstSound.play() secondSound.play()
or
import pygame pygame.init() pygame.mixer.init() firstSound = pygame.mixer.music('/home/pi/laserharp-sounds/samples/ambi_dark.wav') secondSound = pygame.mixer.music('/home/pi/laserharp-sounds/samples/ambi_choir.wav') firstSound.play() secondSound.play()