4

I have downloaded audio files from server and saved it using

/data/data/packagename/sounds/filename.mp3

Then if I play that audio using

.MediaPlayer mp= new MediaPlayer();
            try {
                mp.setDataSource(PATH+"/"+fileName);
            } catch (IllegalArgumentException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IllegalStateException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

            mp.start();

But it shows an error

MediaPlayer:start called in state 2
MediaPlayer:Error(-38,0)
MediaPlayer:Error(-38,0)

Whats the problem with it I searcheed a lot regarding this but no solution pls suggest any solutions

mohamed
  • 303
  • 1
  • 6
  • 19

1 Answers1

2

Try with this code,

public void audioPlayer(String path, String fileName){
    //set up MediaPlayer    
    MediaPlayer mp = new MediaPlayer();

    try {
        mp.setDataSource(path+"/"+filename.mp3);
    } catch (IllegalArgumentException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IllegalStateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    try {
        mp.prepare();
    } catch (IllegalStateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    mp.start();
}
Aerrow
  • 12,086
  • 10
  • 56
  • 90
  • i tried above code, log cat errors, 05-28 18:44:46.933: W/System.err(21770): java.io.IOException: Prepare failed.: status=0x1 05-28 18:44:47.024: E/MediaPlayer(21770): start called in state 0 05-28 18:44:47.024: E/MediaPlayer(21770): error (-38, 0) 05-28 18:44:47.063: E/MediaPlayer(21770): Error (-38,0) – mohamed May 28 '12 at 13:17
  • path means in where your audio file is located – Aerrow May 28 '12 at 13:20
  • PATH=/data/data/packagename/audio.mp3 – mohamed May 28 '12 at 13:42
  • but i have issue,that audio can't play,please solve my problem – mohamed May 28 '12 at 14:38
  • Refer this previous post, i hope i may solve your problem http://stackoverflow.com/questions/4833777/android-playing-resource-files-from-internal-storage-causes-mediaplayer-prepare – Aerrow May 28 '12 at 14:47