Bug Report iOS Streams / OBS Scene Transition Issue (See attached video)

simspace

Member
I am live streaming 3 iOS devices to an RTMP nginx module running on my iMac. Each device is represented in OBS as a scene. When I transitioning between the scenes / devices, I am experiencing a black screen first. The transitions are not smooth. This video shows the problem I am having while live streaming from several iOS devices.


I'd appreciate any advice as to how can I fix this problem?

Thanks,
Chris
 

simspace

Member
Thanks for the reply. I have tried several transitions, including a simple cut. Nothing solves this issue.

The more I think about it, I don't think this is a transition issue. I think it's a scene switching / network connection issue.

At first, I thought it might be an issue with NGINX and RTMP running on my iMac while OBS was running on the MacBook. So I installed NGINX and RTMP on the same computer as OBS. But the problem persisted.

My theory:
there is an issue (either intentional or a bug) with WIFI / network connections while scene switching. Here's what I'm guessing is happening ...

Each scene I create represents a different an iPhone camera. That is, each scene contain 1 VLC source that connects to an iPhone's RTMP stream.

When I switch from SCENE-1 to SCENE-2, I think the SCENE-1 VLC-Source connection is closed or broken and the SCENE-2 VLC-Source connection is established. I think establishing that new network connection is slow, and so I see a black screen while the VLC-Source connection is being established.

To prove my theory, I created and tested 1 scene with 3 VLC sources. With one scene and multiple VLC sources, I used the hide/show layer icon to "switch" between devices streams. This works as expected. The switch is seamless and immediate (no black screens). So, it seems all connections are active and concurrent when multiple VLC sources are within 1 scene. However, you can't perform transitions like fades when hiding layers in a scene.

Can someone verify that my theory is correct? If so, is there a way to ...

(a) Keep one VLC source connection alive until the next VLC source connection is active? Basically buffer SOURCE-A until SOURCE-B is connected and ready for the scene switch. Or better yet ...

(b) Keep all network connections alive, active and concurrent, just like what seems to happen when one scene contains multiple VLC sources. Maybe this "keep-alive" can be an option users can select when creating the VLC source.

Thanks,
Chris
 
Last edited:

simspace

Member
I posted this back in November. I let it sit a while hoping I would get a response. Nothing yet so ... bump!
 

FreeKillZero

New Member
The "Restart playback when source becomes active" property is enabled for a Media Source by default. I wonder if disabling that has any effect?

My line of thinking is that if a particular source is not active (eg, an RTMP stream that's not "participating" in a scene) that it's not streaming that RTMP source-no content is in memory. When you switch scenes (with the default option enabled), it has to start that particular RTMP stream up, causing the black,then the gray until a keyframe is loaded.

My understanding is that if that option is unchecked, it will actively stream the RTMP source, even if it's not showing - making the transitions more instantaneous.
 

simspace

Member
The "Restart playback when source becomes active" property is enabled for a Media Source by default. I wonder if disabling that has any effect?

My line of thinking is that if a particular source is not active (eg, an RTMP stream that's not "participating" in a scene) that it's not streaming that RTMP source-no content is in memory. When you switch scenes (with the default option enabled), it has to start that particular RTMP stream up, causing the black,then the gray until a keyframe is loaded.

My understanding is that if that option is unchecked, it will actively stream the RTMP source, even if it's not showing - making the transitions more instantaneous.

This sounds very hopeful. I will test that out tonight. Thank you @FreeKillZero!
 

simspace

Member
The "Restart playback when source becomes active" property is enabled for a Media Source by default. I wonder if disabling that has any effect?

@FreeKillZero that was the problem. I changed all media sources to "Always play even when not visible" and the transitions are perfect. THANK YOU!!!!!!! :)

I will record an updated video and show the settings that were changed.
 

DanK

New Member
Apologies for posting in an old thread, but I'm having a similar issue when switching between two scenes that both have Syphon sources in them. I get a black screen for about half a second. I've tried switch, fade and wipe transitions but it affects all of them.

I don't see an option to "keep active" or "don't restart playback" for the Syphon inputs, do you know if there's anything like this that can be done for Syphon?

For what it's worth, the sources are the v002 Camera Live Syphon server. I'm trying to switch between video inputs from two different Canon cameras. I've forced MacOS to open two copies of Camera Live by using the "open -n" command from the shell. Both instances show up as Syphon sources in OBS.

Edit: There's nothing unusual in the log files, it just says "User switched to scene: xxx".
 
Last edited:
Top