2015-11-03 2 views
0

Я пытаюсь использовать Sox lib для смешивания (конкатенации) двух звуковых файлов в PHP. Я могу сделать это на MacOS с командной строкой;Использование SoX в Linux с PHP

./sox -m sound1.wav sound2.wav output.wav 

Я также пробовал это на своем веб-сервере. Я загрузил сжатый файл с официальной страницы Sox sox-14.2.2.tar.gz и извлек их на свой сервер. Но есть много файлов, это не похоже на MacOS. Я думал, что файл sox.1 может быть выполнен, и попробовал что-то вроде;

echo exec('./sox.1 -m sound1.wav sound2.wav output.wav'); 

Но он просто возвращает текст в строке 108. Я думаю, что это не выполнимо. Я застрял здесь прямо сейчас. Мне нужно объединить 2 звуковых файла в PHP.

Если есть какой-либо способ, пожалуйста, дайте мне знать?

+0

Параметр '.gz' файл, который вы загрузили только исходный код SoX. Файл 'sox.1' не будет делать то, что вы хотите - это текстовый файл, содержащий страницу' man' (документация) для SoX. Чтобы заставить SoX работать на вашем сервере, вам нужно будет скомпилировать исходный код на вашем сервере, создав тем самым исполняемый файл. –

ответ

0

Вы загрузили исходный код, но теперь его нужно создать, установите &, прежде чем вы сможете использовать sox на своем веб-сервере.

tar -xvf sox-14.2.2.tar.gz 

Это будет извлечь его, внутри выделенной папки вы должны запустить ./configure, а затем make затем make install. На этом этапе будут показаны любые отпечатки или абзацы. После того, как все установлено, вы можете использовать sox на своем веб-сервере, как и на своем Mac. Таким образом, вы должны были бы что-то вроде

echo exec('sox -m sound1.wav sound2.wav output.wav');