We already have everything we need for decentralized video hosting. We just need upload services to support variable bitrate streaming and we can improve video playback performance in nostr clients by 100x Centralization of video has always been a terrible idea, but we have the tech to fix it. nostr:note16s3hldsrlza3ytysr3jfmzrn6wgjtkryplrh8tylq72flva3sr4s05u79x
Let me know when we have a decentralized YouTube!
@Kieran has been leading us out of this darkness
Do you recommend any streaming clients? Zap Stream? Flare? Corny Chat? Any others I haven't yet heard of?
https://hivetalk.org
Is this an unbiased recommendation?
of course! *wink*
I hope we'll see this evolve around nostr. Kieran is already looking into supporting multi-track streaming on Zapstream. It's a new feature in the latest OBS build but the server needs to support enhanced rtmp.
Great to hear! @The Fishcake🐶🐾 was looking into adding it directly on nostr.build mp4s so that clients like Damus could support it automatically without any code changes somehow
SRT is the better option. Open source supports encryption and dynamically adjusts bit rate. Also supported by OBS.
zap.stream https://zap.stream/ obviously still in its infancy but i found it easy to use. im not sure why more arent using it, especially those who complain about youtube. you can really just start by uploading / streaming to both with little bother.
You can have the tech but do you have the means to make content creators profit with it?
Zaps!
I don't think they can take what they take with ads but it's something indeed
Right now, I self host all of my own video that I share here… And I’m fine with that, but I would not consider an optimal solution..
Am I sensing NIP-?? for video notes incoming? The only thing with video is that at the larger data size, some kind of financials need to be figured out for the economics to make sense.
Not sure if it needs to be a nip, its already supported in damus in the sense it can load HLS manifests if you paste a link to the file: https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/master.m3u8
We just need to make it easier to share these within clients. Maybe we could have a way to transcode video locally and upload multiple versions for the manifest @The Fishcake🐶🐾 ? I don’t think we have an upload scheme for this though.
Multi-file upload is a hard one
Tar uploads 😅
We would probably want to start uploading right away though, so probably a bad approach
Tar is a streaming format. But why not multiple parallel requests
From what I can tell this is no standard protocol for HLS uploads. Maybe we should spec that 🤔 this would save the media hosts from having to do all the transcoding. I’m actually surprised there isn’t anything like this already.
Kinda related - Twitch is starting to push local transcoding for streamers. https://blog.twitch.tv/en/2024/01/08/introducing-the-enhanced-broadcasting-beta/
I was googling this and couldn't find anything. interesting! thank you.
I think it’ll be easier for all of us if you just uploaded a semi-optimized media and media host do all the VBR transcoding and packaging for distribution. While transcoding is ongoing, we can serve the initially uploaded video, and the redirect to m3u8 manifest when it’s done 🐶🐾🫡
the m3u8 could be dynamically updated with transcoded parts and the rest just referring to the original file, no?
Yes 🐶🐾🫡
that works for me too, I was just trying to help the process since I don't think the redirect is working yet right? cloud transcoding pipelines are complex and I was just trying to make it easier for hosts by pushing all the compute to the edge.
Amethyst has been playing around with custom media servers for uploads. It might be interesting to have specialized video media servers that can take zaps for storage costs. As long as Zaps mainly reach the original creator, and we have some tools to help the creator seamlessly also fund their media storage. Then it would be super easy to use even for non techies.
What… what in the hell am I watching? 🤣
BitTorrent…
Bittorrent is terrible for video streaming :/
The problem is peer discovery really. DHT sucks. You could implement a peer tracker using Nostr. The demo on WebTorrent uses a tracker and that works pretty fast for me, so not sure why we can’t do that over Nostr Otherwise it has everything you need: selective downloading of segments, hash verification, wtc Also it supports HTTP sources.
I hope we can do this soon. Paying in sats for streaming is a great feature. Needs to be integrated into clients
💐💐💐
we have the technology. nostr:note17uy7n934npnd7800q0vmz4zvghh2e9dv8vgvuuayutfnm3l2j35q2n2qy5