Как создать веб-сервис, который будет извлекать аудио из видео?
Всем доброго времени суток!
Появилась идея создания веб-сервиса, вырезающего аудио из видео и отправляющего аудио куда-нибудь как-нибудь.
Куда - пока не решено. Или ссылку на скачивание аудио или иным способом.
Вопрос именно по созданию самого сервиса.
У меня, к сожалению, нет вообще представлений о вебе, ибо мое направление - десктопный софт (ну вы поняли).
Знаю лишь, что при создании сайта нужно купить адрес у регистратора и хранилище у хостера под его исходный код и прочее "тело".
Нагуглил комплекс ПО для вырезки аудио - ffmpeg. На видео - работают с ними через командную строку.
Но речь-то о сервисе для пользователей, никто вручную не будет с консолью работать.
Примерный принцип работы сервиса :
1. На входе получаем :
-URL на видео
-логин пользователя
-его геолокацию
2. Начинаем обрабатывать URL :
-При обнаружении видео по URL (сраниваем с шаблоными ссылками соц. сетей и др сервисов на наличие видео) конвертируем видео в аудио.
-Конвертация происходит без загрузки видео и его полного кэширования.
-Отправляем аудио по мере его обработки сервисом.
3. На выходе :
-Название (можно скопировать название видео, все равно)
-Изображение
-Потоковое аудио
Надеюсь удалось дать представление о сервисе.
Боюсь начать изобретать велосипед, поэтому сразу интересуюсь у знающих)
Я также знаю, что уже существуют аналогичные сервисы (н-р savefrom), но свой нужно создать свой и с чуть иным функционалом.
Главная проблема - с чего начать? Можете подсказать как лучше все это организовать, какое ПО может пригодиться?
Если лучше ffmpeg-а нет, то как сервер должен сам работать с консолью, с помощью какого ПО машина должна получать ссылку,
получать аудио из ffmpeg-а(в т.ч. и запуская его перед этим) и отправлять пользователю? Не самому же пилить новый софт ;)
Буду рад и признателен любым подсказкам.
Гуглить умею, мне бы хотя бы путь показать.
Спасибо!
Нужена будет как минимум точка входа, апи или форма, парсер - наверное самое сложное, так как ссылок прямых не будет, скорее всего какая то авторизация, сервер с большой кучей памяти, хотя лучше жёсткий диск больше и качать на носитель. Думаю такое сделать за день можно.
Если вам нужно быстро забацать прототип, советую обратить внимание на GCP или аналоги.
Куча отличной документации и ворох примеров, всю инфрастуктуру сможете собрать за день, останется подкрутить ffmpeg либы и написать логику которую вы хотите.
Мира Рузвельт, да, app engine позволит Вам писать на подходящем языке/фреймворке. Я например использую java и spring framework. Но у них есть масса шаблонов для других вариантов
Главная проблема - с чего начать? Можете подсказать как лучше все это организовать, какое ПО может пригодиться?
Ну вообще, на мой взгляд всё просто.
Пишем простенький интерфейс, который позволит выбрать файл с видео и загрузить на сервер (хватит даже PHP), на сервере с помощью ffmpeg вытаскиваем звук и отправляем обратно пользователю.
Свистоперделки можно прикрутить уже позже.
Вы не правильно поняли)
Это не сайт должен быть. Пользователь не должен задумываться куда отправляет ссылку.
Что-то вроде сервера должно быть, которое самое принимает данные, обрабатывает и возвращает.
Интерфейс тут не нужен, с ним пользователи не будут самостоятельно взаимодействовать
Иван Шумов, ааа
Давайте без лишней воды, пж.
Если что-то непонятно - спросите прямо.
Пользователи с сервисом самостоятельно не будут взаимодействовать. Пока не решено как, но точно через "посредника".
Ну а дальше?
На какой машине лучше поставить это?
Набросать код скорее смогу, а кто будет все двигать?
Надо определить видео по ссылке, вырезать аудио и отправить (пока не решено как) обратно пользователю
Мира Рузвельт, так качать контент будет сервер, находящийся в определенной стране, независимой от пользователя? :) или "не отдавать" пользователю контент, если ему страна не разрешает
Первая задача, которую вам придется решить и это не просто в общем случае - это извлечение видео из вебсайта, а судя по всему (раз речь про блокировку по стране, значит у вас что то типа vimeo или youtube) вы именно от туда хотите брать видео. Самая большая проблема - это борьба сайта-источника с качальщиками видео, они часто меняют формат страницы чтобы ваш код перестал работать.
И уже потом по полученному видео вы можете извлекать с помощью ffmpeg звуковую дорожку.
p.s. на youtube можно вытаскивать звуковую дорожку отдельным потоком, посмотрите приложение youtube-dl, они очень хорошо отслеживают изменения, кстати умеют работать не только с ними.
ffmpeg консольная утлита, вы скорее всего смотрели на что то типа youtube-dl-gui, оно само скачивает нужную версию ffmpeg, само загружает видео, конвертирует и т.п.
p.s. некоторые сайты видеохостинга позволяют получить ссылку на файл плейлист в формате .m3u8 (это список кусочков видео), эту ссылку можно скормить ffmpeg и он ее примет, полагаю точно так же он примет прямые ссылки на видео ftp/http (без html страницы)
youtube и другие крупные видеохостинги делают все, чтобы получить эту ссылку было сложно
Иван Шумов, Программирование мое хобби, если и пишу - под Windows, тянет в геймдев.
Учить веб чисто для себя - не вижу смысла, к нему не тянет, зря время тратить.
Но для реализации текущей задачи все равно придется что-то изучить из веба - только за разумеется