Привет, все. Я читаю необработанный звук с устройства Android и хочу записать его в файл, используя Okio , например:
BufferedSink sink = Okio.buffer(Okio.sink(file));
У меня есть обратный вызов для извлечения аудиоданных, а затем записи аудиоданных в bufferedSink
@Override
public void onAudioData(byte[] data) {
sink.write(data);
}
Но иногда, когда я слушаю аудиофайл, последние кадры отсутствуют, и все файлы имеют длину 8182 байта или кратно.
Если я использую FileOutputStream, все работает хорошо, но это первый подход, и моя будущая цель - потоковая передача аудио с использованием Okio Pipes и OkHttp. Кто-нибудь знает, почему это происходит?