::If you want to play SFX, It’s better to find method’s that you know will only be fired under the circumstances that you want.
What i mean by that is, if you want a walking SFX, you should put your play audio under an if statement for a bool that’s checking if you are currently moving on the ground, or simply use the getaxisraw horizontal && grounded for the if parameter.
Then, you want to stop the sound clip from replaying, currently you have your clip on a Update(), so it will replay every frame instead of looping. What you might want to do is have an if statement check if your !audiosource.isplaying
. Or a better scenario is to set up a bool specifically for walking since the former solution can be messed up by your character playing other sounds.
Take a look at this https://forum.unity.com/threads/unity-footstep-sound.921104/ for some tips on how you can set up your sound the way you want.