Skip to main content

Fully-local sync tool for the Sony ICD-UX570 voice recorder

Project description

REEL

A fully-local, automatic sync tool for the Sony ICD-UX570. Plug in the recorder, and Reel pulls every new recording onto your PC, names it by the moment you hit record, and files it into the right category — Interviews, Songs, Memes, Podcasts, Voice Notes. Re-plug the same stick and nothing copies twice. A clean terminal, a progress bar, done.

Everything stays on your machine. The recorder is never wiped. The library is just folders — open it in Explorer any time.


What it does

  • Detects the recorder the moment it mounts (by volume label or by spotting its REC_FILE folder — works even if the label changes).
  • Copies only what's new. Each file is fingerprinted; already-synced recordings are skipped.
  • Names everything cleanly2026-06-08_1432_reel-7F3A.mp3 (date-first, sorts forever).
  • Auto-categorises using simple, tunable rules:
    • device MUSIC folder → Songs, PODCASTSPodcasts
    • a filename keyword (interview, meme, …) wins if present
    • otherwise by length: very short → Memes, very long → Interviews, else Voice Notes
  • Mirrors to any extra drives you list (USB / cloud), so sync doubles as backup.
  • Runs automatically in watch mode — leave it running and every plug-in just syncs.

Files land here:

Reel/
├── Interviews/2026/2026-06-08_1432_reel-7F3A.mp3
├── Songs/2026/2026-05-30_2011_reel-A1C9.mp3
├── Memes/2026/…
└── .reel/manifest.json      ← dedup index (so nothing copies twice)

Install

Once it's published, anyone can install it from PyPI:

pip install reel-sync

(The package is reel-sync; the command you run is just reel.)

From this folder (for development)

  1. Install Python 3.11+ (python.org → tick Add Python to PATH).
  2. Install Reel as a command — open a terminal in this folder once:
    pip install -e .
    
    That puts a reel command on your PATH, so you can run it from any folder (including C:\Users\YOU>), not just this one.
  3. Set your path in config.toml:
    [library]
    sync_root = "C:/Users/YOURNAME/Reel"
    
    Point sync_root at a cloud-synced folder (pCloud / OneDrive / Dropbox) and your off-site backup is automatic.

Reel finds this config.toml automatically wherever you run it from (it also checks ./config.toml and ~/.reel/config.toml first). No config at all? It falls back to sensible defaults (~/Reel).


Use it

You really only need two commands. Run them from anywhere — your home prompt is fine.

First time — run this, then plug in the recorder when it asks:

reel setup

A short welcome, then it waits for your ICD-UX570, does the big initial copy, and stays running as auto-sync from there. (Run reel setup again later and it just says "Already set up :)".)

Every day after — start auto-sync and leave it running:

reel start

It does the initial sync, then keeps syncing automatically whenever you drop a file onto the recorder from your PC — and it stops by itself the moment you unplug the recorder. (Press Ctrl + C to stop sooner.)

That's the whole flow. The rest is optional:

reel sync              # a single one-off sync, then exit (rarely needed)
reel sort <path>       # auto-filter a folder/files you drop in (or use the .bat)
reel status            # what's in your library, per category
reel devices           # is the recorder detected right now?
reel open              # open the Reel library in Explorer
reel reset             # clear first-time setup (to see the welcome again)
reel --theme dark start# dark terminal theme

(python -m reel start and python run.py start work identically.)

Make it truly hands-off (optional)

Put a shortcut to reel start in your Startup folder (Win+Rshell:startup). Reel will be running and watching from the moment you log in.


Branding

Light by default — colours tuned for a white terminal. Want dark? theme = "dark" in config.toml, or --theme dark on any command. Identity lives in reel/branding.py.

Notes

  • Privacy: nothing leaves your machine except the copies you put in your own mirror/cloud folders.
  • Safety: delete_after_sync = false by default — Reel copies off the recorder and never deletes from it.
  • Coming later: built-in playback, a podcast queue, smarter song-vs-voice detection. See ROADMAP.md.

REEL v1.0.0 — plug in, walk away.

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

reel_sync-1.0.0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

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

reel_sync-1.0.0-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

Details for the file reel_sync-1.0.0.tar.gz.

File metadata

  • Download URL: reel_sync-1.0.0.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.4

File hashes

Hashes for reel_sync-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d88631d8fa4a2107f77879916298114770c9e6782ac529c4f9cb5e690e53d8a2
MD5 e6902f29b513c007a68e4bb1c4b9b1f8
BLAKE2b-256 87d33d92f74ca56528ae4b720ae2807f5afec5877090c7c054414f870b8b15a5

See more details on using hashes here.

File details

Details for the file reel_sync-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: reel_sync-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 23.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.4

File hashes

Hashes for reel_sync-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a490ecff9cf3b4c7f4e66e70820da31498d905c33357545a14404a15ebb847e4
MD5 d089d0ae9a184deca4cff189ca62a6ff
BLAKE2b-256 8f3ccdce00bf0799e1ab57b63b49e9f58a30fe8ed22864d9be5ba1b80cd6e396

See more details on using hashes here.

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