Объединение / объединение MP3 на сервере с использованием PHP - PullRequest
5 голосов
/ 29 января 2010

У меня есть сайт, на котором будут размещаться небольшие MP3-файлы.

Я хочу создать утилиту, которая позволит мне объединять mp3-файлы вместе, чтобы создать один MP3-файл.

Я немного новичок в PHP, но не новичок в программировании.

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

function appendMP3(originalMP3, newChunk){
   originalMP3 = originalMP3 + newChunk;
   return newMP3
}

compilation = append(compilaton, "sound.mp3");

С чего мне начать? Существуют ли какие-либо ресурсы?

Ответы [ 4 ]

2 голосов
/ 29 января 2010

Если вы можете получить доступ к оболочке изнутри PHP в вашей среде, я бы просто вызвал оболочку (с оператором backtick ) и использовал бы SoX .

1 голос
/ 29 января 2010

Не уверен, насколько хорошо это будет работать, но этот блог о слиянии mp3 с php может вам помочь.

Кроме того, в зависимости от того, на каком сервере он находится, вы можете иметь доступ к таким инструментам, как sox , используя системные вызовы ().

0 голосов
/ 17 апреля 2012

Существует библиотека с именем getID3 . Он имеет возможность объединить несколько файлов MP3 в один, хотя я никогда не использовал эту функцию. Демоверсия доступна на сайте Source Forge getID3 здесь http://getid3.sourceforge.net/source/demo.joinmp3.phps. Похоже, она работает без использования системных вызовов командной строки.

Я использовал эту библиотеку для получения длин и других данных из различных медиаформатов. Оно работало завораживающе. Однако, как я уже сказал, я не тестировал функцию CombineMultipleMP3sTo () в ней ...

Вы должны проверить это, как если бы оно работало для вас, это было бы намного более простым вариантом, чем LAME (это мощный, но довольно сложный в использовании, на мой взгляд).

0 голосов
/ 29 января 2010

Я бы посоветовал взглянуть на функцию PHP fopen . Если объединение двух файлов MP3 так же просто, как объединение битов, то вы должны иметь возможность использовать fopen (не забывайте флаг "b" для двоичного файла) и fwrite для чтения данных из одного файл и добавить его к другому.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...