ChurchApps / FreeShow

FreeShow is a free and open-source, user-friendly presenter software.
https://freeshow.app
GNU General Public License v3.0
483 stars 77 forks source link

Livestream Output #259

Closed Benjamin72070 closed 10 months ago

Benjamin72070 commented 11 months ago

I was wondering if it would be possible to have a Livestream Output that had alpha channel option. In essence a copy of stage output but with transparent background. Also, would it be possible to have the option to output stage view to an actual monitor as well as web. Multiple stage views wouldn't be a bad idea.

vassbo commented 11 months ago
  1. There is an option called "Enable alpha key output" that should enable a different output for alpha. Also the NDI supports transparent outputs.
  2. You can do that in a way (a bit tedious to set up), see more here: https://freeshow.app/docs/mirrors#stage-display-in-output-window. But I will probably soon add it natively to the main output.
  3. In the "Stage" view page you can have as many stage views as you want.
Benjamin72070 commented 11 months ago

No NDI in Linux version yet. I'm trying to set this up in Debian 12 at the moment. I am going to possibly use a OBS hack to get it stream from presentation computer to streaming computer via an SRT stream. I am trying to eliminate the need for more HDMI cables and capture cards.

vassbo commented 11 months ago

That's right. Okay! But have you tried the "Enable alpha key output" option?

Benjamin72070 commented 11 months ago

I did try the enable alpha key output. I may have misunderstood, but that did not add another output. It may have changed the web output to add alpha channel. Also, I see there is a way to add layouts to the stage view. I do not see a way to enable being able to display more than one layout at the same time. I really appreciate the help. I will "buy you a coffee" or two shortly.

vassbo commented 11 months ago

Okay. Maybe we are talking about two different things. You have default "Outputs" used for displaying on a projector or TV, and "Stage" outputs via a web browser used e.g. for lyrics view for the people only on the stage. Stage display in browser does not have any alpha channel, but are just black and white by default.

For live streaming you should use the main "Outputs". Do you want to specifically use the stage displays, or are you trying to add a custom styled live stream output. (You can add multiple of both)

Benjamin72070 commented 11 months ago

The livestream is being broadcast from a second PC. I was hoping to send multiple web outputs for lyrics, scripture and liturgy with each being formatted differently. At most, I have two web feeds. The output feed also needs to be associated with an actual physical output as far as I can tell. I have no way to create more web feeds than the 2 and I don't have an easy way to create virtual outputs.

vassbo commented 11 months ago

Okay. I have a couple of suggestions that might work for you:

  1. Create a new seperate output called e.g. "Live".
  2. Enable the OutputShow option, and set the "OutputShow Output" to "Live"
  3. Create a new style for each of the different views: "Lyrics", "Scripture" and "Liturgy", and set the desired template, and more for each.
  4. On the first slides in the shows, right click, select "Actions", then "Change output style": set "Outputs" to "Specific outputs", then change the "Live" output to the style matching the slide, e.g. if it is a song, select "Lyrics". This will change the style of the "Live" output until it's updated again.

As for the StageShow you can have as many layouts as you want. They have to be set manually, but I can add an action to change the stage layouts on slide activation.

This is what you might need as well, right?:

Let me know if I am correct, or you mean something else.

Thank you so much for the donation! I helps.

Benjamin72070 commented 11 months ago

I think you covered everything and understood my requests and suggestions. I am not sure exactly what you mean by web output layer? In essence what I mean is similar to the way Holyrics does with their web outputs. Their are 4 web pages served via the web plugin. One sends the main output. The other three are text only outputs that can be formatted via custom CSS. Your program is much more extensible though.

vassbo commented 10 months ago

You can now enable "Output screen" in the "Stage" page under "Slide" options on the right. This will add a stage output as a normal output where you can enable NDI or alpha key layer.