Я пытаюсь преобразовать аудиофайл в байтовый массив. где аудиофайл извлекается через вложенный файл, поэтому его в Uri
ByteArrayOutputStream baos = new ByteArrayOutputStream();
FileInputStream fis;
try {
//FileInputStream = reading the file
fis = new FileInputStream(new File(audioFxUri.getPath()));
byte[] buf = new byte[1024];
int n;
while (-1 != (n = fis.read(buf)))
baos.write(buf, 0, n);
} catch (Exception e) {
e.printStackTrace();
}
byte[] bbytes = baos.toByteArray();
Я следовал этому коду из этого , но как только я побежал. Это дало мне ошибку
W/System.err: java.io.FileNotFoundException: /external/audio/media/646818: open failed: ENOENT (No such file or directory)
Я также пытался воспроизвести его с MediaPlayer и установить Uri в качестве источника
MediaPlayer player = new MediaPlayer();
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.setDataSource(AttachAudio.this,audioFxUri.toString());
player.prepare();
player.start();
чтобы убедиться, что аудиофайл работает или нет. Ps. это сработало.
Что-то не так, что я делаю, почему он не конвертируется в байтовый массив?