Skip to content

Commit e5cf332

Browse files
authored
Update README.md
1 parent 57b1ec7 commit e5cf332

1 file changed

Lines changed: 16 additions & 15 deletions

File tree

README.md

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,23 @@
44
[![release](https://img.shields.io/github/v/release/dfallman/spritz)](https://github.com/dfallman/spritz/releases)
55
[![license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
66

7-
`spritz` is a terminal-based, nano DLNA media server. Run it in a folder, and that folder's video and audio files become available for any TVs, phones, speakers, and other media players on your local network using the DLNA prototcol.
7+
`spritz` is a terminal-based, nano DLNA media server. Run it in a folder, and that folder's video and audio files become available to any TVs, phones, speakers, and other media players on your local network using the DLNA protocol.
88

99
<img width="1684" height="1148" alt="spritz-github" src="https://github.com/user-attachments/assets/32228ce0-14c6-4a5a-9222-95802132ec17" />
1010

11-
### Usage
11+
### Quick start
1212
```
1313
cd /mnt/nas/movies
1414
spritz
1515
```
1616

17-
..or, alternatively, run it from anywhere and specify which path(s) to serve up:
17+
...or, alternatively, run it from anywhere and specify which path(s) to serve up:
1818

1919
```
2020
spritz /mnt/nas/movies /mnt/nas/music
2121
```
2222

23-
DLNA clients — such as modern TVs, Apple TV (via Infuse or VLC), PS5, Xbox, Kodi, tablets, phones, and many more — should see the spritz share appear in their network sources within a few seconds, as long as your source supports DLNA.
23+
DLNA clients — such as modern TVs, Apple TV (via Infuse or VLC), PS5, Xbox, Kodi, tablets, phones, and many more — should see the spritz share appear in their network sources within a few seconds, as long as your client supports DLNA.
2424

2525

2626
## Features
@@ -36,13 +36,13 @@ DLNA clients — such as modern TVs, Apple TV (via Infuse or VLC), PS5, Xbox, Ko
3636

3737
## Why Spritz?
3838

39-
Most DLNA and media servers servers (such as Plex, Jellyfin, Emby, MiniDLNA/ReadyMedia, Rygel, Serviio, and others) are meant to be persistent servers: that is, you install a service, point a config file at your media library, often on a NAS or similar, maintain a database, and leave it running.
39+
Most DLNA and media servers (such as Plex, Jellyfin, Emby, MiniDLNA/ReadyMedia, Rygel, Serviio, and others) are meant to be persistent servers: that is, you install a service, point a config file at your media library, often on a NAS or similar, maintain a database, and leave it running.
4040

41-
Spritz is the opposite — you've downloaded a file, you point spritz opportunistically at the folder that file is in, share it for as long as you need, and Ctrl+C when done. As we say in Australia, "no drama": no config, no database, no indexing job, no background service.
41+
Spritz is the opposite — you've downloaded a file, you point spritz opportunistically at the folder that file is in, share it for as long as you need, and Ctrl+C when done. As we say in Australia, "no drama": no config, no database, no indexing job, no background service.
4242

43-
While Spritz is primarily meant as a means for serving up laptop folders, ad-hoc shares, and other folders you don't serve every day, it can also be used as a no-nonsense alternative to heavier, more complex media file servers mentioned above. You can just leave it running on your NAS's `Media` folder tool and spritz will do its thing.
43+
While Spritz is primarily meant as a means for serving up laptop folders, ad-hoc shares, and other folders you don't serve every day, it can also be used as a no-nonsense alternative to the heavier, more complex media file servers mentioned above. You can just leave it running on your NAS's `Media` folder too and spritz will do its thing.
4444

45-
**Note**: If you leave it running, note that Spritz parses the file tree when on start up, but it doesn't monitor it for changes. Hence, if you add a file to a share, just restart Spritz.
45+
**Note**: If you leave it running, note that Spritz parses the file tree at startup, but it doesn't monitor it for changes. Hence, if you add a file to a share, just restart Spritz.
4646

4747
## Install
4848

@@ -58,7 +58,7 @@ Each archive ships with a `.sha256` checksum.
5858

5959
### From source
6060

61-
To compile Spritz from source, youll need Rust. Use [rustup](https://rustup.rs/) for the installation; it ensures you have the latest version of cargo. Package managers (like `apt` and `brew`) don't alway have the latest version of Rust.
61+
To compile Spritz from source, you'll need Rust. Use [rustup](https://rustup.rs/) for the installation; it ensures you have the latest version of cargo. Package managers (like `apt` and `brew`) don't always have the latest version of Rust.
6262

6363
Once installed:
6464
```bash
@@ -98,9 +98,9 @@ spritz --port 9000 /media/videos
9898

9999
## Connecting a client
100100

101-
- **Smart TVs, game consoles, or media players (DLNA).** Open your TV's Media Server or Network source. Spritz should show up within a few seconds. Inside you'll see three containers — `Videos`, `Music`, and `By folder`. The first two are flat lists of every file by type; `By folder` mirrors your on-disk directory structure so you can navigate Shows → Season 1 → ep1.mkv the way you'd expect.
101+
- **Smart TVs, game consoles, or media players (DLNA).** Open your TV's Media Server or Network source. Spritz should show up within a few seconds. Inside, you'll see three containers — `Videos`, `Music`, and `By folder`. The first two are flat lists of every file by type; `By folder` mirrors your on-disk directory structure so you can navigate Shows → Season 1 → ep1.mkv the way you'd expect.
102102

103-
- **VLC.** `Media → Open Network Stream → http:/<your-spritz-server-ip>:8080/spritz`, or browse via `View → Playlist → Local Network → Universal Plug'n'Play`. VLC only scans at startup and when it receives a NOTIFY packet, so if it doesn't appear, restart VLC once Spritz is already running.
103+
- **VLC.** `Media → Open Network Stream → http://<your-spritz-server-ip>:8080/spritz`, or browse via `View → Playlist → Local Network → Universal Plug and Play`. VLC only scans at startup and when it receives a NOTIFY packet, so if it doesn't appear, restart VLC once Spritz is already running.
104104

105105
- **Infuse (Apple TV / iOS / iPadOS).** `Add Files → Network Share` and pick Spritz Media Server from the list, or enter the M3U URL manually. Works on tvOS as well — the share browses the three-container layout described above.
106106

@@ -142,12 +142,12 @@ spritz --port 9000 /media/videos
142142
| Samsung (Tizen) | Works | Requires `<dc:date>` on each DIDL item — included |
143143
| LG (webOS) | Works | Shows an "unknown device" icon (no icon endpoint yet) |
144144
| Sony / Bravia | Works | Strict about `Content-Type: text/xml; charset="utf-8"` — handled |
145-
| Apple TV — Infuse (tvOS, iOS, iPadOS) | Works | Required the full DIDL treatment for tvOS playback |
146-
| Apple TV — VLC (iOS, iPadOS) | Works | tvOS VLC sometimes misses SSDP; add the M3U URL manually |
145+
| Apple TV — Infuse (tvOS, iOS, iPadOS) | Works | Requires the full DIDL treatment for tvOS playback |
146+
| Apple TV — VLC (tvOS, iOS, iPadOS) | Works | tvOS VLC sometimes misses SSDP; add the M3U URL manually |
147147

148148
## Troubleshooting
149149

150-
DLNA is fiddly by nature, especially combined with some devices and operating systems (looking at you, Apple TV).
150+
DLNA is fiddly by nature, especially in combination with certain devices and operating systems (looking at you, Apple TV).
151151

152152
If your client can't find Spritz, check your firewall rules first (on both the server and client side, but typically the server side): SSDP needs UDP 1900 open, and HTTP needs your serving port (8080 by default).
153153

@@ -187,7 +187,8 @@ Spritz implements DLNA/UPnP AV directly instead of wrapping an existing library.
187187
See [ARCHITECTURE.md](ARCHITECTURE.md) for the full protocol walkthrough.
188188

189189
## Note on AI use
190-
The author of this application has been writing code for over 30 years. Lately, LLM agent-enhanced coding practices have rekindled my sense of awe at what's possible. This project has been built using a range of tools, Anthropic's Claude Code (using Opus 4.7) are among them.
190+
191+
The author of this application has been writing code for over 30 years. Lately, LLM agent-enhanced coding practices have rekindled my sense of awe at what's possible. This project has been built using a range of tools, with Anthropic's Claude Code (using Opus 4.7) among them.
191192

192193
Unlike some who dismiss anything touched by a coding agent as "slop," I don't see it that way. To me, these tools are a way to move much faster, explore many more ideas, and test those ideas and implementations more rigorously than I ever could on my own.
193194

0 commit comments

Comments
 (0)