Live event NIP-53 +other stream formats positive interoperability
NIP-53 https://github.com/nostr-protocol/nips/blob/master/53.md
| app | view NIP-53 (zapstream) support | create nip-53 livestream | view .webm | view HLS | comment |
|---|---|---|---|---|---|
| zap.stream | ✅ | ✅ | ❌ | ❌ | |
| damus | ❌ | ❌ | ❌ | ✅ | |
| primal | ❌ | ❌ | ✅ | ❌ | |
| amethyst | ✅ | ? | ✅ | ||
| nostrudel | ✅ | ❌ | ✅ | ? | |
| nostur | ✅ | ❌ | ❌ | ✅ | |
| coracle | ❌ | ❌ | ✅ | ❌ (audio only) | |
| Iris | ✅ | ||||
| Phoenix(snort) | ✅ | ||||
| applesauce | ** | **Applesauce v3 will have some helpers for reading NIP-53 events and creating / modifying them | |||
| shosho | ✅ | ✅ | mobile streaming | ||
| applesauce | ✅ |
https://njump.me/nevent1qqsp5rfq2mdfq7dpa5zu3fn9znqmgzqzfq46nr9snqwehgra4y9arngpzpmhxue69uhkummnw3ezuamfdejszrthwden5te0dehhxtnvdakqzxrhwvaz7te3xqczude39ceryd3wxycnqw358q6rsqg5waehxw309aex2mrp0yhxgctdw4eju6t02pzc5a
@v0l what standard does zapstream use for streaming?
@v0l do the apps you listed support viewing zapstream/nip-53 feeds only, or streaming + viewing?
Viewing / Zapping / Commenting only afaik
Are there any other apps beyond zapstream that can stream NIP-53?
next version of noStrudel will support embedded HLS videos in kind 1 notes
Tracking PR: https://github.com/hzrd149/nostrudel/pull/214 Example: https://next.nostrudel.ninja/#/n/nevent1qvzqqqqqqypzqvhpsfmr23gwhv795lgjc8uw0v44z3pe4sg2vlh08k0an3wx3cj9qy88wumn8ghj7mn0wvhxcmmv9uq3kamnwvaz7tm5dpjkvmmjv4ehgtnwdaehgu339e3k7mf0qqsrwv3a0ftfsy55jqaec8wzw27j8dn4k6r46834d65ftjcxgfp6c9cmmgfrm
I don't know if it makes sense to have this giant table of unrelated clients.
I don't know if it makes sense to have this giant table of unrelated clients.
what do you suggest?
what do you suggest?
having only clients that matter.
updated to a table with respondees only. is this good for now?
Zap.Stream
- HLS - No (https://zap.stream/nevent1qqsrwv3a0ftfsy55jqaec8wzw27j8dn4k6r46834d65ftjcxgfp6c9cg8sn26)
- .webm - No (https://zap.stream/nevent1qqsfmxjnuh9awg9kjw7v6g64v3lpk6aaesfsg4ywery3auu8egyvghc8wmswu)
Primal
- View NIP-53 stream: No (on iOS and web)
- .webm Support: Yes (https://primal.net/e/note1nkd98ewt6ustdyaue5342er7rd4mmnqnq32gajxfrmec0jsgc30s95yuvh)
- Create NIP-53 stream: No (on iOS and web)
Nostrudel
- .webm - Yes
- Create NIP-53 stream: No
Nostur
- .webm - No
- Create NIP-53 stream: No
Coracle
- HLS - No (streams audio only - https://coracle.social/notes/nevent1qyd8wumn8ghj7un9d3shjtn8v46xzmrz0yhxxmmd9amrzqgwwaehxw309ahx7uewd3hkctcpz9mhxue69uhkummnw3ezuamfdejj7qgkwaehxw309aex2mrp0yhx6mmnw3ezuur4vghsz9nhwden5te0v4jx2m3wdehhxarj9ekxzmny9uq32amnwvaz7tmjv4kxz7fwv3sk6atn9e5k7tcprdmhxue69uhhg6r9vehhyetnwshxummnw3erztnrdakj7qgkwaehxw309a482mncd9hxwampdenjummjvuhsqgphxg7h545cz22fqwuurhp890frke6mdp6arc6ka2y4evryysavzum5c4ax)
- View NIP-53 stream - No
- .webm - Yes (https://coracle.social/notes/nevent1qqsfmxjnuh9awg9kjw7v6g64v3lpk6aaesfsg4ywery3auu8egyvghc8wmswu)
- Create NIP-53 stream - No
Snort:
- HLS - No
- View NIP-53 steam - No
- .webm - No
- Create NIP-53 stream - No
Maybe I've misunderstood the . symbols you've used above (might be browser/system dependant, but I filled in what worked for me. :)
thank you @YawningGoat :pray: updated accordingly
@v0l wen streaming support in snort?? :smiley:
This issue is tracking two completely independent things. NIP-53 livestream support is very different than just displaying HLS from a URL in a note. webm is yet another entirely different thing.
What do you think is a better approach?
One issue for NIP-53 live video events, another for displaying webm, another for displaying HLS in notes.
But I would not try to track webm and HLS support in notes, these are not compatibility-critical issues, they are more like nice-to-have features of clients. Pushing all clients to add support for these things is an anti-pattern.
In fact the fact that Damus is uploading video as HLS is kinda breaking everything, I think it's better if a simpler video URL that everybody understands as the main URL in the note content, then use that imeta tag to have an optional HLS link -- so yes, I think we need a different issue to address that.
Specific to NIP-53, @tyiu is considering adding support to display nip-53 scheduled events on comingle, and potentially add a virtual event filter/toggle/ui element.
In fact the fact that Damus is uploading video as HLS is kinda breaking everything
@fiatjaf upload damus default is .mp4. Damus renders HLS posted by any nostr app. For reference, here is the add support for streaming HLS issue from last year: https://github.com/damus-io/damus/issues/798
One issue for NIP-53 live video events, another for displaying webm, another for displaying HLS in notes.
@fiatjaf what do you think about calling a new category of non-NIP feature tracker where HLS, webm could fit in: "not mandatory", "fyi", or "bonus points"
From the end user and streamer perspective the concept of "streaming" is involves more than NIP-53.
See https://njump.me/note1vkulcuqym2whk2jkltcumevkw9eypmv459vkpyvq9ctzw97unx6sgrgzcu
I think its useful context to have for the streamer persona. Maybe nostrability repo is not the best place for it.
Do yall know of a nostr for streamers resource?
cc @fiatjaf
In fact the fact that Damus is uploading video as HLS is kinda breaking everything, I think it's better if a simpler video URL that everybody understands as the main URL in the note content, then use that
imetatag to have an optional HLS link -- so yes, I think we need a different issue to address that.
this is not true, damus does no such thing.
I want to though. Video doesn't really load on low bandwidth connections without adaptive bitrate streaming, which every video and social media platform uses, especially for longer videos.
Primal and iOS Damus are investigating adding NIP-53 streaming
@hzrd149 does Applesauce support NIP-53 streaming?
@hzrd149 does Applesauce support NIP-53 streaming?
Applesauce v3 will have some helpers for reading NIP-53 events and creating / modifying them
Helper methods: https://github.com/hzrd149/applesauce/blob/861ccc74478c3f9bbe3b13a0e3e438db3ab48a40/packages/core/src/helpers/stream.ts
Event operations (create / modify) https://github.com/hzrd149/applesauce/blob/861ccc74478c3f9bbe3b13a0e3e438db3ab48a40/packages/factory/src/operations/stream.ts
sorry for the lack of docs
https://github.com/r0d8lsh0p/shosho-releases
Nostrability/schemata now contains a NIP-53 live scheme https://github.com/nostrability/schemata.
Devs and others can use to verify if JSON/events/kind implementations conform, or conflict with the spec.
nostria
https://nostr.eu/nevent1qqsqqqq2sarpqsumdfc4y22hfakfqw9hkehamgnhlwsr9lqztd9z09g4z6t7q