Skip to main content

A command-line utility for applying artistic effects to videos

Project description

Siss

A command-line tool for applying duotone and halftone effects to video and still-image files. Duotone maps per-pixel luminance to a linear blend between two user-supplied RGB colors; halftone renders plus, asterisk, slash, or dot symbols at luminance-proportional sizes, on a square or hex-offset grid. Accepts hex strings, CSS named colors, RGB triples, and named two-color palettes.

Features

  • Duotone – maps per-pixel luminance to a linear gradient between two RGB colors; color1 is applied to dark areas, color2 to light areas
  • Halftone – renders plus, asterisk, slash, or dot symbols at sizes proportional to local luminance, with independent symbol and background colors, over a square or hex-offset sampling grid
  • Color input – accepts 3- and 6-digit hex strings (with or without #), case-insensitive CSS named colors, RGB integer triples, and named two-color palettes via --palette
  • Still-image output – write PNG, JPEG, BMP, TIFF, or WebP by using an image extension for the output path; reuses the same per-frame effect closures as video output
  • Codec selection – probes cv2.VideoWriter_fourcc candidates per output format and OS; falls back through a priority list until a working codec is found

Installation

pip install siss

Quick Start

After installation, run siss from the command line:

siss input_video.mp4 output_video.mp4 --effect duotone

To process a still image, use an image extension for the output path:

siss input.jpg output.png --effect duotone --palette sunset

Specifying Colors

Colors accept hex strings, CSS names, RGB triples, or curated palettes:

siss input.mp4 output.mp4 --effect duotone --color1 "#3b1f4b" --color2 gold
siss input.mp4 output.mp4 --effect duotone --palette sunset
siss --list-palettes

Example Effects

Duotone Effect

Duotone Example

siss input.mp4 output.mp4 --effect duotone --color1 56 12 45 --color2 217 237 3

Applies a duotone effect with deep purple mapped to dark areas and bright yellow-green to light areas.

Halftone Effect

Halftone Example

siss input.mp4 output.mp4 --effect halftone --symbol_type slash --symbol_size 20 --color1 56 12 45 --color2 217 237 3

Applies a halftone effect with slash symbols at luminance-proportional sizes.

Documentation

See the GitHub repository for full documentation.

Requirements

  • Python 3.7+
  • OpenCV (cv2)
  • NumPy
  • tqdm

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

siss-0.5.1.tar.gz (34.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

siss-0.5.1-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

Details for the file siss-0.5.1.tar.gz.

File metadata

  • Download URL: siss-0.5.1.tar.gz
  • Upload date:
  • Size: 34.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for siss-0.5.1.tar.gz
Algorithm Hash digest
SHA256 f8cb1cd56ec189c0a7e58a00c13fd1afbc930d943c92d845c574a43732293203
MD5 507e64c6ce38649184074cd8f5ad735b
BLAKE2b-256 428589251b420f8d5e00adf76311acbd7292375502352cb4d38f41a15e653273

See more details on using hashes here.

Provenance

The following attestation bundles were made for siss-0.5.1.tar.gz:

Publisher: publish.yml on MichailSemoglou/siss

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file siss-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: siss-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for siss-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ff36940e27702f95d75309a4dcc34041d59cde1f74994a2f3f8c0169b72cd9d3
MD5 165e83dfb07e09813700b4e59f192811
BLAKE2b-256 b27118745ebda263719e663b2507c0b5164663b4fcb700546ab8324544ae737d

See more details on using hashes here.

Provenance

The following attestation bundles were made for siss-0.5.1-py3-none-any.whl:

Publisher: publish.yml on MichailSemoglou/siss

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page