All Projects → transitive-bullshit → puppeteer-lottie-cli

transitive-bullshit / puppeteer-lottie-cli

Licence: other
CLI for rendering Lottie animations via Puppeteer to image, GIF, or MP4.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to puppeteer-lottie-cli

Puppeteer Lottie
Renders Lottie animations via Puppeteer to image, GIF, or MP4.
Stars: ✭ 208 (+144.71%)
Mutual labels:  ffmpeg, lottie, puppeteer
Puppeteer Recorder
Record animations using puppeteer. Based on electron-recorder.
Stars: ✭ 169 (+98.82%)
Mutual labels:  ffmpeg, puppeteer
tgskit
Toolkit for dealing with Telegram Stickers and Bodymovin/Lottie animations.
Stars: ✭ 45 (-47.06%)
Mutual labels:  lottie
mmtool
mutimedia tool script
Stars: ✭ 21 (-75.29%)
Mutual labels:  ffmpeg
hc-pdf-server
Convert HTML to PDF Server by headless chrome with TypeScript. The new version of hcep-pdf-server.
Stars: ✭ 24 (-71.76%)
Mutual labels:  puppeteer
colorize-video
colorize video using publicly available neural-networks
Stars: ✭ 24 (-71.76%)
Mutual labels:  ffmpeg
nightcoreify
Randomly generates nightcore and uploads it to YouTube. A joke that got out of hand.
Stars: ✭ 54 (-36.47%)
Mutual labels:  ffmpeg
aplayer
ffplay友好版本. 对ffplay裁剪重构以适合初学者阅读、理解
Stars: ✭ 41 (-51.76%)
Mutual labels:  ffmpeg
yayd
youtube-dl backend in Rust, aka youtube & co downloader
Stars: ✭ 32 (-62.35%)
Mutual labels:  ffmpeg
FFmpegAudioPlayer
基于FFmpeg+OpenSL ES实现的音频播放器,组合使用多种过滤器
Stars: ✭ 50 (-41.18%)
Mutual labels:  ffmpeg
jellyfin-ffmpeg
FFmpeg for Jellyfin
Stars: ✭ 88 (+3.53%)
Mutual labels:  ffmpeg
AndroidFFmpeg
FFmpeg命令在Android中的使用
Stars: ✭ 28 (-67.06%)
Mutual labels:  ffmpeg
RemoteFFmpegGUI
使用 Vue.js + ASP.NET 搭建的 FFMpeg 的 Web GUI 平台,支持视频转码、拼接视频、合并音视频等操作。并有使用 WPF 技术的 Windows 桌面端。
Stars: ✭ 21 (-75.29%)
Mutual labels:  ffmpeg
X1Player
iOS端封装的视频播放器.支持直播,录播视频的播放,支持常用的播放界面控制,类似于ijkplayer 优点是体积更小,使用快捷
Stars: ✭ 21 (-75.29%)
Mutual labels:  ffmpeg
VideoIO.jl
Reading and writing of video files in Julia via ffmpeg
Stars: ✭ 103 (+21.18%)
Mutual labels:  ffmpeg
Dockerfiles
Optimized media, analytics and graphics software stack images. Use the dockerfile(s) in your project or as a recipe book for bare metal installation.
Stars: ✭ 98 (+15.29%)
Mutual labels:  ffmpeg
acfun-live
使用 Puppeteer 开启 AcFun 直播监控室,挂牌子!😏
Stars: ✭ 12 (-85.88%)
Mutual labels:  puppeteer
Tana
Bringing the Picture-in-Picture experience to the desktop.
Stars: ✭ 109 (+28.24%)
Mutual labels:  ffmpeg
ffmpeg-progressbar-cli
A colored progress bar for FFmpeg.
Stars: ✭ 140 (+64.71%)
Mutual labels:  ffmpeg
acinerella
FFmpeg wrapper library for audio/video decoding
Stars: ✭ 18 (-78.82%)
Mutual labels:  ffmpeg

puppeteer-lottie-cli

CLI for rendering Lottie animations via Puppeteer to image, GIF or MP4.

NPM Build Status JavaScript Style Guide

Logo

This CLI is also available as a library.

Install

npm install -g puppeteer-lottie-cli

If you want to generate GIFs, you must also install gifski. On macOS, you can run:

brew install gifski

If you want to generate MP4s, you must also install ffmpeg. On macOS, you can run:

brew install ffmpeg

Usage

Usage: puppeteer-lottie [options]

Options:
  -i, --input <path>     relative path to the JSON file containing animation data
  -o, --output <path>    relative path to store output media (image, image pattern, gif, or mp4) (default: "out.png")
  -w, --width <number>   optional output width
  -h, --height <number>  optional output height
  -b, --background <css-color-value>
                         optional output background color (default: "transparent")
  -q, --quiet            disable output progress
  -V, --version          output the version number
  -h, --help             output usage information

Output must one of the following:
  - An image to capture the first frame only (png or jpg)
  - an image pattern (eg. sprintf format 'frame-%d.png' or 'frame-%012d.jpg')
  - an mp4 video file (requires FFmpeg to be installed)
  - a GIF file (requires Gifski to be installed)
Examples:
  $ puppeteer-lottie -i fixtures/bodymovin.json -o out.mp4
  $ puppeteer-lottie -i fixtures/bodymovin.json -o out.gif --width 640
  $ puppeteer-lottie -i fixtures/bodymovin.json -o 'frame-%d.png' --width 1024 --height 1024

Output Size

If you don't pass width or height, the animation's intrinsic size will be used, and if that doesn't exist it will use 640x480.

If you pass width or height, the other dimension will be inferred by maintaining the original animation's aspect ratio.

If both width and height are passed, the output will have those dimensions, but there will be extra whitespace (or transparency if rendering PNGs) due to lottie-web's default rendererSettings.preserveAspectRatio of xMidyMid meet (docs and demo).

For mp4 outputs, the height may be different by a pixel due to the x264 encoder requiring even heights.

Compatibility

All lottie-web features should be fully supported by the svg, canvas, and html renderers.

This includes all of the animations on lottiefiles.com! 🔥

Also see Lottie's full list of supported features.

Related

License

MIT © Travis Fischer

Support my OSS work by following me on twitter twitter

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].