Python Arcade – Playing Audio file
Last Updated :
23 Sep, 2021
In this article, we will learn how to play or add audio in our Arcade games using Python.
Playing Audio File
In this example, we want to play our audio whenever the player touches the left or right end of the screen. For this, we are going to use 2 functions of the arcade module.
- arcade.load_sound(): We will use this function to load our audio file.
Syntax: arcade.load_sound(file_path, streaming)
Parameters:
file_path: Name of the sound file to load.
streaming : Boolean for determining if we stream the sound or load it all into memory.
Returns: Sound object which can be used by the play_sound() function.
- arcade.play_sound(): We will use this function to play our audio.
Syntax: arcade.play_sound(sound, volume, pan, loop)
Parameters:
- sound: Sound loaded by load_sound()
- volume: Volume of the sound
- pan: From which part you want to start the audio (-1= left, 0= center, and 1=right)
In the below example, we are going to create a MainGame() class. Inside this class first, we are going to initialize some variables for velocity, x, and y coordinates of the player then we will create 2 functions inside this class.
- on_draw(): Inside this function, we will draw our player and start the rendering.
- on_update(): In this function, we will update the x coordinates of the player’s sprite by adding the velocity. After that, if the player crosses the boundary of the screen then we will change the direction of the movement and play the audio using the play_sound() function.
Below is the implementation:
Python3
import arcade
class MainGame(arcade.Window):
def __init__( self ):
super ().__init__( 600 , 600 , title = "Player Movement" )
self .x = 250
self .y = 250
self .vel = 300
def on_draw( self ):
arcade.start_render()
arcade.draw_rectangle_filled( self .x, self .y, 50 , 50 ,
arcade.color.GREEN )
def on_update( self ,delta_time):
self .x + = self .vel * delta_time
if self .x> = 550 or self .x< = 50 :
self .vel * = - 1
audio = arcade.load_sound( 'Audio.mp3' , False )
print ( "Playing Audio.mp File" )
arcade.play_sound(audio, 1.0 , - 1 , False )
MainGame()
arcade.run()
|
Output:
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...