Skip to content
Image in, corrupted image out
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples/arnolfini
src
.gitignore
Cargo.toml
LICENSE
README.md

README.md

glitch

Image in, corrupted image out.

Realistic glitches

Glitches that result from corrupted file data.

JPEG

Corrupted entropy data

Current implementation

  • find FFDA (start of scan) marker in byte stream, two bytes after that are the length, read and skip those
  • until next marker (FFxx, but not FF00)  - skip N bytes, where N random from reasonable range (pay attention to byte stuffing (0xFF00)
    • overwrite 1 byte with
      • slightly different value (e.g. AB->A7)
      • random byte (probably nicer/heaver glitch but gets corrupted more easily)

Better implemenation

Read file twice to figure out start and end of scans, then overwrite N evenly distributed bytes, to avoid the "glitch on top and rest of image has bad colors" effect.

Portrait of Giovanni Arnolfini and his Wife

1 2 3 4 5 6 7 8 9

Corrupted header data

No idea if feasible or desirable.

Artistic glitches

Format-independent artistic interpretations of corrupted data.

  • fractal pixelation spots?
  • whatever Pony Island does?
You can’t perform that action at this time.