OBS branch with AMD VCE support.

CodeBlackGames

New Member
Local. I've tried high bitrates, low bitrates; upping and lowering the quality. The game itself isn't laggy, however I only see lag in the video.

Using my i5 I barely see OBS use more than 10% of my CPU.
 

dping

Active Member
Local. I've tried high bitrates, low bitrates; upping and lowering the quality. The game itself isn't laggy, however I only see lag in the video.

Using my i5 I barely see OBS use more than 10% of my CPU.


What Oliver said plus maybe your GPU you are using, if you have them, run a short encoding test and pastbin your log file
 

dping

Active Member
It might just be me.

Does this video seem choppy to anyone else?
https://www.youtube.com/watch?v=hKYMzn6rrS0

BTW GPU is an HD 7850.

I detected 27 dropped frames in the first minute (1800 frames), less than 2% mainly at bitrate jumps above 4k and/or fast moving scenes. this is a slow moving game so its not as noticeable in most cases.

Aero:
Are you using screen capture or game/window capture? Do you have aero enabled or disabled?
If game/window capture, it is recommended to enable aero
If screen capture, disable aero.
If using both/either, disable aero should be fine as long as you are not capturing over 40 fps in a window/game capture.
 
Last edited:

dping

Active Member
www.slideshare.net/slideshow/embed_code/28494157

This slideshow shows using (slides 19-27) Peak Constrained (6Mb buffer) vs Latency-Constrained VBR 6mb/s with only 100kb buffer IDR of 60, to fix the spikes and something called @jackun "Intra refresh" to fix blockage? Is that "Constrained Intra Pred"? EDIT: http://mewiki.project357.com/wiki/X264_Settings#intra-refresh I iwll try this switch when I get home.


Also, CBR with 6Mb buffer would peak out at the first few frames then again starting at frames 43-60 (slide 17) i.e. our 20Mb/s spikes.



I played around with using 3100k bitrate low buffer with 10-30% Q/S and IDR of 60 but ended up lowering that to like 6-12 :/. my reference frame at 2-3 and even with CBR my stream kb/s stayed at 3700 for the most part.

It seemed to stay at 500kb higher than I set it but less spikes! watching the stream was a different story, it was stop and go all the time. I haven't played with VBR and unfortunately, I also haven't played with 6000k bitrate since I don't have that kind of bandwidth.


I think Jackun said something about playing with the buffer to fix some issues, so thanks Jack!
 
Last edited:

RifleEyez

Member
Hey guys (and jackun again).

If I'm local recording, not Streaming (so bitrates aren't really an issue), and MFT isn't giving me ridiculous memory usage (right now, anyway) without any custom VCE settings - can anyone give me some that would give me good quality? HDD space is not really an issue and I'm recording at 1080p 30 FPS. It's all a bit foreign to me - so I'm wondering if anyone (jackun included) could shed some light or possibly post their settings so I can try them?

Thanks a ton, loving the program btw! Even Dxtory with the OpenEncode would give me a good 20-30 fps drop whereas with OBS it's barely noticable. The only issue is splitting audio - and I have no idea how to approach that with Virtual Audio Cable or even if there's a tutorial on using that with OBS so I can split perhaps Game Audio > Teamspeak like Dxtory does or even Game Audio > My Mic > Teamspeak like I had to on Dxtory with VAC (still never worked it out 100%!)

Thanks again.

(p.s - one noob question. What does the ''replay'' thing do? What buffer length? Is it useful? Is that like Shadowplay where it ''keeps'' the past 20 minutes or something, so should I turn it off? Should I set this to a different HDD (I have about 3 2TB HDD's that are fast 150mb/s is the slowest as I produce music so have tons of sample libaries and HDD's spare) Not too sure how to approach that.

EDIT :

Any reason why when I use VCE custom settings I don't get any recording - just a black screen?
 
Last edited:

icycrash

New Member
I'm linking to a live stream I did earlier today with the latest version: http://youtu.be/4eAyF7tcKX4
Settings:
Bitrate 750 Kbps
Had to use OpenCL for NV12 conversion on R7 260x VCE MFT causes stuttering on the latest version.
Resolution Downscale 2 Times filter Lanczos best detail, 36 samples
FPS 25 could have done 30 but I was trying to help my slow upload which is 850 to 950 Kbps
Process Priority class high use multithreaded Optimizations turned on
x264 CPU Preset Slower
Encoding profile High
This is what It looked like if you got any suggestions for improvements let me know.
 

dping

Active Member
I'm linking to a live stream I did earlier today with the latest version: http://youtu.be/4eAyF7tcKX4
Settings:
Bitrate 750 Kbps
Had to use OpenCL for NV12 conversion on R7 260x VCE MFT causes stuttering on the latest version.
Resolution Downscale 2 Times filter Lanczos best detail, 36 samples
FPS 25 could have done 30 but I was trying to help my slow upload which is 850 to 950 Kbps
Process Priority class high use multithreaded Optimizations turned on
x264 CPU Preset Slower
Encoding profile High
This is what It looked like if you got any suggestions for improvements let me know.

Its watchable. I didn't watch the whole thing but it looks fine. Why are you using VCE if at such a low res? I mean, CPU encoding at 360p shouldn't hurt your performance. Anyway, No major hiccups or pauses so this seems reasonable with what upload you have.


"x264 CPU Preset Slower" this does nothing when using MFT or OpenCL. In fact, even if you were doing CPU x264, the lowest you'd want to go is Med preset. The presets will help more as you have more bitrate to push.
 

icycrash

New Member
Its watchable. I didn't watch the whole thing but it looks fine. Why are you using VCE if at such a low res? I mean, CPU encoding at 360p shouldn't hurt your performance. Anyway, No major hiccups or pauses so this seems reasonable with what upload you have.


"x264 CPU Preset Slower" this does nothing when using MFT or OpenCL. In fact, even if you were doing CPU x264, the lowest you'd want to go is Med preset. The presets will help more as you have more bitrate to push.
I'm using VCE because I got an apu and it won't encode fast enough a the settings
 

CodeBlackGames

New Member
I detected 27 dropped frames in the first minute (1800 frames), less than 2% mainly at bitrate jumps above 4k and/or fast moving scenes. this is a slow moving game so its not as noticeable in most cases.

Aero:
Are you using screen capture or game/window capture? Do you have aero enabled or disabled?
If game/window capture, it is recommended to enable aero
If screen capture, disable aero.
If using both/either, disable aero should be fine as long as you are not capturing over 40 fps in a window/game capture.
Well I'm using game capture, with Aero enabled.

That video was recorded in 720p/60fps but I have similar problems with 30fps.

In-game however I'll be getting like 200fps no problem.

MFT is enabled. Bitrate is 10000, with the quality set to 8.

I just want to know how I can get the smoothest video for youtube.
 
Last edited:

dping

Active Member
Well I'm using game capture, with Aero enabled.

That video was recorded in 720p/60fps but I have similar problems with 30fps.

In-game however I'll be getting like 200fps no problem.

MFT is enabled. Bitrate is 10000, with the quality set to 8.

I just want to know how I can get the smoothest video for youtube.

When I tested your video again it back at home, no dropped frames detected. My work comp is slow :)

https://support.google.com/youtube/answer/1722171?hl=en

720p60fps is fine.
VBR is fine for local recordings.
Bitrate at 5,000 to 30,000 (see link) should be fine.
use "High" profile instead of "Main"

enabling custom settings with MFT, I Pic Period 60, GOP 30 and play around with IDR period a little (see below)

My recent experiments:
With some experimenting, I was testing with the use of "intra-refresh=true" and "tune=film or tune=animation" in the custom encoder settings. You'll need to mess with IDR a bit. In the article I linked a few posts up, they used IDR period of 60 but I think that is to high, I ended up settling on 6 below my fps (48fps = IDR 42). I have no clue why my video was the smoothest with 42 IDR period, but it just was. The Q/S I would set at 60-80% (I set mine to 20-40) but since your bitrate is sufficient more should be fine and finally Reference frames 2-4 (play with this as well. I've been using between 60-200 bit buffer with much success since VCE is optimized for low latency VBR. the formula I found for custom buffer was (1/fps)*bitrate=buffer Which would be, 167 bit buffer for you, or round up to 170 IMO.

EDIT: if your video stutters, lower Reference frames first, then the Q/S, then play with IDR a bit more.

Intra-refresh=true will make your "side-scroll" games look awesome IMO, since it moves columns of pixels left and right for movement, it will look great. When you set this to true, it replaces all your IDR frames with the columns. It actually looks better so far in my testing; much less artifacts!

http://mewiki.project357.com/wiki/X264_Settings#intra-refresh

As for "tune=film" things seem to look much nicer with this enabled, but since this video is more cartoonish, play with "tune=animation" as well

Lastly, my main searches on intra-refresh showed a lot of issues with livestreaming to a flash player with intra-refresh enabled, the issue was flash player waited for a pure IDR frame but never got it, so the flash player was black if you start watching mid-stream. this must have been fixed because I was unable to duplicate the issue they had.
 
Last edited:

RifleEyez

Member
Just reposting my inital post from earlier - wondering people could answer some questions for me.

Hey guys (and jackun again).

If I'm local recording, not Streaming (so bitrates aren't really an issue), and MFT isn't giving me ridiculous memory usage (right now, anyway) without any custom VCE settings - can anyone give me some tips and maybe VCE settings/other settings that would give me good quality? HDD space is not really an issue and I'm recording at 1080p 30 FPS. It's all a bit foreign to me - so I'm wondering if anyone (jackun included) could shed some light or possibly post their settings so I can try them?

Thanks a ton, loving the program btw! Even Dxtory with the OpenEncode would give me a good 20-30 fps drop whereas with OBS it's barely noticable. The only issue is splitting audio - and I have no idea how to approach that with Virtual Audio Cable or even if there's a tutorial on using that with OBS so I can split perhaps Game Audio > Teamspeak like Dxtory does or even Game Audio > My Mic > Teamspeak like I had to on Dxtory with VAC (still never worked it out 100%!)

Thanks again.

(p.s - one noob question. What does the ''replay'' thing do? What buffer length? Is it useful? Is that like Shadowplay where it ''keeps'' the past 20 minutes or something, so should I turn it off? Should I set this to a different HDD (I have about 3 2TB HDD's that are fast 150mb/s is the slowest as I produce music so have tons of sample libaries and HDD's spare) Not too sure how to approach that.

EDIT :

Any reason why when I use VCE custom settings I don't get any recording - just a black screen? Can I use OpenGL and the VCE custom settings? Bit confused and can't find any literature on what effects what. But wondering if anyone else had any failsafe good settings.
 

dping

Active Member
Just reposting my inital post from earlier - wondering people could answer some questions for me.

From what I understand, the replay thingy was pulled in from OBS test build, but I haven't played with it yet. I know @OliverMD was looking forward to getting that in here, so he might know something. EDIT: Also, https://www.youtube.com/watch?v=r6ejxKfsLLg&list=UUa6nICndWDNn76nJw4kYbLQ this is a how-to for replays

As far as I can say about splitting the audio and VAC, I only used it once but didn't have a real need to use it. You could always disable audio recording change your audio source with OBS then record audio separately via VAC channels on a different program? I'm assuming you are will eventually merge the audio back in, but syncing would be your biggest issue there. Nevermind, I misunderstood what you are trying to do, check the link below for how to!

EDIT: https://www.youtube.com/watch?v=pwAtN4MLHZk&list=UUa6nICndWDNn76nJw4kYbLQ


EDIT of EDIT: http://the.helping-squad.com/ <--I'm checking this out now
 
Last edited:

dping

Active Member
I changed it to 1088x614 instead of 680x384 which got me a sharper image and using the same bitrate. I'll try that next I want to try to keep the audio quality as close as I can because I hate when streams have that robotic audio sound


I personally use 96bit audio, it sounds fine for most people, at this point 32bits would be valuable to you. I would think of 480p/30fps 96kbit audio and raise your bitrate +32kbits. its just something to experiment with. Just dont go below 96kbits
 
Top