Difference between revisions of "Playing multiple sounds at once"
Jump to navigation
Jump to search
Line 5: | Line 5: | ||
= Introduction = | = Introduction = | ||
This tutorial will explain different methods attempted in getting multiple sounds to play concurrently, as well as the method that was most valuable. | 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 = | = Libraries tested = | ||
Line 14: | Line 19: | ||
= Pydub and Pygame= | = Pydub and Pygame= | ||
+ | These two libraries were used in finding the best way to play a sound by itself. | ||
+ | |||
+ | Using pydub: | ||
+ | Using pygame: | ||
+ | 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 | ||
+ | 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() | ||
+ | |||
= Multiprocessing and Multithreading = | = Multiprocessing and Multithreading = | ||
= Multithreading with Swmixer= | = Multithreading with Swmixer= |
Revision as of 19:31, 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: Using pygame:
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 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()