Сохранить аудио файл в чанке из исходного файла
Я на самом деле хочу демо-версию для аудио файла. Я загрузил аудио файл в формате mp3 на сервер с помощью php скрипта. Я хочу, чтобы он работал в течение 30 секунд в демонстрационном режиме и для зарегистрированного пользователя он воспроизводил весь файл.
Существует решение, использующее библиотеку ffmpeg при загрузке разделенного файла в кадрах и сохранение одного для демонстрации и одного для оригинала. Но мне нужно другое решение, потому что ffmpeg недоступен на общем сервере.
Пожалуйста, помогите мне решить эту проблему.
1 ответ
Вы не можете вырезать MP3 (надежно) только на кадрах. Существует нечто, называемое "резервуар битов", где в основном кадры могут полагаться на другие кадры. Большинство кадров будет использовать эту функцию. Если вы порежете кадр, у вас, несомненно, будет поврежденный файл, и в вашем клипе будет несколько артефактов.
Чтобы сделать то, что вы просите, у вас есть два варианта:
- Разобрать данные MP3 и вырезать только на кадрах, не используя битовый резервуар
- Напишите кодировщик, который может вырезать любой кадр и исправить битовый резервуар так, чтобы предыдущий и последний кадры не были нужны.
Ни один из этих вариантов не подходит. Позвоните на ваш веб-хостинг, установите FFMPEG. Если они не сделают это для вас, найдите нового хостинг-провайдера. Не трать свое время ни на что другое.