mirror of
https://github.com/KrisKennaway/ii-vision.git
synced 2025-01-22 12:29:57 +00:00
kris
6e2c83c1e5
Introduction more general notion of update priority used to increase
weight of diffs that persist across multiple frames. For each frame, zero out update priority of bytes that no longer have a pending diff, and add the edit distance of the remaining diffs. Zero these out as opcodes are retired. Replace hamming distance with Damerau-Levenshtein distance of the encoded pixel colours in the byte, e.g. 0x2A --> GGG0 (taking into account the half-pixel) This has a couple of benefits over hamming distance of the bit patterns: - transposed pixels are weighted less (edit distance 1, not 2+ for Hamming) - coloured pixels are weighted equally as white pixels (not half as much) - weighting changes in palette bit that flip multiple pixel colours While I'm here, the RLE opcode should emit run_length - 1 so that we can encode runs of 256 bytes.
Description
Streaming video and audio for Apple II
Languages
Python
71.4%
Assembly
14.5%
Makefile
7.2%
Shell
4.9%
AppleScript
2%