Spout

Including Spout Installer in my app package

Dear All,

My app works with Spout and SpoutCam to cast images to other apps, and at the moment I ask users to visit Spout github page and download the installer (https://github.com/leadedge/Spout2/releases/tag/2.006).

However, I am now wondering if I can include the installer with my app package, so that the users don’t have to visit the site. I am not familiar with Spout’s BSD 2-Clause License, but from what I understand, the license seems to permit such thing. However, I am not sure.

Therefore, I would appreciate if you could give me an advice on this.

Many thanks in advance for your help!

Kojiro

Hi Kojiro,

you are welcome to use the installer. But I don’t recommend it.

Recently I have updated the Spout distribution download page and this is what your users should be using. I included a download in GitHub releases while the website was under construction but might replace it with the download page link which is updated separately.

It is now a portable installation and each program establishes it’s own registry settings rather than by the installer. Also SpoutCam has it’s own settings program and registration button. It is quite easy to do if you follow the instructions in the readme pdf.

I took this step due to serious problems with the installer. It was being intercepted by Windows Defender as well as anti-virus programs and in some cases could not be installed or even downloaded. The issue is lack of a certificate for the installer.

The same issue applies for each separate program but that does not seem to be as much of a problem. I am looking at ways to simplify the process and perhaps re-introduce an installer with portable option. If you have experience with this sort of thing I would be interested in your suggestions.

As for BSD Clause 2 licencing, binaries can be re-distributed as long as the copyright notice is contained in the re-distribution.

Many thanks for your reply!

I also tried the new version (Spout_2006_update-3a.zip) downloaded from https://leadedge.github.io/spout-download.html. However, the images on Spoutcam have color issues like this (top is from my Unity app, bottom is from spoutcam output seen on Zoom)

The color scheme is now completely wrong. This does not happen when I used the installer from the Github site. That’s one of the reasons for using the installer. By the way, I use Keijiro Takahashi’s KlakSpout plugin to send images from my Unity app to Spout. I guess the problem is related to 64bit, but I don’t know what to do with it.

If this color issue can be solved, I may include the new version in my app distribution.

Any help would be highly appreciated!

Best regards,

Kojiro

What you see is BGRA instead of RGBA. I missed this because Unity exports RGBA textures and the new version of SpoutCam uses DirectX instead of OpenGL. Thanks for picking this up.

Fortunately I have been working on a DirectX sender which exports RGBA and have something to test. I should be able to resolve it fairly quickly.

I could reproduce the problem with the DirectX sender I mentioned, and have added conversion functions that allow for RGBA senders. I tested SpoutCam with both 64 bit and 32 bit hosts and it works OK. Many thanks for your feedback or else I would not have noticed this.

The Spout download has a new Update 3b which includes the revised SpoutCam files. All you need to do is run SpoutCamSettings, click UnRegister and Register again.

If you add SpoutCam to your application you will need to include at least the “.ax” binaries together with the SpoutCamSettings program in the same relative folder locations and also the program for Spout itself (SpoutSettings.exe).

As well as the formalities of licence requirements I would be grateful if you would provide your users with a link to the Spout download for acknowledgement, opportunity for documentation, donation and future reference.

I hope this works for your application.Virtual webcams can be tricky and some programs reject them. So if it gives any trouble, come back here and let me know.

Using the new update 3b, everything seems to be working fine! The color issue is now gone.

As with the issues with virtual webcams, Google (Hangouts) Meet does not recognize SpoutCam. So I have to use another video streaming app such as SparkoCam or manycam to bridge between Spout and Google Meet. Do you have any idea about how to get Google Meet to recognize Spoudcam?

Best regards,

Kojiro

I don’t have any idea why these programs reject SpoutCam. You are right that ManyCam does resolve it. There must be some way that ManyCam does this but it’s closed source.

I have just tested OBS Studio as an alternative to SpoutCam. It’s not a bridge, but rather a separate virtual webcam that could be compatible with Google Hangouts and Google meets etc.

  1. Install OBS studio
    https://obsproject.com/download
  2. Install OBS Spout plugin
    https://github.com/Off-World-Live/obs-spout2-source-plugin
  3. Install OBS virtual camera plugin
    Download and install - OBS-VirtualCam2.0.4-Installer.exe
    from - https://github.com/CatxFish/obs-virtual-cam/releases
  4. Start OBS studio
    File > Settings > Video
    Set canvas resolution - e.g. 1280x720.
    This will be the output size of the virtual webcam.
  5. Click on the Sources window at bottom left
    Click + Add
    Select Spout2 Capture and OK
    A properties window will pop up - click OK.
  6. Start a Spout sender e.g. the Spout demo sender
    The output will appear in OBS studio as 640x360 (the sender size) within the canvas (1280x720). You can stretch the image to fit, but this is just a test.
  7. Tools > VirtualCam
    Start if not already

Now the OBS virtual webcam is active.
Start a program and select OBS-Camera.
SpoutCam will be listed too but we are testing OBS.

Please let me know whether this works for you. If it does I will write this up as a separate post.

Many thanks for the info!

I tried OBS studio and it is working well for both Zoom and Google Meet. I am still looking for the way to directly send images to Google meet without OBS studio or other intermediate apps, but for the time being, this will do.

OK thanks for trying that. This could be useful for people, so I will document it further.

I don’t know why these programs reject virtual webcams but it seems to be a widespread problem, Zoom in particular.

One thing I forgot to mention is that, in case they are looking for resolutions typical for webcams, you can use SpoutCamSettings and set to something like 640x480 or 1280x720 and 30fps.