roblema no MediaPlayer entre a pasta bruta e o sdcard no Android

Estou criando um aplicativo para reproduzir músicas com uma barra de busca. Se eu tocar a partir da pasta bruta, ele funcionará, mas se eu tocar uma música no sdcard, ele exibirá uma exceção de ponteiro nul

private MediaPlayer mediaPlayer;
mediaPlayer = MediaPlayer.create(this, R.raw.t1); // it works

//  switch to sdcard
mediaPlayer.setDataSource("/sdcard/t1.mp3"); // null pointer exception.

Não sei qual é o problema. Por favor me ajude

questionAnswers(1)

yourAnswerToTheQuestion