Replying to Avatar Taylor P.

Making this a new top-level reply so its easier to find/see.

Summary

For a pre-release this is awesome! I've been contemplating the idea of self-hosting streaming since trying out zap.stream last year and this is absolutely a viable replacement.

I tried to organize my notes and thoughts as best I could; let me know if you need clarification on anything.

Docker host

- VM on Proxmox 9

- 2 cores of a Xeon E5-1630 v3, 4GB RAM

- Ubuntu Server LTS 24.04

- Separate Caddy container handling HTTPS/LetsEncrypt

- sharing Docker host with 4 other containers, mostly idle

- No performance issues.

System / Technical

- Setup was flawless except for FFmpeg missing (partly my fault for missing the requirement in the docs). Ended up having to build it in the Dockerfile without librtmp; error messages were vague but indicated an incompatibility with something in gnostream.

- RTMP stream key support will be a must for both general security and compatibility with some streaming tools (more on this in the UI / UX section).

- An admin interface of some kind for updating stream info would be nice, especially for those using Docker (its a pain to edit files directly inside containers). Though this would come with its own security load, so making it optional / separate / community-provided may be the better choice.

- Was able to stream from OBS on Windows and a sketchy app on iOS, and watch live and archives on the website on Windows (Firefox) and iOS (Orion).

- Was able to see Nostr stream events in noStrudel (Windows, Firefox). Haven't found or tested any Nostr clients for iOS that support NIP-53 events (I will admit I didn't look very hard...)

UI / UX

- OBS is the gold standard for desktop streaming and handles no auth with a simple checkbox, but all but one (sketchy) iOS app I tried required a stream key. I don't know how common streaming from mobile is (or whether the Android ecosystem is different), but I'd highly recommend adding stream key support.

- Much of the black-on-green text on the website is difficult to see. Inspector shows it as "cyan" and "green", but its displaying as black, and I couldn't find what was overriding it.

- The shimmer effect across the site runs over-top of the video window; not sure how big of a pain it would be to get it to run behind.

- Both the Data Vault and Recent Transmission section on the Live Feed page feel unwieldy to browse; auto-shrinking or capping the size of the video thumbnails would solve this.

- Some users may want archived / saved streams auto-posted to their Blossom server and/or as a simple link in a Kind-1 event, though given the file size of a longer stream Blossom may not be viable.

- The ability to export saved streams as single video files would be nice to have (admin only).

- Direct links for archived streams would be nice to have.

- The option to also post a Kind-1 event with a simple link to the stream would be nice to have. Would be awesome if the links used the stream thumbnail as their thumbnail (instead of the page/site preview) (I'm pretty sure there's some web magic that can achieve this, but it's been a while since I used it.)

- The play window for archived streams opening at the bottom of the Data Vault page is awkward; unsure if this is a bug or intentional.

- A super-simplified UI mode for the website that doubles as a template hosters can use to make their own custom UI? The webdevs among us could easily customize the current one, but having a simplified template would help encourage the up-and-coming webdevs to do so.

I'm pushing a new commit that has ffmpeg added to the container. So that should work now.

The RMTP server is not accessible by the internet at this point. It is for you to stream locally to from your software (obs) This is why no stream key is needed. If I ever add the ability for others to use your gnostream instance simultaniously stream keys will be needed of course. I won't say it's planned but it's not out of the question. (something like a zap top up for stream time credit using your stream server)

I know it's a pain to edit the configs directly, especially in docker. An admin panel to edit stream info and setting is planend but for much later after I know everything is working smoothly. I still want to add nostr client integration so people can chat on the site. I'm also eyeing youtube and twitch settings to create a unified platform to stream across all the major platforms in addition to nostr and your self hosted site with a unified chat across all platforms on the self hosted site.

Further on the stream key. I think adding a way to use a stream key optionally is something I can add to satisfy apps that require it.

The tailwind css might not be properly built, causing the bad ui displaying as black. I'll have to look into this further.

I'm pushing a commit that optimizes the mobile view and may solve some of the unwieldy browsing you experienced.

Something with blossom may be in the future, but I kind of want to build my own blossom server so I have something I built I can test with. Planned but way later.

You can use VLC or ffmpeg to to export your streams to a single video file at the moment but you can consider this planned. Will require nostr login then I can allow the feature for the server owner by nostr key.

What do you mean by direct links to archived files? You should be able to navigate to the direct link to the output file in archive as it stands now. The direct link is what's in the nostr event.

posting a kind 1 for the stream can come pretty easily once I integrate nostr login and more frontend nostr things.

Once things are working smoothly, I intend to simplify the ui enough to be able to make custom themes and such so anyone can change it to their liking with ease.

Keep an eye out for a new pre-release to try soon. I'll tag you when it's up.

Reply to this note

Please Login to reply.

Discussion

No replies yet.