Как преобразовать wav-файл в mp3-файл, если у меня есть URL-адрес файла с использованием php?

У меня есть URL-адрес wav-файла http://xyz.com/recordings/employees/test.wav

Что я хочу знать, так это то, как я могу преобразовать этот файл в формат mp3 и сохранить его в определенном месте с помощью php-скрипта, потому что этот файл находится на каком-то другом сервере?

Я знаю о ffmpeg, но не уверен, будет ли он работать.


person Pankaj Khurana    schedule 05.07.2011    source источник
comment
спасибо cweiske за ответ, не могли бы вы сообщить мне код, указанный на wiki.dreamhost.com/Php-ffmpeg будет работать на моем веб-хостинге (hostgator), так как это общий хостинг, я должен попросить их об установке?   -  person Pankaj Khurana    schedule 05.07.2011


Ответы (3)


Надеюсь у вас линукс:

exec('wget http://xyz.com/recordings/employees/test.wav');
exec('ffmpeg -i test.wav test.mp3');
exec('mv test.mp3 /youlocation/test.mp3');
person TheHorse    schedule 05.07.2011
comment
спасибо thehorse за ответ нужно подтверждение от хостинг-провайдера? - person Pankaj Khurana; 05.07.2011
comment
если вы используете хостинг без root-доступа, вам необходимо убедиться, что у вашего хостера есть ffmpeg. - person TheHorse; 05.07.2011
comment
Я разговаривал с хостинг-провайдером, мне нужно обновить свою учетную запись, чтобы выполнить команду. Не могли бы вы предложить, есть ли для него какая-либо другая библиотека, которая не требует доступа к командной строке. - person Pankaj Khurana; 05.07.2011
comment
я думаю такой библиотеки нет - person TheHorse; 05.07.2011
comment
ffmpeg имеет открытый исходный код, и его можно создавать/распространять без необходимости «устанавливать» пакет от вашего хостинг-провайдера, если это проблема. Доступны даже статические сборки, если у вас нет доступа к компиляторам... ffmpeg.org/download. html - person g19fanatic; 30.08.2017

Обычно это не проблема, вы можете загрузить этот файл на свой веб-сервер во временную папку. Чем вы должны преобразовать его. Есть, например. расширение ffmpeg для php, но не поставляется с дистрибутивом php.

Но даже если у вас этого нет, вы можете вызвать командную строку, например, в оболочке Linux.

ffmpeg -i /sometmpfolder/tmp.wav destination.mp3
person fyr    schedule 05.07.2011
comment
спасибо fyr за ответ, так как у меня виртуальный хостинг, я думаю, что должен подтвердить от них, могу ли я вызвать командную строку или нет? - person Pankaj Khurana; 05.07.2011
comment
да, это один из вариантов, другой - проверить, установлено ли/настроено ли у вас расширение через phpinfo() - person fyr; 05.07.2011
comment
мне нужно обновить свою учетную запись, чтобы выполнять эти команды. не могли бы вы предложить любую другую библиотеку, которая не требует доступа к командной строке. - person Pankaj Khurana; 05.07.2011

Я нашел API, который выполняет этот процесс преобразования. Ссылка для этого: Api для конверсии.

person Pankaj Khurana    schedule 11.07.2011