title: How to play music using libgdx
body: <p>I have had trouble playing music using libgdx. My code is as follows:</p>
  
  <pre><code>package com.me.fixGame;
  
  import java.util.Random;
  
  
  import com.badlogic.gdx.ApplicationListener;
  import com.badlogic.gdx.Gdx;
  import com.badlogic.gdx.Input.Keys;
  import com.badlogic.gdx.audio.Sound;
  import com.badlogic.gdx.graphics.GL10;
  import com.badlogic.gdx.graphics.Texture;
  
  
  import com.badlogic.gdx.graphics.g2d.BitmapFont;
  import com.badlogic.gdx.graphics.g2d.SpriteBatch;
  import com.badlogic.gdx.graphics.g2d.TextureRegion;
  import com.badlogic.gdx.math.Rectangle;
  import com.badlogic.gdx.math.Vector2;
  //import com.badlogic.gdx.scenes.scene2d.Stage;
  import com.badlogic.gdx.scenes.scene2d.ui.Table;
  import com.badlogic.gdx.utils.Scaling;
  import com.sun.jmx.snmp.tasks.Task;
  
  
  public class fixGame implements ApplicationListener {
      SpriteBatch batch;
      SpriteBatch spriteBatch;
      Texture trash; 
      Texture paper;
      SpriteBatch spritebatch;
      Vector2 position;
      Vector2 pas;
      boolean collide;
      boolean countMe=false;
      Vector2 size;
      Vector2 size2;
      Vector2 pos;
      Rectangle bounds;
      float posSpeed=30;
      Rectangle bounds2;
      float delay = 1; // seconds
      boolean counted= false;
      int score = 3;
      //Texture Gogreen;
      String myScore;
      Texture background; 
      CharSequence str = "Lives left: 3"; // = myScore;
      CharSequence line = "Score: 0"; // = myScore;
      String myLife;
      int life=0;
      BitmapFont font;
      float x;
      float y;
      Sound sound;
      boolean collision = false;
      @Override
      public void create() {  
  
          //Gogreen = new Texture(Gdx.files.internal("data/gogreenNow.jpg"));
          background = new Texture(Gdx.files.internal("data/trash.png"));
  
          x= background.getWidth();
          y=background.getHeight();
          //float delaySeconds = 1;
          spriteBatch = new SpriteBatch();
          trash = new Texture(Gdx.files.internal("data/trash.png"));
          paper = new Texture(Gdx.files.internal("data/paper1.jpg"));
          sound = Gdx.audio.newSound(Gdx.files.internal("data/testjava.mp3"));
  
          position = new Vector2(100, 50);
          pos = new Vector2(54, 14);
          batch = new SpriteBatch();
          BitmapFont font = new BitmapFont();
  
          size2 = new Vector2(trash.getWidth() ,trash.getHeight() );
          //size2.y = trash.getHeight();
          //size2.x = trash.getWidth();
          size = new Vector2(paper.getWidth() ,paper.getHeight());
  
          bounds= new Rectangle(pos.x, pos.y, size.x, size.y);
          bounds2= new Rectangle(position.x, position.y, size2.x, size2.y);
  
      }
  
      @Override
      public void dispose() {
  
      }
      public void update(){
          bounds.set(pos.x, pos.y, size.x, size.y);
          bounds2.set(position.x, position.y, size2.x, size2.y);
          float pos1=Gdx.input.getAccelerometerX();
          //if(pos1&lt;0)
          //  pos1=(-1)*pos1;
          position.x = position.x - 5*pos1;
      }
  
      @Override
      public void render() {
          sound.play(0.5f);
          sound.dispose();    
          if(bounds.overlaps(bounds2)){
              collision=true; 
              counted=true;
          }else{
              collision=false;
          }
  
          if(collision==true){
  
          } 
          if(pos.y&lt;640){
              counted=false;
          } else if(pos.y &gt; 640 &amp;&amp; collision==false &amp;&amp; counted==false){
              counted=true;
              score= score-1;
              myScore = "Lives left: " + score;
              str = myScore;
          }
  
  
          if(bounds.overlaps(bounds2)){
              countMe=true;
              life= life+50;
              myLife = "Score: " + life;
              line = myLife;
          }
  
  
          if(position.x&lt;0){
              position.x= position.x+11;
          }
          if(position.x&gt;425){
              position.x= position.x-11;
          }
  
  
          update();
          Gdx.gl.glClearColor(1, 1, 1, 1);
          Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
          pos.y=pos.y-posSpeed;
          //posSpeed = posSpeed+(2/3);
          if(pos.y&lt;0){
              pos.y = 700;
              Random randomGenerator = new Random();
              pos.x = randomGenerator.nextInt(500);
          }
          BitmapFont font = new BitmapFont();
  
  
          batch.begin();
  
          batch.draw(background, 0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
          if (!collision) {
              batch.draw(paper, pos.x, pos.y);
  
          }
  
          //batch.draw(paper, pos.x, pos.y);
          batch.draw(trash, position.x, position.y);
          font.setScale(3);
  
          font.setColor(0.0f, 0.0f, 1.0f,1.0f);
          font.draw(batch, str, 300,900);
          font.draw(batch, line, 300, 950);
          batch.end();
          font.dispose();     
      }
  
       @Override  
      public void resize(int width, int height) {
  
      }
  
      @Override
      public void pause() {
      }
  
      @Override
      public void resume() {
      }
  }
  </code></pre>
  
  <p>My sound file I call over here:</p>
  
  <pre><code> sound = Gdx.audio.newSound(Gdx.files.internal("data/testjava.mp3"));
  </code></pre>
  
  <p>And the code I use to play it is:</p>
  
  <pre><code> sound.play();
   sound.dispose(); 
  </code></pre>
  
  <p>For some reason it does not work on my desktop and my phone. I tested the the sound file actually had some sound in it.</p>