У меня есть Java-код, который создает файл WAV из буфера двойных значений и информации заголовка.
В eclipse он работает нормально, и файл wav создается при каждом запуске.
Однако я передал код в android studio, и файл не создается (каждая другая часть кода работает нормально).
См. Ниже раздел кода ниже
public static void createEventWav(ArrayList<Double> event, String
fileName, Context context) {
try {
int sampleRate = 44100; // Samples per second
double duration = event.size() / sampleRate; // Seconds
// Calculate the number of frames required for specified duration
long numFrames = (long) (event.size());
System.out.println("Number frames " + numFrames);
System.out.println("Duration " + duration);
// Create a wav file with the name specified as the first argument
WavFile wavFileEvent = WavFile.newWavFile(new File(fileName + ".wav"), 1, numFrames, 16, sampleRate);
// Create a buffer
double[] bufferEvent = new double[(int) numFrames];
for (int loop = 0; loop < event.size(); loop++) {
bufferEvent[loop] = event.get(loop);
}
int numberFrames = (int) numFrames;
wavFileEvent.writeFrames(bufferEvent, numberFrames);
Этот кусок кода создает объект из другого класса "WavFile.java". Используемый им конструктор можно увидеть ниже:
public static WavFile newWavFile(File file, int numChannels,long numFrames, int validBits, long sampleRate) throws IOException, WavFileException
{
После запуска на Android studio Файл, похоже, не существует.
Возможно, это неправильный способ создания и хранения нового файла в Android Studio.
Буду очень признателен за любой совет, как исправить это.