G.711 в WAV: как открыть RAW с A-law или μ-law без угадывания параметров
Какие параметры нужны для декодирования RAW G.711, как задать их в FFmpeg и проверить длительность и звук перед расшифровкой.
Отделите аудиоданные от контейнера и сетевой записи
G.711 описывает кодирование телефонного звука. PCMA соответствует A-law, PCMU — μ-law; оба используют восьмибитные кодовые значения. Эти значения не равны обычному линейному восьмибитному PCM: одинаковый размер ещё не означает одинаковое декодирование.
В RAW-файле может не быть заголовка, который сообщает программе параметры. Но само расширение RAW не гарантирует G.711. Прежде чем выполнять команду, получите описание экспорта у источника: кодек, частоту, каналы и способ упаковки.
Эта инструкция подходит для непрерывного потока кодовых байтов G.711 без дополнительных заголовков. PCAP с сетевыми пакетами, RTP-поток с заголовками и контейнер WAV — другие входы. Не подавайте их как alaw RAW: служебные байты будут ошибочно прочитаны как звук.
Сохраните неизменный исходник и сведения об экспорте. Если данные приходят частями, выясните порядок, пропуски и наличие временных меток. Простая склейка полезных байтов не обязана восстановить реальные паузы телефонного разговора.
Подтвердите параметры до запуска команды
Для типового моно G.711 с частотой 8000 Гц один кодовый байт соответствует одному отсчёту. За секунду непрерывных данных получается 8000 байт. Значение 8000 используйте только при подтверждении параметров источника, а не потому, что так называется пример.
Уточните, находятся ли два направления разговора в разных файлах, смешаны в моно или чередуются как каналы. Наличие двух собеседников не означает стерео. Нельзя задать stereo только ради разделения голосов, уже сведённых в один поток.
Запишите отдельно закон кодирования. A-law и μ-law могут иметь одинаковые длительность и объём, поэтому расчёт размера не выбирает правильный вариант. Если описание неизвестно, запросите его; успешно завершившаяся команда с произвольным -f не становится доказательством формата.
Если исходник нормально открывается как контейнер, используйте обычное чтение его параметров. Общая конвертация аудио для расшифровки решает совместимость готового файла. Здесь самостоятельная задача — передать недостающие сведения о RAW-входе.
Декодируйте известный A-law в отдельный WAV
На 3 октября 2026 года параметры сверены с документацией и исходным кодом FFmpeg. Для подтверждённого A-law, 8000 Гц, моно и непрерывных RAW-байтов пример выглядит так:
ffmpeg -n -f alaw -ar 8000 -ch_layout mono -i call.raw -c:a pcm_s16le call_checked.wav
-f alaw задаёт входной формат, -ar 8000 — входную частоту, -ch_layout mono — раскладку входных каналов. Они стоят до -i. После входа -c:a pcm_s16le выбирает выходной линейный PCM в WAV. Параметр -n запрещает перезапись уже существующего результата.
Для подтверждённого μ-law замените alaw на mulaw. Назначьте другое выходное имя и сохраните использованную команду в журнале. Это две альтернативы для двух известных типов источника, а не совет выбирать закон наугад до получения правдоподобного звука.
Проверьте установленную сборку: ffmpeg -h demuxer=alaw или ffmpeg -h demuxer=mulaw показывают её параметры. Если программа не принимает опцию, сверяйте справку именно своей версии. Не убирайте сведения о каналах и частоте вслепую, полагаясь на значения по умолчанию.
Сравните расчёт, длительность и слышимый результат
Для непрерывного моно G.711 без заголовков длительность в секундах равна числу байт, делённому на частоту. Учебные 160 000 байт при 8000 Гц дают 20 секунд. Формула не относится к пакету с заголовками, двум отдельным направлениям или экспорту, который удалял тишину.
Фактическая техническая проба выполнена на FFmpeg 6.1.1: отдельно созданы два синтетических тона по две секунды в alaw и mulaw. Каждый RAW занял 16 000 байт. После приведённого декодирования ffprobe показал PCM s16le, 8000 Гц, один канал и длительность 2.000 секунды.
Это проверка синтаксиса и параметров на синтетике, а не тест записи звонка или точности распознавания речи. Совпадение с оригинальным несжатым тоном здесь не заявляется: G.711 использует квантование, и декодирование не возвращает ранее потерянные детали.
Прослушайте начало, середину и конец реального результата. Неправильная частота меняет длительность и скорость, а неверный закон кодирования может дать искажённый звук при внешне нормальной длительности. Для полного файла выполните также проверку чтения FFmpeg; отсутствие ошибок декодера не заменяет проверку входных параметров.
Передайте проверенную рабочую копию для расшифровки
Сохраните карточку преобразования рядом с исходником: откуда получены параметры, какая версия FFmpeg использована и какие контрольные места прослушаны. Если направления хранятся отдельно, подпишите их по фактическим сведениям экспорта, а не по предполагаемым ролям голосов.
Не повышайте частоту ради обещания «улучшить» телефонную речь. Пересчёт отсчётов не создаёт отсутствующие частоты. Если целевой инструмент требует другую частоту, создайте рабочую копию осознанно и сохраните первоначально декодированный WAV.
Перед расшифровкой аудио в Транскрибаторе проверьте допустимые размер, формат и длительность в интерфейсе сервиса. Прямая поддержка RAW G.711 здесь не заявляется: следующий шаг относится к подготовленной допустимой записи.
Сверяйте спорные фразы текста с проверенным звуком. Если речь искажена уже при декодировании, повторное распознавание не исправит неверную интерпретацию байтов. Сначала вернитесь к описанию экспорта и устраните конкретное расхождение.
Одинаковый объём не выбирает A-law или μ-law
Учебная ситуация: файл содержит 160 000 непрерывных кодовых байтов, источник подтверждает 8000 Гц и моно. Ожидается 20 секунд, но для команды всё ещё нужно знать закон кодирования. Эти данные вымышлены и не относятся к записи клиента.
| Условие учебного RAW | Размер данных | Ожидаемая длительность |
|---|---|---|
| G.711, 8000 Гц, моно | 16 000 байт | 2 секунды |
| Те же параметры | 160 000 байт | 20 секунд |
| Те же параметры | 2 400 000 байт | 300 секунд |
| Есть заголовки или удалённая тишина | Любой | Формула не подтверждает исходное время |
Если оба варианта дают 20 секунд, это закономерно: каждый прочитал одинаковое число байтов. Верный закон подтверждают сведения источника, а приёмка дополнительно проверяет звук. Не называйте один вариант правильным только потому, что длительность совпала.
Карточка преобразования G.711
Исходник / резервная копия: Источник сведений об экспорте: Непрерывные RAW-байты подтверждены: A-law или μ-law: Частота / раскладка каналов: Сведения о паузах и пропусках: Размер и ожидаемая длительность: Версия FFmpeg / полная команда: Выходной кодек / каналы / длительность: Начало / середина / конец прослушаны: Полное чтение проверено: Допустимая копия для расшифровки:
Частые вопросы
RAW означает G.711?
Нет. Узнайте структуру и кодек у источника экспорта. Расширение не содержит достаточного описания.
Как отличить A-law от μ-law по размеру?
Размер и длительность могут совпадать. Нужны сведения о законе кодирования.
Два человека требуют stereo?
Количество говорящих и количество каналов — разные характеристики. Уточните реальную упаковку данных.
Можно декодировать PCAP этой командой?
Она рассчитана на непрерывные кодовые байты без заголовков. Для сетевой записи сначала требуется корректное извлечение аудиопотока.
WAV восстанавливает качество исходной речи?
Он хранит декодированный звук, но не возвращает детали, потерянные при прежнем кодировании.