pebble / eachpng

Executes command line for each PNG from standard input and forwards their output to stdout.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

https://travis-ci.org/pebble/eachpng.svg?branch=master

eachpng

Executes command line for each PNG from standard input and forwards their output to stdout. This can be useful if you are want to generate an animated GIF (e.g. which gifsicle) but coming from a stream of of PNGs (which cannot be converted via ImageMagick as such).

Installing

$ pip install .

Running tests

$ nosetests tests

Usage

Here's an example how to convert a stream of PNGs to an animated GIF. This example uses:

  • seq to create a sequence of numbers (stream: many lines with a number each line), uses
  • xargs to call a fictitious program ./tool that produces a PNG for each call (stream: sequence of PNGs)
  • eachpng calling ImageMagick convert for each PNG to convert it to GIF (stream: sequence if GIFs)
  • gifsicle operating taking the sequence of GIFs to produce an animated GIF
$ seq 0 33 12000 | \
  xargs -L 1 -I TC ./tool -t TC -o - | \
  eachpng convert - GIF:- | \
  gifsicle --multifile --delay 3 -O3 >out.gif

About

Executes command line for each PNG from standard input and forwards their output to stdout.

License:MIT License


Languages

Language:Python 100.0%