В этой статье подробно описано, как создать видеостикер для Telegram. видеостикеры основаны на .WEBM формате, который совместим со множеством графических редакторов для создания изображений с высокой детализацией. Поддержка такого вида стикеров начинается с версии Telegram 8.5 и выше.
Для того, чтобы @Stickers принял Ваш стикер, он должен соответствовать некоторым стандартам, которые были описаны Telegram здесь. Там же Вы найдёте и другую информацию, связанную со стикерами в целом.
Немного о стандарте, который требует Telegram:
- Одна из сторон видео должна быть строго 512 пикселей — другая же сторона может быть и меньше.
- Длительность видео не должна привышать 3-х секунд.
- Количество кадров в секунду не должно привышать отметку в 30 FPS.
- Лучше использовать зацикленное видео.
- Размер видео не должен привышать 256 КБ.
- Видео должно быть в формате .WEBM, с использованием VP9 кодека.
- Видео не должно содержать аудиодорожку.
Итак, на данный момент существует несколько способов создания видеофайла такого формата. Здесь я опишу только те способы, который известны лично мне. Если Вы знаете какой-то ещё, дополняйте эту статью через PR.
(Далее перевод этой страницы)
Для корректной работы Adobe Media Encoder, требуется установить плагин для поддержки кодирования видео в формате .WEBM. Модифицированная версия плагина от fnord software поможет Вам в кодировании Ваших видеостикеров с помощью Media Encoder.
-
Windows WEBM плагин
Установочный путь
C:\Program Files\Adobe\Common\Plug-ins\7.0\MediaCore
-
macOS WEBM плагин (M1 и Intel)
Установочный путь
~/Library/Application Support/Adobe/Common/Plug-ins/7.0/MediaCore
После установки плагина, формат .WEBM появится в списке форматов во вкладке "Очередь".
На macOS, Вам возможно потребуется открыть Настройки > Защита и безопасность, чтобы подтвердить установку.
Handbrake — это приложение, которое может конвертировать Ваш видеофайл в другой формат.
После установки (Windows) импортируйте Ваш видеофайл следуя инструкциям. Обрежьте видео до 3-ех секунд и поставьте VP9 кодек. Если Ваше видео не соответствует размеру 512 на 512 пикселей, то Вам следует сначала его обрезать. Более подробный гайд по этой программе будет чуть позже.
FFmpeg — это утилита, с помощью которой можно легко конвертировать аудио- и видеофайлы в нужный Вам формат. Вообще, эта утилита может много чего, но нам не понадобиться весь её спектр возможностей.
Открываем эту ссылку и скачиваем нужную Вам версию. В моём случае — версия для Windows (далее всё будет про установку на Windows. Если у Вас macOS или другая операционная система, и Вы можете составить установочный гайд — прошу во вкладку для PR).
В открывшемся окне выбираем ссылку, которая показана на скриншоте ниже (должна содержать full
).
Далее загруженный архив распаковываем в папку, даём ей имя FFmpeg, чтобы не запутаться. Переносим эту папку в корень диска C (или любой другой литерал, диск должен быть тот, на который Вы устанавливали Windows).
Затем открываем поиск (кнопка Windows + S) и вводим Изменение системных переменных среды
.
В открывшемся окне нажимаем на кнопку Переменные среды
.
Находим переменную path
, жмём на неё и изменяем.
В пустой ячейке вписываем путь к FFmpeg. Не забываем указать, что путь должен быть к папке bin внутри FFmpeg.
Сохраняем всё и прожимаем "Ок".
Далее проверяем, корректно ли мы всё сделали. Открываем командную строку (кнопка Windows + R
, вписываем cmd
, жмём ОК
). Пишем следующую команду: ffmpeg -version
. Если ответ похож на тот, что показан ниже — Вы сделали всё правильно.
А как конвертировать то в .WEBM? Ниже список команд с их описанием. Всё что Вам нужно — это путь к Вашему исходному файлу. Т. е. например, у меня есть видеофайл под названием input.mp4 на рабочем столе и я хочу конвертировать его в WEBM. Команды основаны на этом случае, поэтому там везде как входной файл указан input.mp4 (у Вас это может быть и C:/Users/User/.../input.mp4 и т. д.). И ещё, так как я перешёл в папку рабочего стола, я не пишу полный путь до файла. Чтобы перейти в папку рабочего стола через терминал, введите следующую команду cd Desktop
.
- Обрезает картинку до минимально возможного квадрата 512 на 512 пикселей.
ffmpeg -i input.mp4 -c:v libvpx-vp9 -pix_fmt yuva420p -b:a 256k -c:a libopus -t 2.99 -vf crop=w='min(iw\,ih)':h='min(iw\,ih)',scale=512:512,setsar=1 -an output.webm
- Полностью помещает картинку в масштабе 512 на 512 пикселей.
ffmpeg -i input.mp4 -c:v libvpx-vp9 -pix_fmt yuva420p -b:a 256k -c:a libopus -t 2.99 -vf scale=512:512:force_original_aspect_ratio=decrease -an output.webm
- Сжимает картинку в масштабе 512 на 512 пикселей.
ffmpeg -i input.mp4 -c:v libvpx-vp9 -pix_fmt yuva420p -b:a 256k -c:a libopus -t 2.99 -vf scale=512:512,setsar=1 -an output.webm
Результат будет сохранён в той директории, в которой Вы находитесь в терминале (если, конечно, Вы ручками сами не впишите путь до output.webm).
Есть и более простой способ, однако не всегда он является самым лучшим. Работа ffmpeg довольно требовательная вещь, поэтому у большинства ботов есть лимиты в использовании, да и не все они будут Вам моментально отвечать из-за высокого спроса. В любом случае, попробовать можете.
Вот список ботов, которых я знаю и пробовал на данный момент:
- @toWebmBot — мой бот, конвертирует Ваше видео в видеостикер и автоматически создаёт стикер-пак, добавляя его туда.
- @fStikBot — многофункциональный бот, также умеет конвертировать в видеостикер. Больше опций по управлению Вашими стикер-паками.
- @converterSticker_bot — конвертирует Ваше видео в файл .WEBM
- @VideoToStickerBot — также создаёт стикер пак. Есть возможность выбрать начало и конец Вашего видеостикера, если Вы используете длинное видео.
- @AnimatedStickersRoBot — конвертирует в видеостикер, создаёт стикер-пак.
- @VideoStickerXBot — конвертирует в видеостикер, создаёт стикер-пак, есть возможность извлечь .WEBM в виде документа.
Если Вам всё-таки удалось конвертировать нужный видеофайл в .WEBM со всеми обязательными параметрами, или же у Вас уже был таковой файл, Вам нужно создать набор стикеров. Для этого запустите официального бота @Stickers и отправьте ему команду /newvideo
. Далее проследуйте инструкциям, которые Вам будет присылать бот. По-сути, Вам просто нужно будет дать название набору, его короткую ссылку, добавить туда нужные .WEBM файлы и сохранить.
Статья будет пополняться. Если Вы хотите помочь — создавайте PR с Вашими дополнениями. Если хотите добавить бота в список — также создавайте PR. Для связи со мной — @vychs.