Bug 47350 - В справочном выводе некорректный пример запуска fs_encode с форматом SPEEX (spx), нет модуля mod_speex
Summary: В справочном выводе некорректный пример запуска fs_encode с форматом SPEEX (s...
Status: CLOSED NOTABUG
Alias: None
Product: Sisyphus
Classification: Development
Component: freeswitch-daemon (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-08-25 14:25 MSK by Artem Varaksa
Modified: 2023-08-28 14:53 MSK (History)
11 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Artem Varaksa 2023-08-25 14:25:11 MSK
Шаги для воспроизведения
========================

1. # touch input.gsm (настоящий файл не обязателен)
2. # fs_encode input.gsm output.SPEEX
(запускается от имени root из-за https://bugzilla.altlinux.org/47334)

Фактический результат
=====================

Вывод:

> Couldn't open output.SPEEX

Ожидаемый результат
===================

В справке отображается пример с SPEEX, поэтому либо он должен поддерживаться, либо пример должен быть другой:

> # fs_encode
> Usage: fs_encode [options] input output
> 
> The output must end in the format, e.g., myfile.SPEEX
> [...]

Возможно, что пример должен быть таким:

# fs_encode -v input.gsm output.spx -f SPEEX

Но он, похоже, не (полностью) поддерживается:

> # fs_encode -v input.flac output.spx -f SPEEX | grep -E 'spx|SPEEX'
> [...] [CONSOLE] switch_loadable_module.c:1772 Successfully Loaded [CORE_SPEEX_MODULE]
> [...] [NOTICE] switch_loadable_module.c:223 Adding Codec SPEEX 99 Speex 32000hz 20ms 1ch 44000bps
> [...] [NOTICE] switch_loadable_module.c:223 Adding Codec SPEEX 99 Speex 16000hz 20ms 1ch 42200bps
> [...] [NOTICE] switch_loadable_module.c:223 Adding Codec SPEEX 99 Speex 8000hz 20ms 1ch 24600bps
> Opening file input.flac
> Opening file output.spx
> Couldn't initialize codec for spx@8000h@20i
> [...] [ERR] switch_core_codec.c:670 Invalid codec spx!

Воспроизводимость
=================

Воспроизводится на виртуальных машинах:

[p10] server-10.1-x86-64
freeswitch-daemon-1.10.9-alt1.x86_64

[sisyphus] server-10.1-x86-64
freeswitch-daemon-1.10.10-alt1.x86_64
Comment 1 Artem Varaksa 2023-08-28 14:47:58 MSK
Согласно примеру в:

https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Modules/mod_native_file_6587161#script-to-convert-a-sound-file-to-specific-formats-to-avoid-transcoding

Команда должна использоваться следующим образом:

> # fs_encode -l mod_speex input.gsm output.SPEEX

Но при этом происходит ошибка:

> [NOTICE] switch_loadable_module.c:301 Adding Timer 'soft'
> [CRIT] switch_loadable_module.c:1754 Error Loading module /usr/lib64/freeswitch/mod_speex.so
> **/usr/lib64/freeswitch/mod_speex.so: cannot open shared object file: No such file or directory**
> Cannot init mod_speex [module load file routine returned an error]
> [WARNING] switch_core_codec.c:932 Codec is not initialized!
> [WARNING] switch_core_codec.c:932 Codec is not initialized!

Вероятно, что основная проблема - в отсутствии модуля (нет ни в одном пакете согласно https://beta.packages.altlinux.org/ru/sisyphus/files/?q=%2Fusr%2Flib64%2Ffreeswitch%2Fmod_speex.so).

Может быть, что он загрузится автоматически, если будет присутствовать. Если нет, то возможно следует улучшить и пример, указав на необходимость ручного указания необходимого модуля.
Comment 2 Anton Farygin 2023-08-28 14:53:20 MSK
speex пока не планируется поддерживать в пакете.