|
On October 02 2012 04:05 ruXxar wrote: Im trying to stream but the program keeps crashing on me. When I finally thought I was ready to go ahead streaming the program crashed again. When I opened it again the preview is just a red background for my dxtory input. No idea what to do.
Have a look at http://www.openbroadcastersoftware.com/forum/viewforum.php?f=6 , or, start a new thread there about your problem, make sure you give plenty details about it.
|
Got this set up finally-- this program is AMAZING! So smooth. Thanks very much @ obs.Jim :D I'll plug it as much as I can!
|
United Kingdom20154 Posts
For reference, Quantic.Illusion uses OBS. His stream is one of the most smoothest and best looking streams out there at 3000kbps/720p/60fps. From what I understand, it is being encoded with a consumer-level CPU. With XSplit, these sorts of results can only be achieved with a enthusiast-level CPU or a heavily over-clocked, high-end consumer CPU.
OBS uses x264 and encode performance is almost identical to Xsplit. You can encode 1280x720p at 60fps on the Veryfast preset while playing sc2 on a stock i5 2500, whats the big deal? Edit: As Illusion himself said, he is using a stock 3570 (a very very minor at best upgrade from a 2500) and you can do the same with Xsplit, FFsplit, or any other x264 encoder using such a cpu. Its not difficult to encode 1280x720@60fps. My modestly overclocked i7 950 can encode 5+ minute videos of replays at 2x speed without dropping a frame at 1920x1080@60fps, and sandy bridge runs laps around bloomfield cpu's, ivy even more so.
I get worse framerates with OBS too. Not to hate, the ability to toggle preview (and thus performance hits) and instant start up is sweet, and there might be less frame lag with it, but "i can now do x resolution at y fps" is complete bullshit, there are no significant changes to encoding.
This shouldnt be another bandwagon to jump on like FFsplit was, i respect that program too but the claims of "x fixes all my issues or does something soooo much better" are almost entirely unfounded and bullshit, or very specific to one person. Cant we just talk about this in a scientific way with evidence and constructive ideas instead of rushing to the newest hype train, reddit style?
|
Cryo - it has nothing to do with the encoder, so you may be misunderstanding the situation. The methods I'm using for capturing, as well as the fact that my application in general uses as little CPU as humanly possible are why people are getting boosts in framerates and performance. So no one should be referring to the encoder when they're talking about improved performance/framerates or anything.
If you're using monitor capture, make sure aero is disabled in the settings, as aero will completely kill full monitor capture framerates. If you're just streaming one game, say starcraft, I would recommend window capture as it's faster than monitor capture, and you can leave aero on with window capture as well if desired. You may have to turn on v-sync in starcraft as some people suggested, but feel free to play around with it and see how it works out.
|
United Kingdom20154 Posts
On October 02 2012 04:46 obs.Jim wrote: Cryo - it has nothing to do with the encoder, so you may be misunderstanding the situation. The implementation of software capture I use, as well as the fact that my application in general uses as little CPU as humanly possible are why people are getting boosts in framerates and performance. So no one should be referring to the encoder when they're talking about improved performance/framerates or anything.
If you're using monitor capture, make sure aero is disabled in the settings, as aero will completely kill full monitor capture framerates. If you're just streaming one game, say starcraft, I would recommend window capture as it's faster than monitor capture, and you can leave aero on with window capture as well if desired. You may have to turn on v-sync in starcraft as some people suggested, but feel free to play around with it and see how it works out.
Ive been seeing a lot of people say "I can stream at XY settings now" and such when they should have easily been achievable with several other methods though, to unfair extents. It just makes me angry because people did the exact same thing with FFsplit, and there are at best slight improvements. People are too quick to judge what they dont understand.
Perhaps you could document some of the ways you have increased performance, or the differences between methods?
|
I actually fully accept and welcome skepticism. Without skepticism, there would be no such thing as science and technological development.
If you want to know specifically all that I do, my application is completely open source. You can browse the source code directly at https://github.com/jp9000/OBS - or on sourceforce, or download it as a zip on the website. But I mean I explained above in the second paragraph my recommendations to increase FPS and performance, if you are having trouble with it.
|
United Kingdom20154 Posts
On October 02 2012 04:57 obs.Jim wrote:I actually fully accept and welcome skepticism. Without skepticism, there would be no such thing as science and technological development. If you want to know specifically all that I do, my application is completely open source. You can browse the source code directly at https://github.com/jp9000/OBS - or on sourceforce, or download it as a zip on the website. But I mean I explained above in the second paragraph my recommendations to increase FPS and performance, if you are having trouble with it.
Im not advanced enough to be reading source code, i would love to read a more in depth explanation of specifics with capture methods and other performance details though. I have no performance issues (>200fps capturing @60fps)
|
Cyro, http://www.twitch.tv/hwd2ro/b/334118858, using xsplit,same setup 720p 3000kbps but only 25 fps (we know why only 25fps, not to speak about audio), even so, you can tell the difference (hell the amount of stalls/min while replaying is quite big ) compared to http://www.twitch.tv/hwd2ro/b/334096703 (using OBS) Keep in mind, this was done on an i3 2120/GT 430 which is a good CPU/GPU combination for casual gaming without having many expectations from it. To be honest I'm quite surprised (in a good way) about "Jim's" little project, having a look at the source code too.
|
I love the idea of open source streaming software. It made so easy to put many useful addons (for example ladder stat) into the package in the near future.
Cyro, I didnt want to be harsh but your post is completely annoying. You'd better did some test with solid numbers yourself (which is not hard at all and also requires 0 coding knowledge) before you make any conclusion. Otherwise, you are not helpful at all.
|
installed / configured / used . i have to say only one thing : BEST !! not even comparable to xsplit ( free ) , and audio is cristal clear . thanks to all ppl involved in making this program .
|
Cryo - Well it's difficult to get too in depth if you're not a coder. It's not just the method of capturing I do, it's more my entire app engine design. All stuff, when possible, is done on the GPU to maximize performance. And capturing and such are all done directly to the GPU when possible. Even downscaling and image space conversion is done on the GPU. The way I currently have the application designed balances out both CPU and GPU usage in a way that has had pretty awesome results. I also make heavy usage of SSE to minimize CPU load as much as possible, from the audio system to data copy, to any actual required CPU image manipulation.
If you were just meaning more specifically the capture methods as you stated, the capture code really is fairly standard except that it just copies directly to the GPU instead of doing anything on the CPU. Window capture gets parituclarly great results because as is implied by the name, it only captures from a specific window, and has far less overhead from capturing from an individual window than the entire monitor.
|
On October 02 2012 04:52 Cyro wrote:Show nested quote +On October 02 2012 04:46 obs.Jim wrote: Cryo - it has nothing to do with the encoder, so you may be misunderstanding the situation. The implementation of software capture I use, as well as the fact that my application in general uses as little CPU as humanly possible are why people are getting boosts in framerates and performance. So no one should be referring to the encoder when they're talking about improved performance/framerates or anything.
If you're using monitor capture, make sure aero is disabled in the settings, as aero will completely kill full monitor capture framerates. If you're just streaming one game, say starcraft, I would recommend window capture as it's faster than monitor capture, and you can leave aero on with window capture as well if desired. You may have to turn on v-sync in starcraft as some people suggested, but feel free to play around with it and see how it works out. Ive been seeing a lot of people say "I can stream at XY settings now" and such when they should have easily been achievable with several other methods though, to unfair extents. It just makes me angry because people did the exact same thing with FFsplit, and there are at best slight improvements. People are too quick to judge what they dont understand. Perhaps you could document some of the ways you have increased performance, or the differences between methods? I'm sorry, but this statement really annoys me, how can you possibly say that we are wrong when WE are the ones testing it on our system. I have seen MUCH higher frame rates using this program than both ffsplit and xsplit, and as soon as i get home ( this weekend ), i will show you exactly what i mean.
|
On October 02 2012 05:43 obs.Jim wrote: Cryo - Well it's difficult to get too in depth if you're not a coder. It's not just the method of capturing I do, it's more my entire app engine design. All stuff, when possible, are done on the GPU to maximize performance. And capturing and such are all done directly to the GPU when possible. Even downscaling and image space conversion is done on the GPU. The way I currently have the application designed balances out both CPU and GPU usage in a way that has had pretty awesome results. I also make heavy usage of SSE to minimize CPU load as much as possible, from the audio system to data copy, to any actual required CPU image manipulation.
If you were just meaning more specifically the capture methods as you stated, the capture code really is fairly standard except that it just copies directly to the GPU instead of doing anything on the CPU. Window capture gets parituclarly great results because as is implied by the name, it only captures from a specific window, and has far less overhead from capturing from an individual window than the entire monitor.
Nice work Jim and thanks for the explanation here which makes a lot of sense. SC2 is a very very CPU intense game. For most ppl play SC2 while streaming the bottleneck is CPU considering 99% of ppl stream on medium/high instead of ultra graphic obviously. If your working focus is GPU I believe you may found a valuable angle. Havent test this software myself yet going to do it tonight but I think you have make a good point why this software seems outperforms others.
|
I'm getting 0xc000007b error after the dx3d10_43... problem after problem here ^^
|
I poked around the source a bit and did some very sloppy benchmarks, looks like the performance gain is primarily due to moving tasks like scaling and capturing off the CPU to the GPU. Depending on how you're using it, OBS can give a pretty noticeable performance gain, especially over FFSplit. I have an old Nahalem i7 930 @ 4.2Ghz, and Starcraft II barely stresses it, even in team games. My gpu however, is a measly gtx 460, which means that moving processing off the CPU and onto the GPU has little to no impact on performance. If, however, you have a 2500k and a 560ti, you'll see a much larger performance gain as you will have some extra power on the GPU side to unlock.
|
On October 02 2012 06:20 YouthSC wrote: I'm getting 0xc000007b error after the dx3d10_43... problem after problem here ^^ Did you update your DirectX?
|
YouthSC - are you getting a DX3D10_43.dll missing error? if so, you need to update your version of directx by downloading it here - http://www.microsoft.com/en-us/download/details.aspx?id=8109 -- this will be done by the installer automatically at some point in time in the future.
If you're getting another specific error that's from my app, please send me the log file if possible. obs.jim@gmail.com is my email.
|
On October 02 2012 06:32 obs.Jim wrote:YouthSC - are you getting a DX3D10_43.dll missing error? if so, you need to update your version of directx by downloading it here - http://www.microsoft.com/en-us/download/details.aspx?id=8109 -- this will be done by the installer automatically at some point in time in the future. If you're getting another specific error that's from my app, please send me the log file if possible. obs.jim@gmail.com is my email.
I e-mailed you! It's got nothing to do with DirectX I believe!
|
Something else I want to say about this program- I'm not very tech savvy, so I don't know exactly how much better performance I'm getting, but regardless, the lightness of OBS is really really nice. It opens quickly, responds fast, and is clean and neat. Someone who has never streamed before could learn how to stream within 5 minutes of using this thing- it's really that simple.
Thanks again!
|
THREE CHEERS FOR OPEN SOURCE PROGRAMS!!!!!!!!!!!!
When a real open source gem like this comes out (thanks for sharing and getting it on my radar btw) I get a nice warm fuzzy feeling inside me that the world really isn't so bad after all.
A million <3's to the makers and users of open source stuff. Gonna look into this beauty soon, maybe I'll be able to afford to stream or something!! :D
|
|
|
|