Конвертация записи звонка в mp3

По умолчанию, Asterisk сохраняет записи звонков в формате WAV. Это объёмный формат, поэтому для экономии места на диске, Itgrix предлагает конвертировать записи в формат mp3, что ранее делалось через кастомизацию.

Начиная с версии 3.13.0, конвертация записей в mp3 добавлена в основной функционал коннектора Itgrix.

(скрин блока настроек конвертации в админке)

При обновлении на версию 3.13.0 и выше, чтобы начал работать новый способ конвертации, нужно не только включить его в админке, но и отключить старый способ. При новой установке включена конвертация новым способом, а не через кастомизацию.

Проще всего это сделать через админку: отключить кастомизацию пути до файла записи звонка на странице "Модуль". Если у вас настроены другие действия в этой кастомизации, помимо конвертации в mp3, то нужно закомментировать блок кода, который выполняет конвертацию.

Программа конвертер

Старый способ конвертации использовал программу lame, которая должна была быть отдельно установлена на сервере. Новый способ использует по умолчанию поставляемую вместе с Itgrix компактную сборку ffmpeg с функционалом только для работы с аудио файлами. Это более гибкое проложение, поддерживающее множество форматов и фильтров, и его не нужно устанавливать отдельно. Настройки в админке позволяют выбрать любую другую программу, в том числе lame или установленную в системе полную версию ffmpeg.

Для выбора программы конвертации нужно указать команду её запуска в поле "Путь до конвертера записей", по умолчанию /opt/itgrix_bx/ffmpeg/ffmpeg. Можно указать команду без полного пути, тогда будет использоваться программа из системы в соответствии с переменной окружения PATH.

Параметры запуска программы конвертера тоже свободно настраиваются через поле "Аргументы команды конвертации записей". В этом поле используются две переменные: #IN# и #OUT# - пути до входного файла (wav) и выходного файла (mp3).

Аргументы по умолчанию для ffmpeg такие: -loglevel error -i #IN# -f mp3 -codec:a libmp3lame -compression_level 2 -b:a 192k #OUT#

Они означают следующее:

  • -loglevel error - выводить только ошибки

  • -i #IN# - путь до wav файла

  • -f mp3 - конвертация в формат mp3

  • -codec:a libmp3lame - использовать аудио кодек "libmp3lame"

  • -compression_level 2 - уровень сжатия 2

  • -b:a 192k - аудио битрейт 192 килобит в секунду

Документацию по параметрам ffmpeg можно найти на официальном сайте.

Время работы программы конвертера ограничено таймаутом, по умолчанию 30 секунд.

Кастомизируемость

Старая кастомизация пути до файла записи звонка (process_record_file_path) по-прежнему может использоваться для изменения пути к входному (wav) файлу, но теперь добавлена новая кастомизация параметров конвертации записи (customize_record_conversion). Она позволяет менять все параметры конвертации:

  • IN - путь до входного файла (wav)

  • OUT - путь до выходного файла (mp3)

  • recording_converter_path - программа конвертер

  • recording_converter_args - аргументы запуска программы конвертера

  • recording_converter_timeout_msec - таймаут работы программы конвертера

  • overwrite_cdr_recordingfile - опция обновления пути до записи в таблице CDR Asterisk

  • initial_cdr_recordingfile - значение пути до записи в таблице CDR Asterisk, которое будет заменено на новое

  • updated_cdr_recordingfile - новое значение пути до записи в таблице CDR Asterisk

  • delete_original_recordings - опция удаления исходного (wav) файла

Last updated

Was this helpful?