Question / Help Any way to see the streming output on VLC+Youtube live? (keep recording)

Barabba

Member
Hi mates, my configuration is a bit particular, I need to:
1) Stream to Youtube @720p
2) Record locally file @1080p
3) See live on a laptop+monitor that runs VLC, @720p. The youtube stream will be perfect, but watching in youtube means add lot of delay, and I need to go live just to watch my feedback monitor, which I would be always active

I've read it's possible to "record" on ffmpeg instead of file, and create an RTSP stream, but in this case I've to give up the idea to record a local file. Since VLC support lot of protocols, there is any way to connect to OBS on its opened ports? I see there is any TCP opened, just some high UDP ports, are them useful for me?
Any other trick like add plugins? Or should I stream all @1080p to a second istance of OBS, and there I need to reduce stream, stream live to youtube and "record" to ffmpeg?
Thank you a lot!
 
multiple instances of OBS in a single session is a bad idea..
If you're going to do everything on one computer, you would need to setup a VM, so you can preview the encoded output over network in vlc.
Not going to recommend it tho, a second physical computer is better.
Dont really agree with your step 3) because once you know it works it works, and if the connection or such fails or it lags, there's usually nothing u can do from your side - given you are using optimal settings and so there isn't really anything you can "fix" on your end. It's more that you want to have control for testing new settings and seeing if that works ok. And so you can setup a separate channel for that that's hidden and check it yourself after the fact.
 
Thank you for your kind reply!
What I got is to use 2 different computers, but how can I obtain the result with the second computer? Sorry I'm a newvbie, it looks with OBS I can stream only to youtube, and record to a file or record to ffmpeg and stream instead of record. So I need 3 different computers, with the first I stream to Youtube and record multicast with ffmpeg the 1080p, with the second I write the stream to a file, with the third I reduce it to 720p and stream udp to VLC. Looks crazy.

I didn't catch a lot about how to check the result, fix, troubles and so on, thanks for this help but I think it's the second phase for me, now I need to solve this first step.
I tried ffmpeg but I got a black screen on VLC; udp works but no video and no audio, I followed the instructions on the topic, strange. Maybe ffmpeg.exe encoder is missing in OBS? where can I set the ffmpeg path?
I've found an optimized ffmpeg plugin (https://obsproject.com/forum/resour...tudio.826/updates?page=2#resource-update-2298) and can't find the installer, but now it calls "StreamFX" and maybe the author seems have deleted all previous releases. I've installed it but I cann't figure how what is it, how to use it in OBS, how it works, and how can I optimize my ffmpeg at least to try it. Opening OBS it's really like before, no new options, no video tutorials about it ((
 
Last edited:
I thought about it a bit.. I would be able to set it up all on in 1 computer, without VM. But it would be more of a "I can do it, so i did" thing. However, it would probably work quite ok for me, since i have a quad channel computer and 12 cores. It would be some added system lag, but things have improved A LOT in software as well over even just the last 2 years since i built the pc. So what wasn't really worth it before, is a few percent more possible now. Which makes all the difference... But a second computer is still better.

You can stream OBS to OBS from each computer, or a use a nginx/rtmp solution, or actually - both. It's easier if you think about this in the way of cabling stuff together as a chain with inputs and outputs. What needs to go where, and why does it have to do that.

If u want to call ffmpeg it either should be in the obs folder or preferrably in the system path. You can add a folder to the path with path=%path%\newpathtobeadded or set env etc, i just do it from system settings or properties of my computer after system install since i do some other changes there.

I use zeranoe's ffmpeg simply because he/she updates it frequently enough so i dont have to do it myself. nginx i compile from sources with my own settings. Stream FX was renamed i think, isnt it just stream effects now or something? It should be there.
It works as with all other filters, find it under the filters tab, right click an appropiate source or even scene.

One of the main reasons for going for a dedicated encoding box with a specific solution with nginx etc, is to remove some annoying issues in regard to capture. Tear free picture from high fps capture being one of the main reasons, and stability in self built solution so u have the control, not any vendor drivers.

oh and to answear the question in title:
Any way to see the streming output on VLC+Youtube live? (keep recording)

you do that with passing rtmp://ipofcomputer:port/data to vlc, so from whereever it is being encoded, you will see it on your connected computer/s. In nginx you can have a separate adress for data being what's incoming or outcoming, ie from not encoded to encoded.
Best practice i have found is sending data lossless from main pc to encoding box, as it significantly reduces load for encoding pc.
This will require at least 300mbit in a single lane. Which means a 4gbps nic in a single port, as in just get a 10gbps card.
Alternatives are sending data over hdmi or wifi, the latter cannot be recommended.
 
Last edited:
Thank you for your kind support!
I?ve solved ffmpeg after a couple of hours figuring out, in my opinion it's a mistake from OBS to don't clearly specify how to add ffmpeg, because it's not cointained in the app, quite obvious for copyright reasons but why don't tell it? Why don't put near a button to "Locate ffmpeg encoder"? It suddenly make everyone understand that OBS doesn't contain it and need to be installed! Wow.

About my secondo problem, I've figured out too that I need to add the string on encoder like ?pkt_size=1316 (for example udp://127.0.0.1:9999?pkt_size=1316 to be allowed to open with VLC on the same PC the url udp://@:9999).

ok, now about my original question, I suppose there is no way to write down a file and in the same time stream with the recorder yes? Or maybe there may be an additional paramenter for ffmpeg that it can somehow write itself a file? I suppose not.
So I need to compress and stream to a second OBS, who have just to write down files without recompress them, is that possibile? Or better I should use something else, for example a VLC set to direct record the streams? And use a second OBS to compress the first stream and create a new one for the VLC remote station.
There is no way to use the live stream for youtube to send it also to VLC? There aren't additional plugins for OBS that add an output?
Thank you a lot!
 
No i agree with their stance on that. The thing is that there is a threshold here, and it requires you, us, to take action to get involved, to understand, to learn, to be able to think about solutions. Streaming isn't served ready to do our bidding. Tho quite a lot is automatic, ie donation things. Which is actually the only thing i never thought about, probably just for that reason, nothing to learn there and doesnt do anything for quality or performance. Useless overlays !!! ;)

I rarely post a full solution to anything on purpose, because its not going to help the other user anyway. And usually in the cases i've done that, they a) didnt understand it anyway b) still think they shouldnt need to do anything on their own. It's quite weird actually. (Was a guy in another thread recently who couldnt even understand how to fix playlists in vlc with youtube. I was baffled.) but most importantly c) the user needs to become able to help him/her-self. Otherwise its all pointless.

You need to make a batch file or such on the encoding pc. Or use obs to control it. OBS will probably get there or maybe it has some function for that already, i think its in the works. I havent really looked into whats new in obs lately. More concerned with hardware stuff, but almost everything done on that.
There's literally nothing to stop you from encoding,recording,streaming and previewing, all at the same time with ffmpeg, as it also is the case with obs. It's just that here in this case OBS is just showing you your input, not your output finished encoded material. And that with a manual solution you have a choice if you want to preview the input or the output of your data from obs.

Wiki page for x264 is really great, also the wikibooks page. I forget which one was most up to date. Just remember pending on if batch file or obs, the parameter/command names and such will be different Which is why this is a bit confusing.......

Im certain you can do it all from just 1 pc and just with obs and some plugins, but i havent looked into that. But if you can think it, you can almost be certain someone has done it, or are doing it right now. Most of the time. Which is true for most things in life btw. It's a collective brain thing.
I think it would be easier to just start with a local dump to rtmp and testing how that goes tho.

Random thought, if you could have 2 gpu's, in theory could do 2 separate encodes. Not sure how that could work, also some nvidia encoders have just 1 session, newest tend to support 2 at the same time. Iow, research.

Your real, actual problem here is going to be to decide how to do this, not if you are going to make it. Because you can do it. You simply just don't see how it's going to pan out yet.

Need good cpu, good gpu, enough/fast ram, ssd for recording. It doesnt have to be expensive, but it needs to be the right components and it will need good thermal solution. In general dont use a laptop for any encoding work. It will probably kill it. Maybe newer ryzen 4000 laptops will be great for it, but i doubt it, they're still going to be laptops. Going to find out tho.
 
thank you for your answer,
no I don't have particular needs on hardware, I'm using 3 1mpx IP cameras streaming in RTSP, which are quite easy to decompress, no particular filters, a slideshow and some other stati infos on the screen.

If it would be possibile, somehow, to extract and send to VLC of the monitor, the 720p live youtube stream I'll be really happy, and I just need to encode the 1080p original stream.
At this moment it looks not possible, or maybe someone can explain how to.. )
 
I wish you would have mentioned the 3 cameras earlier. If they are any good ip cameras at all they should be able to go into a media source into obs no? Certainly if they can play off to localhost all you have to do is to get their ip. I need more knowledge on the cameras, but this became now a completely different thing.. I did a quick search and they seem to gather around at port 8080. This should be fairly easy. Dont u have any info on their default ip or something?
-
You could always just set vlc to automatically play the file and select it keep playing regardless, and it should automatically play it once it's created, in theory. But im not sure if it would be able to before recording was finished from obs, as i havent tested it. You can use vlc to play off any stream over the local network that you have access to, obviously.
 
Thanks for answer, I think you got me completely wrong ) yes I have 3 input sources, but I can have also 10 ones.. I told it just to describe my CPU will not be critical.

What I need to know is how can I write down files @1080p, stream on Youtube @1080p too (I guess it's better now, since I'm seeing results) and stream to a remote monitor with UDP @720p. I need to know only this.What jumps in my mind:

1) Maybe there is a way with one OBS, maybe enable a third output, maybe by scripting
2) Stream the record to multicast and use other 2 OBS, one to record file, the other to steam udp. (looks horrible, but it seems the only way)
3) Add an external possible plugin I've figured out yet.
4) Use VLC to record the stream to file, somehow.

Thanks a lot for help
 
It's very hard to help you when you're holding back vital information. A solution that scales for 3 inputs isnt going to hold for 10.
It would be much easier to keep the same resolution across sources, since you can then just copy the encoded output to the preview laptop with the final encode. If u want to have scaleability up to 10 inputs, your answear is in a nginx/rtmp solution, and there's a guide on that on this forum.
I think you are trying to reach a over complicated solution tho for what should just be a matter of importing the cameras into obs using either a network switch or decent wifi, whatever they work over, those ip cameras. The fact that i still have to guess how your cameras work at this point just tells me this is going to take much more time. If they really are just 1mpx cameras, you should have fixed this by now already.
rtmp guide:

For you the important part would be Server: rtmp://<your server ip>/live where "live" is not necessarily "live but rather a dataset of input or output.

edit: also check : https://obsproject.com/forum/resources/obs-studio-send-an-udp-stream-to-a-second-pc-using-obs.455/
 
Last edited:
thank you for answer :)
I need a different answer, I would know if there are any ways to stream in Youtube, stream udp to local and save to disk, I can imagine 4 possible asnwers/solutions:

1) Maybe there is a way with one OBS, maybe enable a third output, maybe by scripting
2) Stream the record to multicast and use other 2 OBS, one to record file, the other to steam udp. (looks horrible, but it seems the only way)
3) Add an external possible plugin I've figured out yet.
4) Use VLC to record the stream to file, somehow.
 
just to be clear, you could stream to your nginx server, from there call ffmpeg to do various encodes and record in various formats to any set of services you'd like. Be it with cpu or gpu encoding, actually you can decide per in/output. It can do everything you need. Period.
In theory you could do it all on one computer, and i suppose if the sources are low bandwidth, the encoding work could be easy enough to do it all on one pc. A good reason why a 2 pc setup is recommended is also because of production work and/or gaming, will be much less impacted by encoding work and writing recording to disk.
 
Back
Top