Я хочу открыть файл AMR, чтобы я мог выполнять алгоритмы обработки сигналов с содержимым (например: какова высота звука?). Я знаю, что вы можете открыть эти файлы в медиаплеере, но я хочу получить фактическое содержимое файла.
В какой-то момент я распечатал содержимое и получил кучу целых чисел, но понятия не имею, что они означают.
Любая помощь приветствуется. Спасибо!




Похоже, вы можете получить данные, но совсем не знаете основ обработки аудиосигнала.
Данные, которые вы просматриваете, вероятно, представляют собой необработанные байты, которые необходимо преобразовать в ИКМ (импульсно-кодовая модуляция). Java Обзор образца пакета немного говорит об отношении байтов к PCM, как это определено конкретным форматом.
Например, если формат определяет 16-битное кодирование, то два байта (каждый из которых имеет 8 бит) будут объединены, чтобы сформировать одно значение PCM, которое будет находиться в диапазоне от -32767 до 32767. (Некоторые люди работают непосредственно с этими числами, другие масштабируют числа с плавающей запятой в диапазоне от -1 до 1).
А если файл 44100 fps, то будет 44100 "кадров" данных в секунду, где кадр скорее всего будет моно или стерео (один PCM или два значения PCM на кадр)
Учебник довольно быстро раскрывает особенности Java, но, по крайней мере, дает общее представление, и у вас будет больше терминов для поиска чего-то более специфичного для Android.
Если вы хотите углубиться или углубиться в детали, вы можете обратиться к Руководство для ученых и инженеров по цифровой обработке сигналов Стива Смита. Это бесплатная онлайн-книга, которую я считаю чрезвычайно полезной.