Что такое G.711 и как работать с A-law/μ-law: открытие, редактирование и конвертация raw/WAV на ПК, онлайн и смартфонах

G.711 встречается в телефонных системах, SIP-записях, голосовых меню, старых приложениях связи и файлах видеонаблюдения, но работать с ним как с обычным MP3 нельзя. Название G.711 обозначает способ кодирования звука, а не единственный файловый формат: данные могут находиться внутри WAV, идти отдельным потоком A-law или μ-law без заголовка, быть RTP-нагрузкой либо аудиодорожкой закрытого контейнера регистратора. Поэтому правильная последовательность начинается не с выбора «проигрывателя для .g711», а с определения структуры исходника. Ниже разобраны проверенные способы для Windows, macOS, Linux, браузера, iPhone и Android, а также схема редактирования через линейный PCM, которая позволяет не перекодировать телефонный сигнал лишний раз.

Что такое G.711 и почему у него нет одного универсального расширения

G.711 — рекомендация ITU-T для импульсно-кодовой модуляции речевых частот. В классическом узкополосном телефонном сценарии сигнал дискретизируется с частотой 8000 отсчётов в секунду, каждый отсчёт после логарифмического компандирования представляется 8 битами, а результирующий поток составляет 64 кбит/с на один канал. Такая математика важна не только для теории: по ней можно быстро проверить, похож ли неизвестный raw-файл на ожидаемый телефонный поток. Например, одна минута моно G.711 без контейнерного служебного блока занимает примерно 480 000 байт: 8000 байт в секунду × 60 секунд.

В стандарте применяются две характеристики компандирования — A-law и μ-law (mu-law, часто пишут u-law). Это разные кодировки одних и тех же по назначению телефонных отсчётов. Они несовместимы на уровне байтов: если открыть A-law как μ-law или наоборот, программа не сможет «догадаться» о правильном варианте только по содержимому, а звук обычно окажется резко искажённым. В инструментах встречаются разные обозначения одной сущности: A-law, PCMA, pcm_alaw относятся к A-law; μ-law, u-law, PCMU, pcm_mulaw — к μ-law.

Самое важное различие — между кодеком и контейнером. WAV — контейнер с заголовком, где можно записать сведения о кодировании, частоте дискретизации, количестве каналов и размере данных. Поэтому WAV с G.711 обычно определяется программой автоматически. Raw A-law/μ-law — только последовательность кодированных отсчётов без RIFF/WAV-заголовка: частоту, число каналов и тип law программе приходится сообщать вручную. RTP добавляет ещё один уровень: полезная нагрузка передаётся пакетами, а параметры сеанса определяются сигнализацией или известным payload type. Запись DVR может включать G.711 как одну дорожку рядом с видео и метаданными.

A-law и μ-law: что выбирать

ПараметрA-lawμ-law
Типичные обозначенияA-law, PCMA, CCITT A-law, pcm_alawμ-law, u-law, PCMU, CCITT u-law, pcm_mulaw
Обычный телефонный режим8000 Гц, моно, 64 кбит/с8000 Гц, моно, 64 кбит/с
Что важно при открытии rawЯвно указать A-lawЯвно указать μ-law/u-law
Что будет при ошибочном выбореФайл может иметь правильную длительность, но воспроизводиться с сильными искажениями; нужно сменить law, а не «лечить» звук эквалайзером.

Выбор закона не следует делать по географии или названию устройства, если для конкретного файла есть технические параметры. Надёжнее посмотреть требования PBX, SDP/SIP-описание сеанса, свойства WAV, технические параметры регистратора либо известные настройки экспортирующей системы. Историческая распространённость A-law или μ-law в разных регионах полезна как контекст, но не заменяет проверку конкретного потока.

Когда 8 кГц и моно обязательны, а когда нет

Частота 8 кГц и один канал — нормальная цель для классического G.711 в телефонии; такой профиль предусмотрен, в частности, в G711.org для A-law/u-law WAV. Однако нельзя превращать это в правило для любого аудиофайла на всех этапах работы. Если исходная запись ещё не подготовлена к PBX и будет редактироваться, разумно хранить промежуточный PCM без дополнительного ухудшения и понижать параметры один раз при финальном экспорте. Если целевая система прямо требует 8000 Hz Mono CCITT A-law или u-law, выполнять это требование нужно на последнем шаге и затем проверять получившийся файл.

Перед открытием: определите тип исходных данных

Основная причина неудачной конвертации G.711 — неверная идентификация входа. Один и тот же звук может называться «G711» в интерфейсе камеры, но на диске оказаться WAV; файл с расширением .raw может содержать не G.711, а линейный PCM; расширение .ul или .al подсказывает кодирование, но всё равно не гарантирует частоту и канальность. Перед редактированием разделите ситуацию на четыре категории.

1. WAV с A-law или μ-law внутри

Такой файл имеет RIFF/WAVE-заголовок. Утилита анализа должна показать аудиокодек A-law/μ-law и параметры потока. Это самый простой случай: проигрыватель или редактор с поддержкой соответствующего WAV-кодирования получает нужные сведения из заголовка. Для преобразования в линейный PCM достаточно декодировать дорожку; вручную задавать -f alaw или -f mulaw на входе не требуется, потому что формат уже описан контейнером.

2. Headerless raw A-law или μ-law

У raw нет метаданных, поэтому программа должна знать как минимум encoding, sample rate и channels. Для обычного телефонного файла стартовая проверка — A-law или μ-law, 8000 Гц, 1 канал. Если длительность или звук явно неправильные, не сохраняйте результат поверх исходника: сначала уточните параметры. Переименование record.ul в record.wav не создаёт WAV-заголовок и проблему не решает.

3. RTP, PCAP или дамп сетевого трафика

RTP payload — не готовый аудиофайл. Нужно определить аудиопоток, порядок пакетов и формат полезной нагрузки; при наличии SIP/SDP там обычно можно узнать, какой payload соответствует PCMA или PCMU. Простое склеивание всего UDP-содержимого в WAV добавит к звуку сетевые заголовки и разрывы. Если задача состоит в анализе звонка, сначала извлекают именно медиапоток, а уже затем декодируют его как G.711.

4. DAV, DVR, IFV и другие записи видеонаблюдения

В таких файлах G.711 может быть только аудиодорожкой внутри контейнера. Сначала нужен инструмент, понимающий структуру записи конкретного регистратора. После извлечения или нормализации контейнера можно работать с аудио как с отдельной дорожкой. Этот сценарий разобран ниже на примере PVConverter: программа предназначена не для произвольного raw G.711, а для поддерживаемых записей оборудования и умеет применять фильтр G.711a/G.711u при конвертации.

Минимальный чек перед преобразованием

  • Тип входа: обычный WAV, raw, RTP/PCAP или контейнер камеры.
  • Law: A-law либо μ-law/u-law. Не угадывайте, если параметр можно получить из заголовка, SDP или настроек оборудования.
  • Частота: для классического телефонного потока часто 8000 Гц, но для неизвестного raw её всё равно нужно подтвердить.
  • Каналы: обычно mono в PBX/IVR, однако raw не содержит этого признака.
  • Цель: прослушать, отредактировать, получить PCM WAV, подготовить файл для PBX или вернуть raw.
  • Требования конечной системы: именно они определяют финальный контейнер, law, частоту и канальность.

Как открыть и отредактировать G.711 в Windows

Для Windows полезно разделить «редактирование звука» и «телефонное кодирование». Полноценный аудиоредактор удобнее использовать после декодирования в PCM WAV; G.711 возвращают только на финальном экспорте. Так монтаж не зависит от поддержки CCITT-кодека внутри редактора и не добавляет лишних циклов компандирования.

АудиоМАСТЕР : основной способ редактирования через PCM WAV

АудиоМАСТЕР — аудиоредактор для Windows с монтажом, обработкой и сохранением WAV. В этой инструкции он используется на этапе редактирования линейного PCM WAV: исходный G.711 сначала декодируют, затем обрабатывают звук в АудиоМАСТЕР. Если целевая PBX требует G.711, готовый PCM-файл кодируют обратно отдельным G.711-инструментом.

Шаг 1. Получите линейный PCM WAV

Если исходник — raw A-law, используйте декодирование через FFmpeg, SoX или G711.org. Для raw μ-law укажите именно μ-law. Если файл уже WAV с A-law/μ-law, декодер обычно читает его заголовок автоматически. В качестве промежуточного формата подходит WAV PCM: он не требует повторного G.711-декодирования во время монтажа и совместим с АудиоМАСТЕР.

Для raw A-law в FFmpeg рабочая команда выглядит так:

ffmpeg -f alaw -ar 8000 -ac 1 -i input.al output-pcm.wav

Для raw μ-law:

ffmpeg -f mulaw -ar 8000 -ac 1 -i input.ul output-pcm.wav

Значения 8000 и 1 здесь задают именно параметры headerless входа. Если ваша запись имеет другие подтверждённые параметры, используйте их вместо телефонного примера.

Шаг 2. Откройте PCM WAV

Запустите АудиоМАСТЕР и нажмите «Открыть файл» в стартовом окне. Выберите подготовленный output-pcm.wav. После загрузки программа показывает волновую форму — это удобная точка контроля: можно воспроизвести начало, убедиться, что речь идёт с нормальной скоростью и не превратилась в шум ещё на этапе декодирования.

Стартовое окно АудиоМАСТЕР с кнопкой Открыть файл

Шаг 3. Удалите лишний фрагмент и выполните обработку

Для обрезки выделите участок на волновой форме. В интерфейсе доступна кнопка с ножницами; после выделения она применяется к выбранному фрагменту. Для телефонного приветствия обычно требуется убрать длинную тишину в начале и конце, случайный щелчок записи или неудачный дубль. Сильную обработку делать без необходимости не стоит: конечный G.711 имеет узкую телефонную полосу, поэтому задача — прежде всего получить разборчивый и ровный по уровню голос.

Волновая форма и выделенный участок звука в АудиоМАСТЕР

Если корректируете громкость, сначала прослушайте самые громкие места. Цель не в том, чтобы сделать каждую реплику максимально громкой, а в отсутствии перегрузки и резких скачков. Для IVR особенно важна разборчивость согласных и одинаковый уровень соседних подсказок.

Шаг 4. Сохраните рабочий WAV

При сохранении выберите WAV. В «Мастере сохранения» можно задать частоту дискретизации, битность и число каналов. Для промежуточного линейного файла под типичный телефонный workflow подходит 8000 Гц, 16 бит, Mono, если именно такие параметры нужны последующему кодеру или PBX. Важно: этот шаг создаёт PCM WAV, а не G.711 A-law/μ-law.

Мастер сохранения АудиоМАСТЕР с форматом WAV и параметрами дискретизации, битности и каналов

Шаг 5. При необходимости верните G.711 один раз

Если конечное устройство принимает обычный PCM WAV, на этом работа закончена. Если требуется CCITT A-law или μ-law, используйте WavePad, G711.org или FFmpeg для финального кодирования. Например, A-law WAV:

ffmpeg -i edited-pcm.wav -ar 8000 -ac 1 -c:a pcm_alaw final-alaw.wav

И μ-law WAV:

ffmpeg -i edited-pcm.wav -ar 8000 -ac 1 -c:a pcm_mulaw final-ulaw.wav

Так G.711 появляется только после завершения монтажа. Это лучше, чем после каждой обрезки сохранять A-law/μ-law и затем снова декодировать файл для следующего изменения.

Плюсы:

  • полноценное визуальное редактирование волновой формы после корректного декодирования;
  • можно убрать лишние фрагменты, выровнять подготовку голосовой подсказки и сохранить линейный WAV;
  • телефонный кодек отделён от монтажного этапа, поэтому проще контролировать, где именно возникла ошибка;
  • все исходные G.711-данные можно оставить неизменными и работать с копией PCM.

Минусы:

  • в этой схеме headerless A-law/μ-law сначала декодируется отдельным G.711-инструментом в PCM WAV;
  • финальное кодирование CCITT A-law/μ-law выполняется вторым инструментом после завершения монтажа;
  • не подходит как единственное приложение для пакетной серверной автоматизации.

WavePad : прямое сохранение WAV в CCITT A-law или u-law

WavePad удобен, когда требуется не только отредактировать обычный аудиофайл, но и сразу получить WAV с телефонным G.711. В Wave Encoder Options доступны CCITT A-law и CCITT u-law; для типового телефонного профиля задаются Mono, 8000 Hz и 8 bits Integer. Для линейного промежуточного WAV используется PCM Uncompressed, Mono, 8000 Hz, 16 bits Integer.

Шаг 1. Откройте исходный звук и выберите Save File As

После открытия файла в WavePad откройте меню File и выберите Save File As. Этот путь важен, когда нужно сохранить копию с новыми параметрами, не заменяя исходник.

Меню File в WavePad с командой Save File As

Шаг 2. Выберите Wave (*.wav)

В поле типа файла укажите Wave (*.wav). Не ориентируйтесь только на расширение: ключевой выбор G.711 делается следующим шагом в параметрах кодировщика.

Выбор типа Wave WAV при сохранении в WavePad

Шаг 3. Настройте Wave Encoder Options

В окне Wave Encoder Options выберите нужный Encoding. Для A-law — CCITT A-law; для μ-law — CCITT u-law. Для типового телефонного профиля выставьте Channels: Mono, Sample rate: 8000 Hz, Sample size: 8 bits Integer. Если нужен не G.711, а промежуточный PCM, выберите PCM Uncompressed, Mono, 8000 Hz, 16 bits Integer.

Окно Wave Encoder Options в WavePad с каналами и частотой 8000 Hz

На скриншоте показан PCM-вариант. Для G.711 в том же поле Encoding выбирают CCITT A-law или CCITT u-law; остальные телефонные параметры остаются Mono, 8000 Hz и 8 bits Integer.

Шаг 4. Проверьте результат

После сохранения не ограничивайтесь тем, что файл получил расширение .wav. Проверьте codec, sample rate и channels через медианализатор или ffprobe. Для A-law ожидается pcm_alaw, для μ-law — pcm_mulaw, для телефонного примера — 8000 Hz и 1 канал. Если PBX отклоняет файл при корректных параметрах, сверяйте уже требования конкретного устройства: часть систем дополнительно ограничивает длительность, имя, размер или формат заголовка.

Плюсы:

  • прямой G.711 WAV-экспорт через графический интерфейс Windows;
  • можно отдельно получить линейный PCM и телефонный A-law/u-law;
  • настройки law, каналов, частоты и размера отсчёта находятся в одном окне.

Минусы:

  • для неизвестного headerless raw сначала нужно правильно определить параметры входа;
  • ошибка между A-law и u-law не исправляется выбором другого расширения;
  • расположение элементов интерфейса может отличаться между сборками, поэтому ориентируйтесь прежде всего на названия Save File As, Wave (*.wav) и Wave Encoder Options.

G.711 Tool: специализированный, но устаревший Windows-вариант

G.711 Tool создан именно для преобразования телефонного G.711: он работает с raw A-law/u-law и RIFF/WAVE, а также выполняет программные преобразования между A-law, u-law и PCM. В отличие от универсальных медиаконвертеров, инструмент изначально разделяет raw-поток и WAV с заголовком как разные представления данных.

Использовать G.711 Tool как основной вариант для современного компьютера не стоит. Утилита создавалась для Windows NT 4.0/NetMeeting и системных G.711-драйверов Microsoft. На странице программы встречаются противоречивые подписи битрейта, не совпадающие со стандартным 64-кбит/с потоком G.711, поэтому эти старые числовые значения нельзя использовать как эталон.

Когда этот способ уместен: если у вас уже есть рабочая копия G.711 Tool в совместимой Windows-среде и требуется простое преобразование старых файлов. Для новой схемы обработки практичнее FFmpeg, SoX, Audacity или WavePad: law, частоту, каналы и выходной codec у них можно задать явно.

Плюсы:

  • узкая специализация на A-law/u-law и raw/WAV;
  • понятная модель преобразования без лишних видеофункций;
  • исторически рассчитан на телефонные G.711-данные.

Минусы:

  • изначально рассчитан на устаревшую среду Windows;
  • совместимость с современными Windows-системами не является воспроизводимым преимуществом этого способа;
  • старые числовые подписи на странице программы нельзя использовать как эталон стандарта.

dBpoweramp Music Converter : почему старую инструкцию с Windows ACM нужно считать исторической

Скриншот программы dBpoweramp Music Converter

В старом workflow dBpoweramp Music Converter использовался путь Convert To → Wave → Settings с выбором системного A-law codec. Некоторые Windows-программы того периода не реализовывали G.711 сами, а использовали кодеки, зарегистрированные в системе через ACM. Такой совет нельзя автоматически переносить на современную установку и ожидать, что пункт A-law появится у любого пользователя.

dBpoweramp Music Converter разумно рассматривать только как legacy-сценарий. Если программа на конкретной системе предлагает A-law через доступный системный WAV-кодек, результат всё равно нужно проверить. Если соответствующего пункта нет, не следует устанавливать случайные codec packs только ради G.711: безопаснее использовать инструмент с собственными настройками A-law/μ-law.

Плюсы:

  • показывает реальный старый путь через Windows wave codecs;
  • объясняет, почему две одинаковые установки старого ПО могли показывать разные кодеки.

Минусы:

  • workflow привязан к исторической Windows/ACM-среде;
  • для текущей практической схемы A-law/μ-law лучше использовать инструмент с явным выбором law и параметров потока;
  • не годится как основной воспроизводимый способ на новом компьютере.

PVConverter: G.711a/G.711u внутри записей видеонаблюдения

PVConverter нужен в другой ситуации: пользователь получает не самостоятельный звуковой raw-файл, а запись поддерживаемой камеры или регистратора. Программа применяет фильтр G.711a/G.711u к 8-кГц аудио при конвертации поддерживаемых записей и сохраняет результат в MP4. Этот режим нельзя применять к любому .ul или .al: PVConverter работает с определёнными контейнерами видеонаблюдения.

  1. Откройте параметры PVConverter и задайте соотношение сторон, фильтр G.711 и папку результата.
  2. Добавьте записи кнопкой «Добавить файлы» или перетащите их в окно. Поддерживаются .avi, .bpv, .h264, .h265 и .mp4.
  3. Лишний выделенный элемент можно удалить клавишами Delete/Backspace либо кнопкой ×.
  4. Нажмите «Пуск». Для файлов отображаются состояния «Ожидание», «Готов», «Конвертация», «Ошибка»; процесс можно остановить кнопкой «Стоп».
  5. Готовые MP4 сохраняются в выбранной папке. После этого, если нужен отдельный звук, работайте уже с аудиодорожкой контейнера.

Как открыть G.711 на macOS

На macOS удобно разделить два сценария. Audacity подходит для ручного импорта headerless A-law/μ-law и редактирования. Switch Audio File Converter удобен, если у вас уже есть WAV с G.711-кодированием и требуется преобразовать его в обычный формат. Для Mac особенно важно учитывать ограничения вывода Switch Audio File Converter: программа читает WAV с aLaw/uLaw, но WAV-экспорт на Mac ограничен кодированием auto, PCM и GSM.

Audacity : импорт headerless raw и ручная проверка параметров

Audacity — один из наиболее прозрачных GUI-способов открыть raw G.711, потому что в меню есть специальная команда File → Import → Raw Data. Она предназначена для несжатых данных без нормального заголовка или с нестандартным заголовком. Вместо угадывания по расширению пользователь задаёт параметры вручную.

Шаг 1. Откройте File → Import → Raw Data

Выберите raw-файл. Появится окно Import Raw Data с полями Encoding, Byte order, Channels, Start offset, Amount to import и Sample rate. Для A-law/μ-law порядок байтов не играет той же роли, что для многобайтового PCM, но law, каналы и частота должны соответствовать реальному потоку.

Окно Import Raw Data в Audacity с параметрами Encoding, Channels и Sample rate

Шаг 2. Выберите A-Law или U-Law и параметры потока

Если известно, что файл μ-law, установите Encoding: U-Law; для A-law — A-Law. Для классической телефонной записи задайте Channels: 1 Channel (Mono) и Sample rate: 8000 Hz. Эти числа нельзя подставлять механически для неизвестного дампа: если устройство или параметры сеанса задают другую частоту либо канальность, используйте именно их.

После импорта прослушайте несколько участков. Неверный law обычно проявляется сильным искажением при нормальной длительности; неверная частота меняет темп и высоту голоса; неверное число каналов может дать неправильную длительность или чередование данных.

Шаг 3. Отредактируйте и экспортируйте

После корректного импорта raw становится обычной звуковой дорожкой проекта. Для монтажа удобнее экспортировать или хранить рабочую копию в линейном PCM. Если задача требует получить A-law/μ-law на выходе, Audacity поддерживает такие 8-битные companded-форматы через File → Export Audio и вариант Other uncompressed files.

Экспорт Audio в Audacity с выбором WAV и A-law

Для headerless raw в параметрах экспорта выбирают Header: RAW (header-less) и Encoding: U-Law или A-Law; для телефонного варианта также выставляют 8000 Hz и Mono.

Параметры raw U-Law, Mono и 8000 Hz при экспорте в Audacity

Для PBX чаще удобнее WAV с корректным заголовком, чем headerless raw: система получает кодек и параметры из контейнера. Выбирайте raw только тогда, когда его прямо требует оборудование или программный интерфейс.

Плюсы:

  • явный импорт raw с ручным Encoding, каналами и sample rate;
  • можно прослушать результат до сохранения и заметить неправильный law;
  • поддерживаются A-Law/U-Law среди несжатых экспортных форматов;
  • подходит для полноценной ручной правки речи.

Минусы:

  • программа не может восстановить неизвестные параметры headerless файла из несуществующего заголовка;
  • для больших пакетных заданий CLI удобнее;
  • при неверной интерпретации raw можно получить правдоподобную длительность, но испорченный звук, поэтому прослушивание обязательно.

Switch Audio File Converter : декодирование G.711 WAV и конвертация на Mac

Switch Audio File Converter на Mac читает .wav с PCM, ADPCM, aLaw, uLaw и другими поддерживаемыми кодированиями. Поэтому программа подходит, когда G.711 уже находится внутри нормального WAV и требуется получить PCM, AIFF, FLAC или другой формат для редактирования. Headerless .raw как вход на Mac не заявлен, поэтому произвольный raw G.711 лучше открывать через Audacity, FFmpeg или SoX.

Главное окно Switch Audio File Converter со списком аудиоформатов

  1. Добавьте WAV с A-law/u-law в Switch Audio File Converter.
  2. Выберите линейный формат результата, например WAV PCM, если дальше файл будет редактироваться.
  3. Задайте папку назначения и запустите Convert.
  4. Проверьте получившийся PCM-файл воспроизведением и анализатором codec/sample rate/channels.

Для обратного шага есть важное ограничение: WAV-вывод на Mac поддерживает auto, PCM и GSM, поэтому G.711 aLaw/uLaw внутри WAV через Switch Audio File Converter для macOS использовать не следует. Отдельный RAW output на Mac поддерживается, а RAW encoder options включают G711 uLaw и G711 aLaw; этот режим предназначен именно для headerless результата.

Плюсы:

  • чтение WAV с aLaw/uLaw работает на Mac;
  • простой пакетный интерфейс конвертера;
  • подходит для перевода телефонного WAV в линейный формат перед монтажом.

Минусы:

  • headerless raw как вход на Mac не заявлен;
  • G.711 aLaw/uLaw внутри WAV как Mac-output не поддерживаются в заявленном наборе;
  • для точной работы с raw и автоматизации удобнее FFmpeg или SoX.

Как конвертировать G.711 онлайн

Браузерный способ удобен для разовой подготовки голосовой подсказки, когда исходник — обычный MP3/WAV и требуется телефонный WAV. Он хуже подходит для конфиденциальных записей разговоров и для неизвестного headerless raw: данные приходится передавать внешнему сервису, а возможностей вручную описать структуру raw обычно нет.

G711.org File Converter: готовые пресеты для IVR и Music on Hold

G711.org ориентирован именно на телефонию. В форме есть Source File → Browse, выбор Output Format, настройка громкости, переключатель Optimize Audio for Phone (Bandpass Filter) и кнопка Submit. Сервис указывает максимальный размер исходного файла 50 MB.

G711 File Converter с пресетами u-law WAV, a-law WAV и PCM

  1. Нажмите Browse и выберите обычный исходный медиафайл.
  2. В Output Format выберите μ-law WAV (8Khz, Mono, CCITT μ-law) или A-law WAV (8Khz, Mono, CCITT A-law). Для промежуточного линейного файла есть Standard Definition 16-bit WAV (8Khz, Mono, 16-Bit PCM).
  3. При необходимости выберите уровень громкости и телефонный bandpass filter. Не применяйте фильтр к мастер-копии автоматически: он предназначен для телефонного результата.
  4. Нажмите Submit и сохраните полученный файл.
  5. Проверьте codec, частоту и число каналов локально, прежде чем загружать WAV в PBX.

Сервис особенно удобен для схемы «обычный WAV/MP3 с голосом → готовый A-law/u-law WAV». Не следует выдавать его как универсальный анализатор любого сырого дампа: форма рассчитана на загружаемый медиафайл, а не на ручное описание неизвестного raw.

Плюсы:

  • готовые телефонные пресеты без ручной командной строки;
  • видно различие A-law, μ-law и PCM ещё до конвертации;
  • можно быстро подготовить IVR/Music on Hold.

Минусы:

  • файл передаётся стороннему онлайн-сервису;
  • лимит исходного файла — 50 MB;
  • не предназначен для диагностики неопределённого raw/RTP-контента.

Convertio: обычный аудиофайл → WAV с G.711

В текущих настройках WAV у Convertio доступны варианты PCM A-Law, G.711 (Uncompressed) и PCM µ-Law, G.711 (Uncompressed), а среди sample rate есть 8000 Hz. Это позволяет использовать сервис для поддерживаемого исходного формата, который нужно привести к G.711-кодированному WAV.

  1. Откройте в Convertio преобразование поддерживаемого исходника в WAV.
  2. Добавьте файл и откройте расширенные настройки WAV.
  3. В поле кодека выберите PCM A-Law, G.711 либо PCM µ-Law, G.711.
  4. Если целевая PBX требует классический телефонный профиль, выставьте 8000 Hz и один канал, если настройка каналов доступна в выбранном workflow.
  5. Запустите конвертацию, затем локально проверьте получившийся WAV.

Граница применимости здесь принципиальна: наличие G.711 в выходных настройках WAV не доказывает, что Convertio понимает произвольный headerless .ul/.al как вход. Поэтому raw G.711 разбирайте в Audacity, FFmpeg или SoX, где encoding задаётся явно.

Плюсы:

  • A-law и μ-law присутствуют как явные варианты WAV encoding;
  • не требуется установка настольной программы;
  • подходит для разового преобразования стандартного исходника.

Минусы:

  • универсальный импорт headerless G.711 не заявлен;
  • обработка идёт через внешний сервис;
  • для пакетного корпоративного workflow и закрытых записей предпочтительнее локальные инструменты.

G.711 на iPhone и iPad

На iPhone и iPad есть два разных практических сценария: графическая конвертация в iziCut и локальная командная обработка через a-Shell mini. Первый удобнее для ручной подготовки медиафайла, второй — когда нужен точный FFmpeg-workflow с известными параметрами raw.

iziCut – Video Sound Editor: A-law/u-law output без терминала

iziCut извлекает и конвертирует аудио; в версии 1.2.0 были добавлены stereo / mono для выходных форматов и u-law & a-law output format. Поэтому приложение можно использовать для получения телефонного A-law/u-law без shell-команд.

  1. Импортируйте поддерживаемый аудио- или видеофайл в iziCut.
  2. Перейдите к модулю извлечения/конвертации звука.
  3. Для телефонного результата выберите WAV и A-law либо u-law в доступных параметрах output.
  4. Установите Mono, если этого требует PBX или устройство.
  5. Сохраните результат в Files и перед отправкой в телефонию проверьте параметры на компьютере либо другим анализатором.

Приложение удобно для подготовки обычного медиафайла и выбора u-law/a-law при экспорте. Для неизвестного headerless .ul или .al в этой инструкции используется FFmpeg, где encoding, sample rate и channels задаются явно.

a-Shell mini: локальный FFmpeg на iOS/iPadOS

Скриншот программы FFmpeg

a-Shell mini — локальный Unix-терминал для iPhone/iPad со встроенным native ffmpeg. Это делает приложение пригодным для технического сценария, когда известны параметры raw G.711 и нужен воспроизводимый локальный конвертер без загрузки аудио в браузерный сервис.

После предоставления терминалу доступа к папке с файлом используйте те же параметры, что и на Linux. Для A-law raw:

ffmpeg -f alaw -ar 8000 -ac 1 -i input.al output.wav

Для μ-law raw:

ffmpeg -f mulaw -ar 8000 -ac 1 -i input.ul output.wav

Для обратного преобразования обычного WAV в A-law WAV:

ffmpeg -i input.wav -ar 8000 -ac 1 -c:a pcm_alaw output-alaw.wav

Команда удобна именно потому, что параметры стоят в явном виде. Если исходный raw не 8000 Гц или не mono, замените их на подтверждённые значения. Не используйте телефонный шаблон как способ «подобрать звук на слух», если параметры можно получить из оборудования.

Плюсы:

  • локальная обработка и встроенный FFmpeg;
  • тот же синтаксис, что на настольной системе;
  • удобен для повторяемых технических операций и Shortcuts.

Минусы:

  • терминальный интерфейс требует понимания raw-параметров;
  • ошибка в -f, -ar или -ac даст неправильный результат;
  • для визуальной обрезки речи отдельный аудиоредактор удобнее.

G.711 на Android

На Android можно либо записывать звук сразу в WAV A-Law/U-Law, либо использовать FFmpeg-оболочку для конвертации существующих файлов. Эти сценарии не нужно смешивать: рекордер полезен при создании нового телефонного материала, а FFmpeg Media Encoder — когда файл уже получен из другой системы.

Neutron Audio Recorder: запись WAV сразу в A-Law/U-Law

Neutron Audio Recorder записывает звук в WAV (PCM, ADPCM, A-Law, U-Law), а также в другие поддерживаемые аудиоформаты. Поэтому приложение полезно, когда нужно записать голос на Android и сразу сохранить его в одном из телефонных WAV-кодирований. Это не основание считать его универсальным конвертером произвольных raw-файлов.

Интерфейс Neutron Audio Recorder с волновой формой, индикатором уровня и управлением записью

https://play-lh.googleusercontent.com/aTkyYHqWXReQ5cqsj6u6MIvIhtcKkQtjHY...

  1. Откройте настройки записи. В интерфейсе есть раздел Recording, где выбираются параметры записи.
  2. Установите Format: WAV, затем выберите A-Law или U-Law в параметрах формата, если конечная система требует именно это кодирование.
  3. Задайте частоту и канальность по требованиям PBX. Для обычного G.711-телефонного файла ориентир — 8000 Гц, Mono, но окончательное значение берите из требований целевой системы.
  4. Запишите короткий тест, сохраните и проверьте его до записи длинного материала.

Раздел Recording в Neutron Audio Recorder с пунктом Format и параметрами обработки

https://play-lh.googleusercontent.com/cN--80IKP9uz_uR8KtM4ULKJVB072BHSXC...

Плюсы:

  • поддерживаются WAV A-Law/U-Law;
  • можно получить телефонное кодирование уже при записи;
  • есть визуальные анализаторы и настройки DSP для контроля записи.

Минусы:

  • главное назначение — запись, а не декодирование неизвестного raw G.711;
  • для точной подготовки существующего файла удобнее FFmpeg-команда;
  • перед использованием в PBX всё равно следует проверить технические свойства результата.

FFmpeg Media Encoder: локальная конвертация существующего файла

FFmpeg Media Encoder выполняет конвертацию непосредственно на Android-устройстве и использует встроенный FFmpeg. В интерфейсе задаются входной файл, выходной файл и параметры кодирования; для G.711 смысл параметров остаётся тем же, что в настольной командной строке.

Главное окно FFmpeg Media Encoder с входным и выходным файлами и параметрами кодирования

https://play-lh.googleusercontent.com/wHdhy_ABuzcDuukymJAWqpJGHxSZmRzg2Y...

Очередь и индикатор выполнения в FFmpeg Media Encoder

https://play-lh.googleusercontent.com/iVnHNyuHZN0Jsu-jbolu04XO2SP2dlqGgV...

Пример для raw A-law:

ffmpeg -f alaw -ar 8000 -ac 1 -i input.al output.wav

Пример для обычного WAV → G.711 μ-law WAV:

ffmpeg -i input.wav -ar 8000 -ac 1 -c:a pcm_mulaw output-ulaw.wav

Если приложение предлагает отдельные поля для входа, выхода и параметров вместо одной строки, перенесите значения команды в соответствующие поля. Главное — не терять смысл: alaw/mulaw описывает headerless input, pcm_alaw/pcm_mulaw выбирает кодек аудиодорожки на выходе.

Как конвертировать G.711 в Linux

Для Linux наиболее воспроизводимы FFmpeg и SoX. Они особенно полезны при пакетной работе, потому что команда содержит все критичные параметры и легко повторяется для десятков файлов. В отличие от GUI, здесь сразу видно, является ли вход raw, какой law выбран и что создаётся на выходе.

FFmpeg : A-law/μ-law ↔ PCM/WAV и raw

В FFmpeg raw-форматы alaw и mulaw используются для headerless G.711 A-law и μ-law; типичные расширения — .al и .ul. Такие raw-потоки не содержат контейнерных timestamps или metadata, поэтому при чтении критические параметры передают в командной строке.

Raw A-law → PCM WAV

ffmpeg -f alaw -ar 8000 -ac 1 -i input.al output-pcm.wav

-f alaw сообщает тип raw-данных, -ar 8000 — частоту, -ac 1 — один канал. WAV на выходе без явного G.711-кодека будет декодирован в формат, который проще открыть и редактировать.

Raw μ-law → PCM WAV

ffmpeg -f mulaw -ar 8000 -ac 1 -i input.ul output-pcm.wav

Если ошибочно поставить -f alaw для μ-law, команда всё равно может завершиться, потому что каждый входной байт формально допустим как кодовое значение. Ошибка обнаруживается по звуку и заранее известным параметрам записи, а не по коду завершения процесса.

Обычный WAV/PCM → A-law WAV

ffmpeg -i input.wav -ar 8000 -ac 1 -c:a pcm_alaw output-alaw.wav

Здесь pcm_alaw — кодек внутри выходного WAV. Это отличается от -f alaw: второй вариант создаёт headerless поток.

Обычный WAV/PCM → μ-law WAV

ffmpeg -i input.wav -ar 8000 -ac 1 -c:a pcm_mulaw output-ulaw.wav
Обычный WAV → raw A-law
ffmpeg -i input.wav -ar 8000 -ac 1 -f alaw output.al
Обычный WAV → raw μ-law
ffmpeg -i input.wav -ar 8000 -ac 1 -f mulaw output.ul

Raw нужен только тогда, когда получатель действительно ожидает поток без RIFF-заголовка. Для обычного обмена файлами WAV удобнее, потому что параметры можно прочитать автоматически.

Проверка через ffprobe

ffprobe -v error -select_streams a:0 -show_entries stream=codec_name,sample_rate,channels -of default=noprint_wrappers=1 output-alaw.wav

Для A-law ожидайте codec_name=pcm_alaw, для μ-law — codec_name=pcm_mulaw. При телефонном пресете также должны быть sample_rate=8000 и channels=1. Проверка особенно полезна после GUI-конвертера: расширение WAV ничего не говорит о внутреннем кодеке.

Плюсы:

  • явная разница между raw format и кодеком в WAV;
  • подходит для пакетной обработки и скриптов;
  • одинаковый принцип работает на Linux, Windows, macOS и в мобильных FFmpeg-оболочках;
  • ffprobe позволяет проверить результат без догадок.

Минусы:

  • для raw пользователь обязан знать частоту и каналы;
  • команда не определяет автоматически, какой law «задумал» автор неизвестного байтового потока;
  • для ручной визуальной правки удобнее GUI-редактор.

SoX: компактные команды для headerless A-law/μ-law

SoX также хорошо подходит к raw-телефонии: для raw можно явно указать тип, sample rate, channels и encoding; .ul используется для 8-bit μ-law, а .al — для 8-bit A-law. Явные параметры предпочтительнее надежды на расширение, особенно если файл имеет имя .raw или пришёл из SDK.

A-law raw → WAV

sox -t raw -r 8000 -c 1 -e a-law input.al output.wav
μ-law raw → WAV
sox -t raw -r 8000 -c 1 -e u-law input.ul output.wav
WAV → raw A-law
sox input.wav -r 8000 -c 1 -e a-law -t raw output.al
WAV → raw μ-law
sox input.wav -r 8000 -c 1 -e u-law -t raw output.ul

После SoX-конвертации raw разумно сделать обратный тест в WAV и прослушать результат. Такой round-trip не доказывает правильность исходного law, если оба шага используют одну и ту же ошибочную интерпретацию, поэтому сверяйте параметры с устройством, которое создало запись.

Плюсы:

  • короткий и однозначный синтаксис для raw;
  • удобно включать в shell-скрипты;
  • явно задаются law, sample rate и channels.

Минусы:

  • нет визуального монтажа;
  • неизвестные параметры raw приходится получать из внешнего контекста;
  • для контейнеров DVR сначала нужен инструмент, понимающий сам контейнер.

Инструменты G.711 для разработчиков и автоматизации

GUI-конвертеры решают задачу пользователя, но не всегда подходят для сервера, DSP-модели или собственного приложения. Библиотеки и инженерные реализации лучше рассматривать отдельно: у разработчика основная единица работы — массив PCM/G.711-отсчётов или поток байтов, а не кнопка «Сохранить как».

MATLAB/Simulink G711 Codec

Блок G711 Codec в DSP System Toolbox рассчитан на узкополосную речь и реализует кодирование, декодирование и прямое преобразование между законами. В параметре Mode доступны шесть режимов:

  • Encode PCM to A-law;
  • Encode PCM to mu-law;
  • Decode A-law to PCM;
  • Decode mu-law to PCM;
  • Convert A-law to mu-law;
  • Convert mu-law to A-law.

Для режимов PCM → law появляется параметр Overflow diagnostic с вариантами Ignore, Warning и Error. Блок полезен не как файловый конвертер для одного голосового приветствия, а как компонент модели обработки речи, где нужно контролировать тип входного сигнала и дальнейшую генерацию C/C++ кода.

Практический сценарий: подайте на блок корректный линейный PCM, выберите нужный Mode, проверьте выходные 8-битные индексы и только затем формируйте контейнер или сетевой пакет на следующем уровне модели. Не смешивайте кодирование sample values с созданием WAV-заголовка: G711 Codec выполняет сам алгоритм, а файловая упаковка — отдельная задача.

escrichov/G711: минимальная C/CLI-реализация

Репозиторий escrichov/G711 содержит реализацию преобразований и пример консольного приложения. Сборка выполняется командой make. В примере используются четыре названия операций: alaw_pcm, ulaw_pcm, pcm_alaw, pcm_ulaw. Это полезно для разработчика, которому не нужен медиафреймворк целиком.

./example example_files/alaw.raw alaw_pcm output-pcm.audio
./example example_files/ulaw.raw ulaw_pcm output-pcm.audio
./example example_files/pcm.raw pcm_alaw output-alaw.audio
./example example_files/pcm.raw pcm_ulaw output-ulaw.audio

Такие команды преобразуют последовательности отсчётов, но не делают результат автоматически «правильным WAV для PBX». Если системе нужен RIFF/WAV, после кодирования должен существовать корректный контейнер с соответствующим format tag и параметрами. Для пользовательской задачи это одна из причин предпочесть FFmpeg или WavePad, которые умеют сформировать WAV непосредственно.

Плюсы:

  • маленький код и четыре понятных направления преобразования;
  • удобен для встраивания и изучения алгоритма;
  • не требует GUI.

Минусы:

  • работа с контейнерами остаётся задачей вызывающего кода;
  • не заменяет аудиоредактор;
  • разработчик сам отвечает за sample rate, channels, порядок и размер входного массива.

filon7/G711-PCM-Convert: C-библиотека для G.711 ↔ PCM

filon7/G711-PCM-Convert — небольшая C-библиотека с двумя основными направлениями: G.711 → PCM и PCM → G.711. Это вариант для прошивки, шлюза или собственного сервиса, где G.711 приходит уже как известный массив байтов. Готового полноценного пользовательского GUI у этого проекта нет, поэтому применять к нему шаги настольного аудиоредактора нельзя.

Правильная архитектура интеграции выглядит так: сетевой/файловый слой определяет A-law или μ-law и выдаёт кодированные байты; библиотека преобразует их в линейные PCM samples; DSP или приложение выполняет нужную обработку; финальный этап при необходимости снова кодирует PCM в выбранный law. Контейнер WAV, RTP timestamps и восстановление потерянных пакетов относятся к другим компонентам.

libsndfile: когда библиотека полезнее ручного WAV-парсинга

libsndfile читает и записывает u-law и A-law в Microsoft WAV, AU/SND, headerless RAW и ряде других поддерживаемых контейнеров. Практический смысл библиотеки — отделить контейнерный уровень от обработки samples: приложение получает данные через единый файловый интерфейс и не формирует RIFF chunks вручную.

Однако libsndfile не превращает неизвестный RTP payload в звуковой файл и не восстанавливает параметры headerless raw из воздуха. Для raw всё равно нужно знать формат потока, а для сетевого дампа сначала выделить аудиоданные. В статье библиотека поэтому относится к разделу разработки, а не к списку «проигрывателей G.711».

Intel IPP и собственный код: только при контролируемой разработке

Intel IPP и собственный C-код применяются в низкоуровневых G.711-реализациях, но названия API зависят от используемого SDK. Самостоятельно написанный codec нужно проверять на эталонных векторах и граничных значениях, а не только на слух.

Если проект требует межоперабельного поведения, используйте реализацию с воспроизводимыми тестами и проверочными векторами. Это надёжнее случайной функции из старого фрагмента кода, где неизвестны диапазоны входа и обработка граничных значений.

G.711 PCM Vocoder: специализированный DSP-компонент

G.711 PCM Vocoder от Adaptive Digital относится к классу профессиональных DSP-компонентов: преобразование между 8-битным companded G.711 и линейным PCM дополняется телеком-функциями вроде обработки речевого канала. Для обычного пользователя это не альтернатива АудиоМАСТЕР или G711.org, а пример того, как G.711 включается в аппаратно-программные телефонные тракты.

Такой продукт нужен, когда задача — встроить codec в DSP/телеком-систему, а не вручную отредактировать один WAV. Сравнивать его напрямую с настольными аудиоредакторами некорректно: критерии и рабочие процессы у этих классов ПО разные.

Guru Audio Convert и redice.krisk.org: устаревшие варианты

Guru Audio Convert и redice.krisk.org относятся к устаревшим вариантам G.729/G.711 → WAV и не подходят как основной воспроизводимый workflow на современном компьютере. Для тех же задач используйте инструменты с явными параметрами G.711.

Для практической работы важна воспроизводимость: law, sample rate, channels и выходной codec должны задаваться явно и одинаково обрабатываться на повторном запуске. FFmpeg, Audacity, WavePad и G711.org позволяют выстроить такую схему без устаревших промежуточных компонентов.

Особые случаи: RTP, PBX, видеонаблюдение и факс

G.711 в RTP/SIP: сначала извлеките правильную медианагрузку

Для стандартного RTP-профиля PCMU имеет статический payload type 0, а PCMA — payload type 8; оба используют clock rate 8000 и один аудиоканал. Эти значения помогают при анализе классического RTP/AVP, но не отменяют чтение SDP: в реальных системах важно видеть согласованные параметры сеанса и не спутать медиапоток с другими UDP-данными.

Рабочая последовательность для PCAP:

  1. Найдите SIP-диалог или иным способом определите пары адресов/портов RTP.
  2. Проверьте SDP/rtpmap или payload type, чтобы установить PCMA/PCMU.
  3. Извлекайте только RTP payload в правильном порядке, учитывая sequence numbers и пропуски.
  4. После удаления RTP-заголовков сохраните полезную нагрузку как raw A-law/μ-law либо декодируйте в PCM.
  5. Если нужна запись разговора, учитывайте направления звонка: входящий и исходящий голоса могут идти двумя отдельными RTP-потоками.

Нельзя просто взять весь UDP-пакет после Ethernet/IP и записывать его в WAV: в данных останутся UDP/RTP-заголовки. Нельзя также игнорировать потерю/переупорядочивание пакетов, если требуется корректная временная запись. Для единичного дампа удобнее сначала получить поток специализированным анализатором протоколов, а потом редактировать декодированный PCM.

IVR, Music on Hold и голосовые подсказки PBX

В PBX задача обычно противоположна «открыть неизвестный G.711»: есть обычная запись речи, которую нужно привести к строго заданному телефонному профилю. Практически распространены три варианта: μ-law WAV 8 kHz Mono, A-law WAV 8 kHz Mono и 16-bit PCM WAV 8 kHz Mono; конкретный вариант выбирайте по требованиям самой PBX.

Для нового голосового приветствия используйте такой порядок:

  1. Запишите и отредактируйте речь в линейном формате. Обрежьте паузы, проверьте произношение и уровень.
  2. Сохраните мастер-копию в PCM WAV, чтобы будущие изменения не начинались с уже компандированного G.711.
  3. Сделайте отдельный финальный файл под требования PBX: PCMA/A-law, PCMU/μ-law или PCM.
  4. Проверьте частоту, channels и codec.
  5. Загрузите короткий тест и убедитесь, что система воспроизводит его без ускорения, тишины и искажений.

Если PBX принимает только один law, «похожий» вариант не подойдёт. A-law и μ-law имеют одинаковый nominal bitrate, но разные таблицы компандирования. Конвертируйте в требуемый codec, а не переименовывайте файл.

Видеонаблюдение: сначала контейнер, потом codec

Файлы DAV/DVR/IFV и фирменные записи камер часто вызывают ложный вопрос «чем открыть G.711», хотя пользователь в действительности пытается открыть видеофайл. G.711 в таком случае — только звук. Правильный порядок: открыть контейнер фирменным или совместимым инструментом, экспортировать/перемультиплексировать запись, затем при необходимости извлечь аудио.

PVConverter — конкретный пример такого пути для поддерживаемого оборудования Polyvision. Для других регистраторов нельзя автоматически советовать ту же программу: контейнерные форматы могут различаться даже при одинаковом G.711 внутри. Если обычный FFmpeg распознаёт контейнер и дорожки, можно использовать его; если нет — сначала нужен vendor-specific converter.

Факс по G.711: контекст, а не способ конвертировать аудиофайл

3CX V15.5 поддерживал сценарий приёма факсов по G.711, когда T.38 недоступен. Это отдельный телеком-сценарий и не инструкция по ручному редактированию файлов: факс поверх голосового codec и конвертация WAV — разные процессы.

Как редактировать G.711 без лишних потерь

G.711 использует нелинейное компандирование: 16-битный линейный сигнал при кодировании переводится в 8-битные A-law/μ-law значения. Поэтому разумная монтажная схема — один раз декодировать исходник в PCM, выполнить все изменения в линейном представлении и один раз закодировать финальную версию. Повторные циклы G.711 → PCM → G.711 после каждой операции не улучшают звук и усложняют контроль.

Рабочая цепочка

  1. Сохраните оригинал. Не перезаписывайте единственный raw/RTP-дамп.
  2. Определите law и параметры. Для WAV возьмите их из заголовка; для raw — из настроек системы, которая создала поток.
  3. Декодируйте в PCM WAV. Для ручного монтажа это наиболее совместимый промежуточный формат.
  4. Редактируйте PCM. В АудиоМАСТЕР, Audacity или другом подходящем аудиоредакторе выполните обрезку, монтаж и необходимую коррекцию.
  5. Сохраните мастер PCM. Он пригодится для будущих изменений.
  6. Создайте delivery-файл. Кодируйте в A-law/μ-law только если его требует PBX, SDK, RTP-шлюз или другое устройство.
  7. Проверьте delivery-файл. Технические параметры и реальное воспроизведение должны совпадать с требованиями.

Почему MP3 — плохой промежуточный формат

Если исходный G.711 нужно только отредактировать и вернуть в телефонию, переводить его сначала в MP3 нет практического смысла. MP3 добавляет ещё один lossy-этап и не сохраняет телефонные параметры лучше PCM. Используйте WAV PCM как рабочую копию, а MP3 создавайте отдельно только когда он действительно нужен для доставки или прослушивания.

Что означает «без потери качества» в этой задаче

Декодирование G.711 в PCM не восстанавливает информацию, которой нет в исходном телефонном сигнале: оно лишь переводит кодированные значения в линейное представление. Сохранение этого PCM в WAV не добавляет новой потери. Обратное кодирование в G.711 снова применяет его ограниченную шкалу. Поэтому корректнее говорить не о «магическом восстановлении качества», а о минимизации дополнительных преобразований после исходного кодирования.

Как проверить результат после конвертации

Проверка должна быть отдельным шагом, потому что многие ошибочные файлы внешне выглядят нормально: имеют расширение .wav, открываются в проигрывателе и даже содержат ожидаемую длительность. Для PBX важен внутренний codec и параметры, а для raw — соответствие интерпретации исходным данным.

1. Проверьте codec, sample rate и channels

Через FFmpeg используйте ffprobe:

ffprobe -v error -select_streams a:0 -show_entries stream=codec_name,sample_rate,channels -of default=noprint_wrappers=1 final.wav

Для типичного A-law delivery-файла результат должен содержать pcm_alaw, 8000 и 1. Для μ-law — pcm_mulaw, 8000 и 1. Если ваша система требует другие параметры, эталоном служит её спецификация, а не эта телефонная шпаргалка.

2. Проверьте длительность по raw-размеру

Для моно G.711 при 8 кГц один байт соответствует одному отсчёту, поэтому приблизительная длительность headerless payload в секундах равна размер_в_байтах / 8000. Этот расчёт удобен как sanity check. Например, raw размером около 800 000 байт соответствует примерно 100 секундам непрерывного моно-потока без служебных данных.

Если рассчитанная длительность радикально расходится с ожидаемой, возможно, в файле есть заголовки/пакетная структура, другая канальность или это вообще не чистый G.711 payload.

3. Прослушайте начало, середину и конец

  • Голос слишком быстрый или медленный — первым делом проверяйте sample rate.
  • Сильное характерное искажение при нормальном темпе — проверьте A-law против μ-law.
  • Периодические щелчки или мусор — возможны сетевые заголовки, пропуски пакетов или неправильный offset.
  • Длительность вдвое отличается — проверьте канальность и структуру raw.
  • PBX воспроизводит тишину — проверьте не только sample rate, но и внутренний WAV codec.

4. Сравните с мастер-копией PCM

Если монтаж выполнен в PCM, храните этот файл рядом с delivery-версией. При проблеме легко определить этап: если PCM звучит правильно, а A-law/u-law нет — ошибка в финальном кодировании или требованиях системы. Если PCM уже повреждён, возвращайтесь к декодированию исходного G.711.

5. Проверьте в целевой PBX/устройстве на коротком тесте

Даже технически корректный WAV может не соответствовать дополнительным ограничениям конкретного оборудования. Перед массовой загрузкой голосовых подсказок создайте короткий тестовый файл тем же способом. Если он принимается и воспроизводится, зафиксируйте workflow и применяйте его к остальным материалам.

Частые ошибки при открытии и конвертации G.711

Переименовать .raw или .ul в .wav

Расширение не создаёт RIFF-заголовок. Такой файл остаётся headerless потоком; часть программ либо откажется его читать, либо попытается распознать неверно. Используйте импорт raw с заданными параметрами или реально сформируйте WAV через codec/container-инструмент.

Не различать A-law и μ-law

Оба варианта состоят из 8-битных кодовых значений, поэтому размер файла не помогает выбрать law. Если устройство сообщает PCMA — нужен A-law; PCMU — μ-law. Для RTP/AVP стандартные payload types также различаются: PCMU 0, PCMA 8.

Передать raw в FFmpeg без -f, -ar и -ac

Headerless файл не содержит параметров, поэтому команда вида ffmpeg -i input.raw ... не является универсальным рецептом. Для чистого A-law/μ-law используйте явный input format и известные rate/channels.

Считать любой WAV «несжатым PCM»

WAV — контейнер. Внутри может быть PCM, A-law, μ-law и другие кодирования. Это объясняет старое обсуждение dBpoweramp Music Converter, где G.711 выбирался как WAV codec. Проверяйте внутренний codec_name.

Редактировать G.711 через цепочку MP3 → G.711 → MP3

Такой маршрут добавляет ненужные lossy-этапы. Для монтажа используйте PCM WAV, затем один финальный G.711-экспорт.

Применять настройки 8000 Hz Mono без проверки параметров записи

Для классического телефонного G.711 это основной профиль, но raw-файл сам по себе не доказывает параметры. Если данные получены из нестандартного SDK или контейнера, сначала проверьте настройки формирующего устройства и описание структуры потока.

Путать G.711 с G.729 или G.722

Это разные кодеки. G711.org показывает их в одном списке выходных форматов, что может создать впечатление взаимозаменяемости. Выбирайте ровно тот codec, который ожидает PBX. Команда или приложение для A-law/μ-law не декодирует G.729 только потому, что оба используются в телефонии.

Путать G.711 и G-code

G-code для ЧПУ не имеет отношения к аудиокодеку G.711, несмотря на похожее написание. Редакторы траекторий станка, конвертеры STL/GCODE и NC Viewer не нужны для работы с телефонным звуком.

Использовать CCTV-конвертер для самостоятельного raw

PVConverter применяет G.711-фильтр в контексте поддерживаемых видеозаписей. Он не заменяет raw decoder общего назначения. Сначала определите, что у вас: контейнер регистратора или отдельный аудиопоток.

Доверять старому codec pack вместо проверяемого инструмента

Исторические советы с Windows ACM зависели от установленных системных кодеков. На современном компьютере воспроизводимый CLI/GUI с явно заявленным A-law/μ-law надёжнее случайного набора фильтров.

Сравнение способов работы с G.711

ИнструментПлатформаПодтверждённый G.711-сценарийРедактированиеВыход G.711Главное ограничение
АудиоМАСТЕРWindowsРедактирование после декодирования в PCM WAVДа, визуальный монтаж и обработкаФинал выполняется отдельным G.711-инструментомВ этой схеме raw A-law/μ-law сначала переводится в PCM WAV
WavePadWindowsWAV с CCITT A-law/u-law, 8000 Hz MonoДаДа, A-law и u-law WAVДля raw всё равно нужны корректные входные параметры
G.711 ToolLegacy WindowsRaw A-law/u-law ↔ RIFF/WAVОграниченноДа, для форматов своей эпохиУстаревшая Windows-среда
dBpoweramp Music ConverterWindows, исторический сценарийСистемный WAV/ACM A-law в старой WindowsНет как основной редакторЗависел от системного codecНельзя считать современным воспроизводимым методом
PVConverterWindowsG.711a/G.711u в поддерживаемых CCTV-записяхНет аудиомонтажаФильтр при конвертации контейнераТолько определённые записи камер/регистраторов
AudacitymacOS и другие desktop ОСImport Raw Data, A-Law/U-Law; экспорт uncompressed/rawДаДа, A-Law/U-Law среди uncompressedRaw-параметры задаются вручную
Switch Audio File ConvertermacOSЧтение WAV aLaw/uLaw; перевод в PCMНет полноценного монтажаMac WAV: только auto/PCM/GSM; raw output поддерживается отдельноG.711 WAV output на Mac не заявлен
G711.orgОнлайнОбычный media input → A-law/μ-law/PCM WAV для телефонииНетДа50 MB и передача файла внешнему сервису
ConvertioОнлайнПоддерживаемый input → WAV с PCM A-Law/µ-Law G.711НетДаПроизвольный headerless raw input не заявлен
iziCut – Video Sound EditoriPhone/iPadАудиоконвертация с u-law/a-law outputЕсть аудиообработкаДаДля неизвестного headerless raw удобнее FFmpeg с явными параметрами
a-Shell miniiPhone/iPadЛокальный встроенный FFmpegЧерез CLI, без waveform GUIДа командами FFmpegНужно знать параметры и командный синтаксис
Neutron Audio RecorderAndroidЗапись WAV A-Law/U-LawDSP для записи, не полноценный монтаж файлаДа при записиНе предназначен для универсального импорта неизвестного raw
FFmpeg Media EncoderAndroidЛокальная обработка через FFmpegНет визуального монтажаДаКоманды и raw-параметры вводятся технически
FFmpegLinux и другие ОСRaw alaw/mulaw, WAV pcm_alaw/pcm_mulaw, проверка ffprobeФильтры/CLI, не waveform editorДа, raw и WAVДля headerless input нужны rate/channels/law
SoXLinux и другие ОСRaw A-law/u-law ↔ WAVCLI-обработкаДаНет графического интерфейса
MATLAB/Simulink G711 CodecИнженерная средаPCM↔A-law/μ-law и A-law↔μ-lawDSP-модельИндексы G.711, контейнер отдельноНе пользовательский файловый конвертер
escrichov/G711C/CLIЧетыре преобразования PCM/A-law/μ-lawНетДа на уровне samplesКонтейнер и метаданные реализуются отдельно
filon7/G711-PCM-ConvertCG.711 ↔ PCMНетДа на уровне библиотекиНужна интеграция в приложение

Таблица показывает, почему нельзя объявить один инструмент «лучшим для G.711» без сценария. АудиоМАСТЕР сильнее как редактор подготовленного PCM; WavePad — как GUI-экспорт телефонного WAV; Audacity — как ручной raw importer; FFmpeg и SoX — как воспроизводимая автоматизация; G711.org — как быстрый браузерный пресет; библиотеки — как строительные блоки программного продукта.

Как выбрать способ под конкретную задачу

Нужно отредактировать запись в Windows

Декодируйте G.711 в PCM WAV, откройте его в АудиоМАСТЕР, выполните монтаж, сохраните мастер PCM и только затем при необходимости кодируйте финальный A-law/μ-law через WavePad или FFmpeg. Это основной рекомендуемый workflow статьи.

Нужно получить готовый A-law/u-law WAV без командной строки

На Windows используйте WavePad: в Wave Encoder Options доступны CCITT A-law/u-law и параметры 8000 Hz Mono. Для разовой онлайн-задачи подойдёт G711.org.

Есть неизвестный raw-файл

Сначала получите law, sample rate и channels из оборудования или SDK. Затем используйте Audacity с Import Raw Data, FFmpeg с -f alaw/mulaw или SoX с -e a-law/u-law. Не начинайте с универсального online converter.

Нужно обработать сотни файлов

FFmpeg или SoX удобнее GUI: параметры фиксируются в команде, её можно запускать в цикле и отдельно проверять результаты через ffprobe. Перед batch-запуском проверьте 2–3 файла вручную.

Нужен файл для IVR/PBX

Сначала выясните требуемый law и профиль. Если система требует 8000 Hz Mono A-law/μ-law WAV, подготовьте речь в PCM, затем сделайте финальный delivery-файл WavePad, G711.org или FFmpeg. Храните PCM-мастер отдельно.

G.711 находится внутри записи камеры

Не извлекайте байты наугад. Откройте фирменный контейнер поддерживаемым converter/player, например PVConverter для соответствующих записей Polyvision. После нормализации контейнера работайте с аудиодорожкой.

Нужна работа на Mac без терминала

Для raw выберите Audacity. Для G.711-кодированного WAV, который нужно перевести в PCM, подходит Switch Audio File Converter. Не рассчитывайте на G.711 внутри WAV как Mac-output Switch Audio File Converter: для WAV на Mac заявлены auto, PCM и GSM.

Нужна обработка на телефоне

На iPhone/iPad iziCut подходит для графического u-law/a-law output, а a-Shell mini — для точной FFmpeg-команды. На Android Neutron Audio Recorder полезен для новой записи сразу в WAV A-Law/U-Law; для существующих файлов используйте FFmpeg Media Encoder.

G.711 нужен внутри собственного приложения

Используйте библиотечный или DSP-подход: MATLAB/Simulink для модели, escrichov/G711 или filon7/G711-PCM-Convert для C-проекта, libsndfile для контейнерного файлового слоя. Отдельно проектируйте RTP, WAV или другой transport/container.

FAQ

Можно ли определить A-law или μ-law только по расширению?

Иногда расширение подсказывает формат: .al обычно связывают с A-law, .ul — с μ-law. Но headerless файл не содержит надёжного самописания, а расширение можно переименовать. Для рабочего решения используйте параметры формирующей системы, WAV header, SIP/SDP или спецификацию SDK.

Почему G.711-файл открывается, но вместо речи слышен шум?

Наиболее частые причины — перепутаны A-law и μ-law, неверно задан sample rate, в raw присутствуют служебные заголовки или данные не являются чистым G.711. Если длительность правильная, а искажение сильное, первым делом переключите law только при наличии основания и сверяйте результат с параметрами записи.

Можно ли просто добавить WAV-заголовок к raw G.711?

Да, технически raw A-law/μ-law можно упаковать в корректный WAV без декодирования samples, если точно известны codec, sample rate, channels и размер данных. Практически проще поручить это FFmpeg, WavePad или библиотеке, которая корректно формирует RIFF chunks. Копировать произвольный 44-байтовый PCM-заголовок нельзя: format tag для G.711 отличается от обычного линейного PCM.

Что лучше для редактирования: A-law WAV или PCM WAV?

Для монтажного этапа удобнее линейный PCM WAV. Он широко поддерживается редакторами и позволяет хранить мастер без повторного G.711-кодирования между правками. A-law/μ-law создавайте как delivery-версию под телефонную систему.

Почему размер G.711 WAV немного больше raw?

Raw содержит только кодированные samples. WAV добавляет RIFF/format/data chunks и другие возможные служебные данные, поэтому общий размер немного увеличивается. Сам аудиопоток при одинаковой длительности и G.711-параметрах остаётся примерно тем же.

Почему PBX не принимает WAV, хотя компьютер его воспроизводит?

Desktop player обычно поддерживает намного больше вариантов WAV. PBX может требовать конкретный codec, 8000 Hz, Mono и определённый контейнер. Сначала проверьте codec_name, sample rate и channels, затем дополнительные ограничения PBX.

PCMA и A-law — одно и то же?

В контексте G.711/RTP PCMA обозначает G.711 A-law. PCMU — G.711 μ-law. В классическом RTP/AVP им соответствуют статические payload types 8 и 0.

Нужно ли выбирать 8 bit в редакторе для G.711?

G.711-кодированные значения имеют 8-битное представление, но монтажную PCM-копию не требуется искусственно хранить как 8-bit linear PCM. В рабочей цепочке удобно использовать 16-bit PCM для линейного WAV, а 8 bits Integer выбирать только при финальном CCITT A-law/u-law экспорте в WavePad.

Можно ли конвертировать A-law напрямую в μ-law?

Да. MATLAB/Simulink G711 Codec прямо имеет режимы Convert A-law to mu-law и Convert mu-law to A-law. В других системах это может выполняться через декодирование в PCM и обратное кодирование. Для монтажной задачи всё равно полезнее перейти в PCM, если между преобразованиями нужно менять сам звук.

Как понять, что raw-файл содержит два канала?

Сам raw-заголовка не имеет, поэтому надёжный ответ должен прийти из параметров системы, которая сформировала поток. Попытка импортировать как mono/stereo может подсказать ошибку по длительности и звучанию, но это диагностический эксперимент, а не способ восстановить отсутствующие метаданные. В телефонии G.711 чаще передаётся одним каналом на направление.

Что делать с G.711 из PCAP?

Сначала выделить правильный RTP-поток, определить PCMA/PCMU, убрать сетевые/RTP-заголовки и восстановить порядок payload. Затем raw можно декодировать как обычный A-law/μ-law. Если разговор двусторонний, два направления обычно нужно обработать и свести отдельно.

Подходит ли G711.org для конфиденциальных звонков?

Для чувствительных записей предпочтительнее локальная обработка, потому что online workflow требует загрузить файл внешнему сервису. FFmpeg, SoX, Audacity и WavePad работают локально и позволяют не передавать запись через браузерный конвертер.

Какой формат хранить в архиве проекта?

Если задача связана с редактированием, храните исходный G.711 без изменений и мастер PCM WAV после корректного декодирования/монтажа. Delivery A-law/μ-law можно воспроизвести из мастер-копии под требования конкретной PBX. Это облегчает повторную подготовку без накопления циклов преобразования.

Итог

Работа с G.711 начинается с определения формы данных. WAV с A-law/μ-law уже несёт параметры в заголовке; headerless raw требует известного law, частоты и каналов; RTP нужно сначала освободить от сетевой упаковки; CCTV-запись — открыть как контейнер. Для монтажа на Windows практичная схема — декодировать исходник в PCM WAV, отредактировать его в АудиоМАСТЕР, сохранить мастер и один раз получить финальный A-law/μ-law через WavePad или FFmpeg. На macOS raw удобно проверять в Audacity, в Linux и автоматизации — FFmpeg/SoX, а онлайн G711.org подходит для разовых телефонных пресетов. Главная проверка после любого способа — не расширение файла, а внутренний codec, sample rate, channels и воспроизведение в целевой системе.

Тип контента: 

Оставте свой отзыв о Что такое G.711 и как работать с A-law/μ-law: открытие, редактирование и конвертация raw/WAV на ПК, онлайн и смартфонах

CAPTCHA на основе изображений
Введите символы, которые показаны на картинке.