ptcow 0.6.0

Library for editing and playback of PxTone (.ptcop) music
Documentation
๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„\
๐Ÿฎ ptcow ๐Ÿฎ\
๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„๐Ÿ„
=======================

Library for editing and playback of PxTone (.ptcop) music.

Based on the PxTone C++ source code available [here](<https://pxtone.org/developer/>).

## โœ…Goals / โŒNon-goals

- โœ… Support V5 (and newer) versions of PxTone.
- โŒ No support for V4 and earlier. Maybe read support in the future, but no export support planned.

- โœ… Rendering that sounds faithful to the original PxTone rendering
- โŒ No sample-by-sample accuracy. There can be minor differences as long as it sounds (almost) indistinguishable.

## Limitations

- Currently, ptcow only supports little endian architectures.
  There may be big endian support added in the future, but it's not a focus right now.

## Getting Started

To get started, load a `.ptcop` or `.pttune` file into a `Vec<u8>`, and call [`read_song`] on it.
You can also check out `crates/ptmoo` for a command line player that writes samples to stdout.