We really need to figure out a better way to share large video files (Movies - 3GB) on Nostr.

Video formats don't offer multiple resolutions inside of them, so if you start downloading a 3GB movie and the phone switches to Mobile data, there is no way to find a lower resolution stream inside the same file.

Switching multiple resolutions over the course of a single playback base on mobile speeds should be as natural as YouTube does.

Reply to this note

Please Login to reply.

Discussion

nostr:nprofile1qqsx8lnrrrw9skpulctgzruxm5y7rzlaw64tcf9qpqww9pt0xvzsfmgpr9mhxue69uhhq7tjv9kkjepwve5kzar2v9nzucm0d5q3gamnwvaz7tmjv4kxz7fwv3sk6atn9e5k7qgcwaehxw309aex2mrp0yh8xmn0wf6zuum0vd5kzmq82esgy is our guy for this

Vão criar um novo formato de vídeo, ou adiconar um multi fonte que consiste em vÔrios links, 1 para cada resolução, e simplesmente ir trocando entre eles?

We support hls but nobody shares with it.

do you support it when uploading? I’ve always wanted to do that on damus

No. I think there are some libs for live streaming, but I am not sure how files would work in those libs. šŸ¤”

ffmpeg supports transcode to hls, its probably the most straightforward solution for clients. Transcode to hls chunks -> upload to blossom

bittorrent

What does that have to do with the topic at hand?

Single torrent, multiple resolutions, multiple peers, no single http server that can be taken down.

We did some zap tests on this note… we made six attempts to⚔zap this note, at jimmy@lnbits.poster.place, over a period of 3 minutes. In each case, we found that your lightning address service or server did not respond correctly. If you wanted to fix this... you could try a free rizful account -- https://rizful.com ... if u set it up, pls reply here so we can do this ⚔zap test again.

I like where your head is at.

If and when I need to share large vids on WA, I just upload them to the cloud (mega, google photos, etc) and send just the link to the recipients. Saves mobile bandwidth and the vid resolution adjusts automatically according to the viewer's connection speed. Link recipient, if they're outdoors, can decide whether to view immediately on mobile data or later on an unlimited wifi connection. Hth

WebRTC? WebM ? . Guess those are both in FFMPEG? No clue, just throwing out things

This would be an amazing idea to implement. How does YouTube do it?

With billions of dollars of infrastructure and dev resources.

I heard nostr:nprofile1qqsqfjg4mth7uwp307nng3z2em3ep2pxnljczzezg8j7dhf58ha7ejgprfmhxue69uhhxetwv35hgtnwdaekvmrpwfjjucm0d5hszxthwden5te0wpex2mtfw4kjuurjd9kkzmpwdejhgtcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcqsjag4 has the money.

I think compression also need to be done in client.

1. Client must support access to S3/R2 (user provide them)

2. When upload client will upload original resolution to S3. After completion client will send alternative lower resolution.

3. When other people check, it will try to get the lower version if available.

So there’s must be S3 naming convention for each format/quality

I also don’t understand why most Nostr client do not supporting FTP/S3 for media upload. Its really convenient and making the author really own their media/files.

At dezh we are developing a blossom server that generates all resolutions of a video while uploaded. We still don't have a standard for lower resolution versions discovery. But we do the process.

I’m doing something similar, will open source when it’s ready, may be of use for you.

YouTube works because of the farm of server streaming all the content, I would not be suprise that every stream quality are pre-generated and all stored in parallel at multiple locations to be close to consumers.

But there are alternative, we don't need to scale faster than the needs. Did you explore WebTorrent and what peertube is doing? Maybe this can be adapted to run with nostr replay somehow.