Question / Help 1080p 60fps - OBS locks up

Richard Neumann

New Member
We are streaming 1080p 60fps RAW YUV422 uncompressed video. OBS keeps locking up. Even in a down scaled window. We're new to OBS so we need some help/insights.
Wondering if we add on cam H.264 compression will that help?
Is there a resource that will show us how OBS is processing the incoming video streams?
Thanks and I appreciate your understanding if my questions seem naive.

Rich - SUB2r
 

FerretBomb

Active Member
Heya Rich. Please post a logfile of a test session from the Help menu; it contains a lot of back-end information that we need to be able to help. :)

How is the cam being delivered? Over HDMI/through a capture device, or directly via USB or its own PCIe interface card? Does the cam lock up when using its own software, or if it doesn't have any, through a third-party capture program like AmarecTV?
 

Richard Neumann

New Member
This is an experimental camera. We're running the stream from the camera through an FPGA and directly to the PC via USB3.0
It will run continuously on 3rd party capture software like AmCap. Oddly enough we find it runs better on a Windows 10 Brick than our higher powered Windows 7 and Windows 8.1 machines. At the moment no UVC commands so we access the cam through our own UI. Gives us access to the cam level registers over I2C. All of the image processing is done by directly accessing the sensor vs using an ISP. Pretty bare bones basic.

Just shut down the lab for the night. I'll be back down there tomorrow and I'll grab the log files.

Appreciate your help.

Rich
 

Richard Neumann

New Member
Here are the recent log files.
Hope you can help. We can't wait to generate some streaming demos.
Thanks
Rich
 

Attachments

  • 2015-12-21-1536-00.log
    57.4 KB · Views: 14
  • 2015-12-23-1718-52.log
    21.1 KB · Views: 4
  • 2015-12-23-1709-59.log
    28.7 KB · Views: 3
  • 2015-10-24-1430-36.log
    35.5 KB · Views: 6

sam686

Member
i7-4500U CPU 1.80GHz have 2 cores with hyperthreading, too slow for 1080p 60fps at "very fast" preset.

Change preset in advanced setting, or lower output resolution or frame rate.

If streaming to twitch, try setting video bitrate at 3500 Kbps or lower.
 

FerretBomb

Active Member
15:41:28: Total frames encoded: 1490, total frames duplicated: 1357 (91.07%)
15:41:28: Number of frames skipped due to encoder lag: 1306 (87.65%)
15:41:28: Total frames rendered: 186, number of late frames: 25 (13.44%) (it's okay for some frames to be late)

Yep. CPU's weak, and 1080@60 isn't going to fit over 1000kbps. You want all three of those to be (well) under 1%.

Generally a starting point is an i7-4790k (and that will probably struggle; a 5820k would be much better) and 6000kbps. Be aware that this bitrate is well into the 'here there be dragons' territory for Twitch, and potentially can end up getting your account banned as a denial-of-service attack. You'll also need to set Settings->Advanced->Keyframe Interval to 2 per Twitch spec.
If you're streaming to YouTube the bitrate isn't a problem, but the CPU will still need to be improved.

These are basic points though; I'm not honestly sure if the freezing is being caused by the mobile-grade CPU, or the new hardware... OBS handles DirectShow sources so if the cam is fully compliant it should work. On the other hand, OBS' video capture device source module is known to have handling issues. Why many, myself included, use Amarec or another solution to actually handle the video capture, and then Game/Window/Monitor capture the other program with OBS, as it can result in lower latency and smoother capture rates.
 

Richard Neumann

New Member
FerretBomb - thanks
The question both our HW and SW guys asked me is, do we know how OBS handles the encoding? Meaning if we compress the stream with H.264 does OBS take that directly or will it transcode the data (decoding and re-encoding).
If it does transcode do it offload that to the GPU or CPU?
Right now we are producing uncompressed raw video. We are working on a user configurable H.264 (H.265 to follow). If incorporating the compression now will help the the stream - it's worth it to divert a bit of engineering effort in that direction.
For now our goal is to get to the point where we can post a short demo on both Twitch and YouTube.
Sincerely appreciate you help and insights.
I'll see if we can try this on Amarec.
Thanks,
Rich
 

Harold

Active Member
The encoding is done entirely on the CPU.

Hardware encoders (Nvenc, quicksync, vce) CAN offload that to GPU, but you suffer a quality hit (a massive one with nvenc and vce)
 

FerretBomb

Active Member
Any h.264 encoded input sources will be decoded, scaled, composited into a final frame, downscaled (if applicable) then compressed via the CPU (preferably) and uploaded.

For best quality, feed OBS raw, uncompressed source material to avoid as much artifacting and degradation as possible in the final output.

Definitely don't use NVENC/VCE/QSV if you want top quality output. They're band-aids to allow low-end machines to stream, and require a mountain of bitrate to look good as compared even to x264 Veryfast.
I'd advise an i7-5820k if you plan to do streamed live demo work; just got mine set up and overclocked to 4.4GHz, and it can swing 1080p@60 on x264 Medium, which is one of the big quality breakpoints.

Now you've just got me curious if you're working on a high-end RealSense camera or similar (gief plox!).
 

Richard Neumann

New Member
Thanks - time to hunt for a faster processor. 1080p 60fps with interlaced dual audio is a lot to throw at OBS.
Not RealSense - I'll ignore the insult.
Our core tech is a 3D imaging system, with about 100X the data density of systems like RealSense, Kinect, etc.
To reach that level we had to build our own open architecture high def high speed camera. Decided this year to re-engineer it into an open architecture camera platform for Streamers, Makers, etc.
You can find out more at www.SUB2r.com or look us up on YouTube SUB2r.
Imagine being able to play with every aspect of the imaging process possible - interchangeable optics, interchangeable image sensors (1 main processor, just swap boards for 720p, 1080p or 4K), user configurable compression, we even give you access to the chip itself so you can reprogram the image sensor. You name it and we're working on giving you the tools to play with it.
We've got beautiful 1080p 60fps streaming in the lab - just have to figure out how to get it to work on OBS. We'll have to hunt for an upgrade in the morning.
Right behind the 1080p we have 4K/30fps.
Gief plox indeed.
We appreciate your help with this. We're small bunch of optics/HW/SW folks and just entered the world of streaming. We need all the help we can get.
Thanks
If you have suggestions as to platforms we should look into - also greatly appreciated.
Rich
 

FerretBomb

Active Member
Not meant as an insult, RealSense is the next big thing a lot of streamers are looking forward to; the ability to greenscreen without needing a greenscreen or the lighting rig for one. Pretty sure I'll be buying a RS cam as soon as they're available and working with OBS. Also you hadn't really mentioned anything about it before now, just 'a camera'. :)

Cool! Took a peek and looks to have quite nice quality and smooth playback from the 720@60 sample on YT. Curious if you'll be able to add/remove a polarization filter to allow for IR mode usage.

Definitely have piqued my interest, though with a lack of pricing data anywhere, it's hard to say just how much. Also, not sure if you were planning to add 3D depthmapping and image processing to do the background-cutaway trick that RealSense has been pushing as their killer feature.

I'd recommend adding the option for a microphone/line-in input. While the YT video stressed how the A/V was in sync, it also kind of showcased the down side to built-in mics, with quite a lot of echo. I use a dedicated headset mic and mixer, and the ability to plug it into the cam to sync a better audio source would be appealing.

I'm also curious if the cam provides HDMI or SDI outputs, or just the USB3.0/Gig-E? Simultaneous output? Any plans for PoE injection?
 

dping

Active Member
Thanks - time to hunt for a faster processor. 1080p 60fps with interlaced dual audio is a lot to throw at OBS.
Not RealSense - I'll ignore the insult.
Our core tech is a 3D imaging system, with about 100X the data density of systems like RealSense, Kinect, etc.
To reach that level we had to build our own open architecture high def high speed camera. Decided this year to re-engineer it into an open architecture camera platform for Streamers, Makers, etc.
You can find out more at www.SUB2r.com or look us up on YouTube SUB2r.
Imagine being able to play with every aspect of the imaging process possible - interchangeable optics, interchangeable image sensors (1 main processor, just swap boards for 720p, 1080p or 4K), user configurable compression, we even give you access to the chip itself so you can reprogram the image sensor. You name it and we're working on giving you the tools to play with it.
We've got beautiful 1080p 60fps streaming in the lab - just have to figure out how to get it to work on OBS. We'll have to hunt for an upgrade in the morning.
Right behind the 1080p we have 4K/30fps.
Gief plox indeed.
We appreciate your help with this. We're small bunch of optics/HW/SW folks and just entered the world of streaming. We need all the help we can get.
Thanks
If you have suggestions as to platforms we should look into - also greatly appreciated.
Rich
One last thing not mentioned but pretty important, the need for a dGPU (dedicated) on your encoding rig if you are going to be doing any downscaling, even if not downscaling an iGPU (integrated) will have extra video frame time when compared to a dGPU possibily because of the way that OBS uses shared memory which is much faster with a dGPU. Lastly, it doesn't have to be an expensive GPU just something somewhat recent like anything labeled DX11 or DX12 (utilizing a DX10 feature set)
 

Richard Neumann

New Member
FerretBomb,
I'll try and get to the questions - might be in random order.
Not looking to add depth initially - would raise the cost and delay getting the camera out there. We are looking at on board chroma subtraction - basically doing the green screen in the camera.
This new generation of camera will still have the 2 on on bard mics, but relocated to get rid of tubing. AND, it will have a 3.5mm 4 pole plug for external in and out. The external mic in will also be interlaced.
PoE is in the design. This camera is powered either by the USB3 or GigE connection.
Not looking at Simultaneous output - you're the first to have asked for it. Being an open architecture it something if we don't add it someone else can.
Only USB3 and GigE output for now. If there is a strong enough demand we could add those. Adding ports adds cost - so we're a tad sensitive to throwing too much on the box at once.
Interchangeable optics means everything is interchangeable - lens filter - auto focus - powered zoom. BTW our 720p camera is a 3.75um pixel and amazingly sensitive to IR for a Bayer filter image sensor.
As for pricing - I say very affordable has always been our goal. I'm cautious of posting any figures at this time, but if you drop me an email at richard@2r1y.com I'll get you target pricing and a spec sheet.
Don't want to publish a price and then because of volumes or supplier change - have to retract a figure. Rather be cautious.
We did get 1080p 60fps streaming last night on a Windows 7 Bricx using an i7-4500 (I think). I have to say the color quality of the 1080p chip is better than our 720p. Although both are pretty nice for raw un-enhanced video.
If I can convince Serge the image is good enough to share we should be posting a demo soon.
Thanks
Rich
 
Top