franzap on Nostr: The mind blowing part here is not my unix tool, it is showing that nostr is a ...
The mind blowing part here is not my unix tool, it is showing that nostr is a practical decentralized alternative to Usenet NZBs (torrents are a different thing)
- Blossom servers do not need to store a whole large video file
- Blossom servers do not need to stream an entire large file
- Blossom operators have plausible deniability in terms of content as the segments are encrypted (and they may not have all) and they don't control the key
- Video clients now have mutiple failovers if a segment is stored in multiple servers
- There are bandwidth savings if the video is not watched entirely
- Content creators can exchange the AES key against a zap
Youtube, here we come.
I just built a tool.
Video on-demand from encrypted chunks on multiple Blossom servers 🤯
If you have (or can install) nak, nodejs, ffmpeg can you check it works for you?
nak req --id ec1688e87843e8774d1813c371fe65af890be090bdb831f03ceefdd2144ad679 wss://relay.damus.io | npx --yes github:franzaps/n2m3u8 | ffmpeg -f hls -allowed_extensions ALL -protocol_whitelist file,http,https,tcp,tls,crypto,fd -i - -f mpegts - | mpv -
This:
- Fetches a nostr event with hashes of video chunks
- Input into my tool that finds the working chunks in Blossom servers and outputs a HLS playlist
- Input to ffmpeg that decrypts and decodes the stream
- Input to video player. (Replace mpv with vlc or other video player, can also save to a video file)
Volume UP!
#asknostr #blossom #devstr
Published at
2025-05-05 22:57:31Event JSON
{
"id": "2cb197262ff6af97e469d5901fafacbc05a4cfbc7154d66a54777a7e9473a5a7",
"pubkey": "726a1e261cc6474674e8285e3951b3bb139be9a773d1acf49dc868db861a1c11",
"created_at": 1746485851,
"kind": 1,
"tags": [
[
"e",
"5a3290295d4d8b28b696d4d13fe3fa9294b67f672b730dc676953697b96f6ac4",
"",
"mention"
],
[
"p",
"726a1e261cc6474674e8285e3951b3bb139be9a773d1acf49dc868db861a1c11",
"",
"mention"
],
[
"q",
"5a3290295d4d8b28b696d4d13fe3fa9294b67f672b730dc676953697b96f6ac4"
]
],
"content": "The mind blowing part here is not my unix tool, it is showing that nostr is a practical decentralized alternative to Usenet NZBs (torrents are a different thing)\n\n- Blossom servers do not need to store a whole large video file\n- Blossom servers do not need to stream an entire large file\n- Blossom operators have plausible deniability in terms of content as the segments are encrypted (and they may not have all) and they don't control the key\n\n- Video clients now have mutiple failovers if a segment is stored in multiple servers\n- There are bandwidth savings if the video is not watched entirely\n- Content creators can exchange the AES key against a zap\n\nYoutube, here we come.\n\nnostr:nevent1qqs95v5s99w5mzegk6tdf5flu0af999k0anjkucdcemf2d5hh9hk43qprpmhxue69uhkv6tvw3jhytnwdaehgu3wwa5kuef0qgs8y6s7ycwvv36xwn5zsh3e2xemkyumaxnh85dv7jwus6xmscdpcygrqsqqqqqpr4rtmd",
"sig": "46c7fd7c31292b649bb17aa88b666c8eeabf0230cadce4f0c64036c80c836c55d6fe972ebb41f0dd9fdfd30899569c66afb58870c382867ab3b5cbe554d1535a"
}