/tgs-to-gif

Converts animated Telegram stickers (*.tgs) to animated GIFs (.gif)

Primary LanguageJavaScriptMIT LicenseMIT

Animated stickers for Telegram (*.tgs) to animated GIFs converter CircleCI

This is a modified version to make it an NPM module and use it for my own purposes. There is a better implementation from the upstream, written in C++. check it out. The following README is sourced from the upstream.


To easily convert stickers to GIFs you can use Telegram Bot

👉 https://t.me/tgstogifbot 👈


This is old version of converter written in JavaScript. It uses puppeteer and chromium, so this one works slower. Use can find C++ version in master branch.

Using Docker

  1. Build the image:

    docker build -t tgs-to-gif .
  2. Convert! Pass directory with stickers and run:

    docker run --rm -v <path to directory with stickers>:/source tgs-to-gif

The result will be saved next to each source sticker file in the same directory.

Using nodejs and gifski

Install

  1. Install nodejs.
  2. Install gifski.
  3. Install npm dependencies:
    npm ci

Convert

Pass one or several stickers:

node cli.js sticker1.tgs sticker2.tgs ... 

or pass a directory:

node cli.js /home/ed/Downloads/super_pack/

The result will be saved next to each source sticker file in the same directory.

CLI arguments

$ node cli.js --help
usage: cli.js [-h] [--height HEIGHT] [--width WIDTH] [--fps FPS] paths [paths ...]

Animated stickers for Telegram (*.tgs) to animated GIFs converter

Positional arguments:
  paths            Paths to .tgs files to convert

Optional arguments:
  -h, --help       show this help message and exit
  --height HEIGHT  Output image height. Default: auto
  --width WIDTH    Output image width. Default: auto
  --fps FPS        Output frame rate. Default: auto

Notices

You can download .tgs files using @Stickerdownloadbot.