sdcard에 있는 음악 파일을 읽어서 play해주는 audio application 만들고 있습니다.

sdcard 있는 음악파일은 잘 찾는데,  아래 코드를 실행시키면 자꾸 에러가 납니다.  
      Log.d(TAG, MEDIA_PATH +currentDirectory.getName() );
      mMediaPlayer.setDataSource( MEDIA_PATH +currentDirectory.getName() );
      mMediaPlayer.start();

04-01 05:54:03.685: DEBUG/PALYBACKAUDIO(272): /sdcard/Beyonce.mp3
04-01 05:54:03.723: ERROR/MediaPlayer(272): start called in state 2
04-01 05:54:03.723: ERROR/MediaPlayer(272): Error (-38,0)

1. 어떻게 해주어야 해결이 되나요??
2. state2 가 무슨 뜻인지 ?
3. error -38 이 무슨 뜻인지?