Мое приложение записывает аудиоклип и отправляет клип на сервер с помощью Retrofit2 после завершения записи. Файл получен на сервере, но файл поврежден, что я имею в виду под повреждением, так как он не может быть воспроизведен.Я использую следующий URL (пример /audio/myaudio.mp4
) для воспроизведения аудиоклипа, который я пробовал с другим аудиофайлом с помощью почтальона. Аудиофайл может быть успешно воспроизведен. Кроме того, даже при загрузке аудиоклипа, захваченного Android через Filezilla, также имеетсятот же битый файл.
Вот как я записываю аудио:
mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mRecorder.setAudioEncodingBitRate(32000);
mRecorder.setAudioSamplingRate(44100);
File root = android.os.Environment.getExternalStorageDirectory();
File file = new File(root.getAbsolutePath() + "/Audios");
if (!file.exists()) {
file.mkdirs();
}
outputFile = root.getAbsolutePath() + "/Audios/" + String.valueOf(System.currentTimeMillis() + ".mp3");
Log.d("filename",outputFile);
mRecorder.setOutputFile(outputFile);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
Я также пытался изменить расширение файла на .mp3, .mp4 и .3gpp, но ни одиниз них, кажется, работают на стороне сервера.Чтобы прояснить ситуацию, я прикрепил код, который я использовал для отправки аудиофайла на сервер с помощью Retrofit2:
Те же вопросы задавал кто-то другой.Я пробовал эти решения, но это также не работает.Может кто-нибудь помочь мне.
вопрос: Звуковой файл, захваченный MediaRecorder, не работает после его отправки на сервер с помощью Retrofit 2