/telegram-video-stickers

✈️ Подробный гайд о том, как создать видеостикер в Telegram.

MIT LicenseMIT

Видеостикеры Telegram

preview

Навигация

Вступление

В этой статье подробно описано, как создать видеостикер для Telegram. видеостикеры основаны на .WEBM формате, который совместим со множеством графических редакторов для создания изображений с высокой детализацией. Поддержка такого вида стикеров начинается с версии Telegram 8.5 и выше.

Требования

Для того, чтобы @Stickers принял Ваш стикер, он должен соответствовать некоторым стандартам, которые были описаны Telegram здесь. Там же Вы найдёте и другую информацию, связанную со стикерами в целом.

Немного о стандарте, который требует Telegram:

  • Одна из сторон видео должна быть строго 512 пикселей — другая же сторона может быть и меньше.
  • Длительность видео не должна привышать 3-х секунд.
  • Количество кадров в секунду не должно привышать отметку в 30 FPS.
  • Лучше использовать зацикленное видео.
  • Размер видео не должен привышать 256 КБ.
  • Видео должно быть в формате .WEBM, с использованием VP9 кодека.
  • Видео не должно содержать аудиодорожку.

Создание .WEBM видеофайла

Итак, на данный момент существует несколько способов создания видеофайла такого формата. Здесь я опишу только те способы, который известны лично мне. Если Вы знаете какой-то ещё, дополняйте эту статью через PR.

Adobe Media Encoder

(Далее перевод этой страницы)

Для корректной работы Adobe Media Encoder, требуется установить плагин для поддержки кодирования видео в формате .WEBM. Модифицированная версия плагина от fnord software поможет Вам в кодировании Ваших видеостикеров с помощью Media Encoder.

После установки плагина, формат .WEBM появится в списке форматов во вкладке "Очередь".

На macOS, Вам возможно потребуется открыть Настройки > Защита и безопасность, чтобы подтвердить установку.

Handbrake

Handbrake — это приложение, которое может конвертировать Ваш видеофайл в другой формат.

После установки (Windows) импортируйте Ваш видеофайл следуя инструкциям. Обрежьте видео до 3-ех секунд и поставьте VP9 кодек. Если Ваше видео не соответствует размеру 512 на 512 пикселей, то Вам следует сначала его обрезать. Более подробный гайд по этой программе будет чуть позже.

FFmpeg

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

Установка.

Открываем эту ссылку и скачиваем нужную Вам версию. В моём случае — версия для Windows (далее всё будет про установку на Windows. Если у Вас macOS или другая операционная система, и Вы можете составить установочный гайд — прошу во вкладку для PR).

Открыть скриншот ffmpeg

В открывшемся окне выбираем ссылку, которая показана на скриншоте ниже (должна содержать full).

Открыть скриншот ffmpeg

Далее загруженный архив распаковываем в папку, даём ей имя FFmpeg, чтобы не запутаться. Переносим эту папку в корень диска C (или любой другой литерал, диск должен быть тот, на который Вы устанавливали Windows).

Открыть скриншот ffmpeg

Затем открываем поиск (кнопка Windows + S) и вводим Изменение системных переменных среды.

Открыть скриншот ffmpeg

В открывшемся окне нажимаем на кнопку Переменные среды.

Открыть скриншот ffmpeg

Находим переменную path, жмём на неё и изменяем.

Открыть скриншот ffmpeg

В пустой ячейке вписываем путь к FFmpeg. Не забываем указать, что путь должен быть к папке bin внутри FFmpeg.

Открыть скриншот ffmpeg

Сохраняем всё и прожимаем "Ок".

Далее проверяем, корректно ли мы всё сделали. Открываем командную строку (кнопка Windows + R, вписываем cmd, жмём ОК). Пишем следующую команду: ffmpeg -version. Если ответ похож на тот, что показан ниже — Вы сделали всё правильно.

Открыть скриншот ffmpeg

Команды.

А как конвертировать то в .WEBM? Ниже список команд с их описанием. Всё что Вам нужно — это путь к Вашему исходному файлу. Т. е. например, у меня есть видеофайл под названием input.mp4 на рабочем столе и я хочу конвертировать его в WEBM. Команды основаны на этом случае, поэтому там везде как входной файл указан input.mp4 (у Вас это может быть и C:/Users/User/.../input.mp4 и т. д.). И ещё, так как я перешёл в папку рабочего стола, я не пишу полный путь до файла. Чтобы перейти в папку рабочего стола через терминал, введите следующую команду cd Desktop.

  1. Обрезает картинку до минимально возможного квадрата 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
Открыть скриншот ffmpeg

ffmpeg
  1. Полностью помещает картинку в масштабе 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
ffmpeg
  1. Сжимает картинку в масштабе 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
ffmpeg

Результат будет сохранён в той директории, в которой Вы находитесь в терминале (если, конечно, Вы ручками сами не впишите путь до output.webm).

Telegram боты

Есть и более простой способ, однако не всегда он является самым лучшим. Работа ffmpeg довольно требовательная вещь, поэтому у большинства ботов есть лимиты в использовании, да и не все они будут Вам моментально отвечать из-за высокого спроса. В любом случае, попробовать можете.

Вот список ботов, которых я знаю и пробовал на данный момент:

  • @toWebmBot — мой бот, конвертирует Ваше видео в видеостикер и автоматически создаёт стикер-пак, добавляя его туда.
  • @fStikBot — многофункциональный бот, также умеет конвертировать в видеостикер. Больше опций по управлению Вашими стикер-паками.
  • @converterSticker_bot — конвертирует Ваше видео в файл .WEBM
  • @VideoToStickerBot — также создаёт стикер пак. Есть возможность выбрать начало и конец Вашего видеостикера, если Вы используете длинное видео.
  • @AnimatedStickersRoBot — конвертирует в видеостикер, создаёт стикер-пак.
  • @VideoStickerXBot — конвертирует в видеостикер, создаёт стикер-пак, есть возможность извлечь .WEBM в виде документа.

Создание набора видеостикеров

Если Вам всё-таки удалось конвертировать нужный видеофайл в .WEBM со всеми обязательными параметрами, или же у Вас уже был таковой файл, Вам нужно создать набор стикеров. Для этого запустите официального бота @Stickers и отправьте ему команду /newvideo. Далее проследуйте инструкциям, которые Вам будет присылать бот. По-сути, Вам просто нужно будет дать название набору, его короткую ссылку, добавить туда нужные .WEBM файлы и сохранить.

stickers-bot

Заключение

Статья будет пополняться. Если Вы хотите помочь — создавайте PR с Вашими дополнениями. Если хотите добавить бота в список — также создавайте PR. Для связи со мной — @vychs.