Сохранить аудио файл в чанке из исходного файла

Я на самом деле хочу демо-версию для аудио файла. Я загрузил аудио файл в формате mp3 на сервер с помощью php скрипта. Я хочу, чтобы он работал в течение 30 секунд в демонстрационном режиме и для зарегистрированного пользователя он воспроизводил весь файл.

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

Пожалуйста, помогите мне решить эту проблему.

1 ответ

Вы не можете вырезать MP3 (надежно) только на кадрах. Существует нечто, называемое "резервуар битов", где в основном кадры могут полагаться на другие кадры. Большинство кадров будет использовать эту функцию. Если вы порежете кадр, у вас, несомненно, будет поврежденный файл, и в вашем клипе будет несколько артефактов.

Чтобы сделать то, что вы просите, у вас есть два варианта:

  1. Разобрать данные MP3 и вырезать только на кадрах, не используя битовый резервуар
  2. Напишите кодировщик, который может вырезать любой кадр и исправить битовый резервуар так, чтобы предыдущий и последний кадры не были нужны.

Ни один из этих вариантов не подходит. Позвоните на ваш веб-хостинг, установите FFMPEG. Если они не сделают это для вас, найдите нового хостинг-провайдера. Не трать свое время ни на что другое.

Другие вопросы по тегам