Could there be a second package with Live-streaming configured?
-
Hi!
Pixelfed offers Live-streaming Capability.
You'll find the docs here: https://docs.pixelfed.org/running-pixelfed/optional-features/livestreaming/
Beside the Videostreaming of course the websocket to enable chat/reactions during a stream would be great. The Doc is here: https://docs.pixelfed.org/running-pixelfed/optional-features/websockets/
Bonus if the Webpusher could run at the same domain as the application (see: https://docs.pixelfed.org/running-pixelfed/optional-features/websockets/#same-location-for-websockets-and-web-contents)
Yip, there would be need for an nginx to do the HLS converting and provide the streaming. The nginx writes in directory the whole time so Apache could just serve this directory - see example at the bottom here: https://www.nobile-engineering.com/wordpress/index.php/2018/10/30/video-streaming-hls-apache-nginx/
I got this running on a machine with Pacht in front of nginx but I still of not ge this docker thingy thing and I had no chance to build a package.
It really would be great to have this feature. I know it will be tricky to package this but it would be soooooooo good!
-
@jaschaezra said in Could there be a second package with Live-streaming configured?:
It really would be great to have this feature. I know it will be tricky to package this but it would be soooooooo good!
+1
-
@jaschaezra ah, thanks! Didn't know this existed. I think we should put this in the default package even. It uses 1935 for streaming it seems, so we can make this togglable.
-
@jaschaezra The websocket is now implemented (also moved to nginx in the process).
There is also a live streaming config in place but we are unable to figure how to test it. Do you know how to test it in the mobile app? Is there any public/demo instance out there which has this working?
-
Upgrading now - will see if I can figure it out!
-
So, I've got it all enabled in the config, but apparently for it to show up in the mobile app, some nginx tweaks are needed: https://docs.pixelfed.org/running-pixelfed/optional-features/livestreaming/#installing-and-configuring-nginx-rtmp
Not sure how we'd pull that off.
-
Actually, I've not seen it appear in the mobile app - I'm wondering if it tries to reach out to ping the rtmp endpoint or something and hides if fail?
HLS_LIVE=true
HLS_LIVE_BROADCAST_SOURCE_APP=true
HLS_LIVE_BROADCAST_MAX_ACTIVE=10
HLS_LIVE_BROADCAST_MAX_DURATION=60
HLS_LIVE_BROADCAST_SOURCE_WEB=trueGoing to try to watch the logs to see if it throws anything like missing RTMP or something.
-
Logs don't appear to generate anything interesting regarding it. I did a code search (https://github.com/pixelfed/pixelfed/search?q=live) and it looks pretty straightforward. I wonder if there's a composer or laraval thing that needs to be done.
-
Hey there @nebulon - great work on the bump. I still don't see a change - I peaked at the nginx config and see a websocket port opened, but I think we're still missing something. From https://docs.pixelfed.org/running-pixelfed/optional-features/livestreaming/ it looks like we need an HLS port open as well?
-
@doodlemania2 It's in the manifest :
"tcpPorts": { "HLS_LIVE_PORT": { "title": "Live streaming port", "description": "Live streaming port (only default works)", "containerPort": 1935, "defaultValue": 1935 } },
Can you check the Location section of the app?
-
Ah - doink, sorry about that. Okay, I ticked the box to turn that on. Still not seeing any changes in the app despite the configs being set. We're still missing something, but not sure what it is. Could be my upstream proxy, will try to route around it to test.
-
Sounds like the official apps will be in the apps stores in a month of so.
https://mastodon.social/@pixelfed/110312061392315948
Perhaps those are what is needed to use this?
Presumably everything mentioned in the docs here are now included in the package?
https://docs.pixelfed.org/running-pixelfed/optional-features/livestreaming/
-
@jdaviescoates ah, that's great news. Yes, we have integrated all that's possible. Now, we need something to test it with.
-
I was hoping the testflight (ios) app just started working when the app is configured. I also set the web app to be a broadcaster (it was an option in the configs) but that didn't change anything either. Perhaps he's holding the code back for the next release or something
-
Sorry for my absence - I will go through this thread tomorrow and see what needs to be done because so already was able to stream (on another instance)