Giter VIP home page Giter VIP logo

Comments (12)

b3ck avatar b3ck commented on August 18, 2024

Yes just as long as it outputs a stats page in the same format as the 1.7 one in NOALBS, you could also try using the built-in NMS, then you don't need any nginx at all.

from nginx-obs-automatic-low-bitrate-switching.

msoultan avatar msoultan commented on August 18, 2024

So I figured I'd give NMS a try and you actually just solved a problem we've been going nuts over - first, whenever we'd connect OBS to our nginx rtmp server, it would take a while for the feed to show up on OBS running on that server as an input source - with NMS, it starts up near instantly! Also, we were having issues with nginx where it would sometimes give us a grey screen instead of the feed, and sometimes it would just fail such that we'd have to stop the source OBS and then restart the feed on the server OBS as well - with this setup, it loads/unloads the feed much more effortlessly. Cool - I'm definitely gonna play with this some more :)

Thanks!!
Mike

from nginx-obs-automatic-low-bitrate-switching.

b3ck avatar b3ck commented on August 18, 2024

Also use Media source instead of VLC Source, change the the settings to this:
Screenshot_20210209-040142_TeamViewer

But with your rtmp url etc..

from nginx-obs-automatic-low-bitrate-switching.

msoultan avatar msoultan commented on August 18, 2024

Ok, so is that a recent change? I could swear this wasn't there before, but I could very well be mistaken. It seemed like all the documentation/posts were recommending to install VLC and then use a VLC media source for rtmp sources.

Btw, this NMS server - is this essentially the same thing as Nginx with rtmp? In other words, is this a production-quality rtmp server? I've never worked with node.js stuff before and all the guilds recommend using Nginx so that's what we used... but I'm open to try new stuff :)

Thanks so much for your help! This NOALBS tool is realy cool!

from nginx-obs-automatic-low-bitrate-switching.

b3ck avatar b3ck commented on August 18, 2024

Yeah I believe it changed starting v26, Node-Media-Server is very production ready and can be used and relied on professionally, my tutorial video says to use VLC and VLC source etc.. as the Media Source wasn't as reliable. But now it is by far the best way to go.

from nginx-obs-automatic-low-bitrate-switching.

msoultan avatar msoultan commented on August 18, 2024

Very cool! Ok, well, I guess I'll be doing some more reading on NMS. Thanks!!

from nginx-obs-automatic-low-bitrate-switching.

msoultan avatar msoultan commented on August 18, 2024

So is there any documentation anywhere on what directives can be used in config.json? What I'd like to do is set up multiple applications, some for ingest into our server, and some to push to multiple locations (i.e. push to two different Twitch accounts). I looked everywhere but I can't seem to figoure out the correct syntax to accomplish this. This what I use for Nginx:

rtmp {
	server {
		listen 1935;
		chunk_size 4096;

		# Input ingest that feeds into OBS
		# --------------------------
		application live {
			live on;
			}
		
		# Splitter ingest that comes from OBS
		# --------------------------------
		application splitter {
			live on;
			push rtmp://live-sfo.twitch.tv/app/[stream key1];
			push rtmp://live-sfo.twitch.tv/app/[stream key2];
			}
		}
	}

from nginx-obs-automatic-low-bitrate-switching.

b3ck avatar b3ck commented on August 18, 2024

That doesn't go in the config.json for noalbs, that goes in the nginx nginx.conf file.

Try following this: RTMP Multistreaming

Let me know how it goes.

from nginx-obs-automatic-low-bitrate-switching.

msoultan avatar msoultan commented on August 18, 2024

Sorry - my message was so unclear it's horrible!! Lemme try this again:

What would be the comparible directives that I would use for NMS to achive the same results as the nginx.conf example I have in my previous message. I looked on the NMS github page and I couldn't find any listings of all the directives similar to what is availble for the nginx rtmp module.

from nginx-obs-automatic-low-bitrate-switching.

b3ck avatar b3ck commented on August 18, 2024

Okay so NMS makes this a bit tricky, because the relay directive just adds the key you're streaming to, to the end of the rtmp url for the relay, example config:

    "rtmp": {
        "application": "live",
        "key": "cam1"
    },
    "nodeMediaServer": {
        "rtmp": {
            "port": 20000,
            "chunk_size": 60000,
            "gop_cache": true,
            "ping": 30,
            "ping_timeout": 60
        },
        "http": {
            "port": 8000,
            "mediaroot": "./html",
            "allow_origin": "*"
        },
        "relay": {
            "ffmpeg": "C:/ffmpeg/bin/ffmpeg.exe",
            "tasks": [
                {
                    "app": "live",
                    "mode": "push",
                    "edge": "rtmp://ord02.contribute.live-video.net/app/example_stream_key"
                }
            ]
        }
    },

And I stream to /live/cam1, it tries to push the relay to rtmp://ord02.contribute.live-video.net/app/example_stream_key/cam1

the only way I can get around this is to use example_stream_key as my key, so I was able to get it to work like this:

    "rtmp": {
        "application": "live",
        "key": "example_stream_key"
    },
    "nodeMediaServer": {
        "rtmp": {
            "port": 20000,
            "chunk_size": 60000,
            "gop_cache": true,
            "ping": 30,
            "ping_timeout": 60
        },
        "http": {
            "port": 8000,
            "mediaroot": "./html",
            "allow_origin": "*"
        },
        "relay": {
            "ffmpeg": "C:/ffmpeg/bin/ffmpeg.exe",
            "tasks": [
                {
                    "app": "live",
                    "mode": "push",
                    "edge": "rtmp://ord02.contribute.live-video.net/app"
                }
            ]
        }
    },

then whatever I was using to stream via RTMP I would stream to /live/example_stream_key and then it would stream to twitch and I would use that example_stream_key in OBS as well to pull in the video feed as a source in a scene.

I am sure there is a way around this and I'm looking at the code now to see if there is a work around or maybe I just missed something.. either way here is a solution.. a shitty solution.. but still a solution =/

P.S. - You need to have FFMPEG somewhere and make sure the FFMPEG option in the relay directive is pointing to the correct place.

from nginx-obs-automatic-low-bitrate-switching.

msoultan avatar msoultan commented on August 18, 2024

That is a weird quirk! I'll have to play with it tomorrow when I get a free moment to get a better feel for the behavior. Is there a list of all the various directives and associated options (i.e. relay, rtmp, nodeMediaServer, etc), or are you just digging through the code? I do a decent amount of programming with Python, but I haven't done anything with node so I'm not really sure where to even look... I might have to start playing with it.

So I posted a somewhat simple example - my ultimate goal is to have multiple ingest options so that multiple DJs can connect into my rtmp server using different rtmp ingests (i.e. rtmp://server/live/dj1, rtmp://server/live/dj2, rtmp://server/live/dj3, etc) so that will get interesting as the Twitch ingest keys are entirely different than the inbound feeds (were this limitation prove to be the only way to accomplish this).

If it helps, I'm happy to post something to the NMS github as well as this is kinda unrelated to NOALBS, but I'm super-appreciative for your help!!

from nginx-obs-automatic-low-bitrate-switching.

b3ck avatar b3ck commented on August 18, 2024

If it helps, I'm happy to post something to the NMS github as well as this is kinda unrelated to NOALBS

Go for it, I'll keep an eye out for it.

And no problem.. I was super curious if NMS had the ability to do this as well =)

I was looking through this: https://www.nodemedia.cn/doc/web/#/5?page_id=11

And this: https://hub.docker.com/r/illuspas/node-media-server

Yeah this is not even in NOALBS scope, mainly because NOALBS can only monitor one stream key..

from nginx-obs-automatic-low-bitrate-switching.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.