Question / Help WARNING: Skipping frames while playing Hearthstone

shippou5

New Member
Trying to stream, lags every 5 seconds.

Here are my settings:
Max Bitrate 2000(my upload speed is 3.18MB)
Resolution downscale 1.5
FPS 30
CPU preset veryfast
Keyframe interval 2

Specs:
CPU: Intel core 2duo e8300 2.83ghz
RAM: 4GB
Card: Gigabyte AMD Radeon HD 7770 OC REV2.0 1GB GDDR5

All the information I know
 

shippou5

New Member
Code:
23:47:50: Open Broadcaster Software v0.591b - 32bit (´・ω・`)
23:47:50: -------------------------------
23:47:50: CPU Name: Intel(R) Core(TM)2 Duo CPU     E8300  @ 2.83GHz
23:47:50: CPU Speed: 2842MHz
23:47:50: Physical Memory:  4095MB Total, 1491MB Free
23:47:50: stepping id: 6, model 23, family 6, type 0, extmodel 0, extfamily 0, HTT 1, logical cores 2, total cores 2
23:47:50: monitor 1: pos={0, 0}, size={1920, 1080}
23:47:50: Windows Version: 6.1 Build 7601 S
23:47:50: Aero is Enabled
23:47:50: -------------------------------
23:47:50: OBS Modules:
23:47:50: Base Address     Module
23:47:50: 01190000         OBS.exe
23:47:50: 6E2E0000         OBSApi.dll
23:47:50: 70A70000         DShowPlugin.dll
23:47:50: 70900000         GraphicsCapture.dll
23:47:50: 706E0000         NoiseGate.dll
23:47:50: 705E0000         PSVPlugin.dll
23:47:50: ------------------------------------------
23:47:50: Adapter 1
23:47:50:   Video Adapter: AMD Radeon HD 7700 Series
23:47:50:   Video Adapter Dedicated Video Memory: 1056112640
23:47:50:   Video Adapter Shared System Memory: 1878650880
23:47:50:   Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
23:47:50: =====Stream Start: 2013-12-17, 23:47:50===============================================
23:47:50:   Multithreaded optimizations: On
23:47:50:   Base resolution: 1920x1080
23:47:50:   Output resolution: 1280x720
23:47:50: ------------------------------------------
23:47:50: Loading up D3D10 on AMD Radeon HD 7700 Series (Adapter 1)...
23:47:50: ------------------------------------------
23:47:50: Audio Format: 48000hz
23:47:50: Playback device {0.0.0.00000000}.{17cc550a-14a7-4a65-bafc-aa25189fa138}
23:47:50: ------------------------------------------
23:47:50: Using desktop audio input: רמקולים (התקן High Definition Audio)
23:47:50: ------------------------------------------
23:47:50: Using auxilary audio input: מיקרופון (התקן שמע של USB)
23:47:50: ------------------------------------------
23:47:50: Audio Encoding: AAC
23:47:50:     bitrate: 128
23:47:50: Using graphics capture
23:47:50: Scene buffering time set to 350
23:47:50: ------------------------------------------
23:47:50: Video Encoding: x264
23:47:50:     fps: 30
23:47:50:     width: 1280, height: 720
23:47:50:     preset: veryfast
23:47:50:     profile: main
23:47:50:     keyint: 60
23:47:50:     CBR: yes
23:47:50:     CFR: yes
23:47:50:     max bitrate: 2000
23:47:50:     buffer size: 2000
23:47:50: ------------------------------------------
23:47:50: MMDeviceAudioSource: Frequency for device 'רמקולים (התקן High Definition Audio)' is 352800, samples per sec is 44100
23:47:50: MMDeviceAudioSource: Frequency for device 'מיקרופון (התקן שמע של USB)' is 176400, samples per sec is 44100
23:47:52: Using RTMP service: Twitch / Justin.tv
23:47:52:   Server selection: rtmp://live-fra.justin.tv/app
23:47:52:   Interface: Realtek RTL8168C(P)/8111C(P) Family PCI-E Gigabit Ethernet NIC (NDIS 6.20)? (ethernet, 100 mbps)
23:47:52: Completed handshake with rtmp://live-fra.justin.tv/app in 545 ms.
23:47:54: SO_SNDBUF was at 8192
23:47:54: SO_SNDBUF is now 65536
23:47:55: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 131072 (buffer: 0 / 272384)
23:47:58: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 262144 (buffer: 0 / 272384)
23:47:58: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 524288 (buffer: 0 / 272384)
Warning -- SharedTexCapture::Init: Could not open file mapping: 2
23:47:58: SharedTexCapture hooked
23:48:05: GraphicsCaptureSource::NewCapture:  eliminating old capture
23:48:05: SharedTexCapture hooked
23:48:10: GraphicsCaptureSource::NewCapture:  eliminating old capture
23:48:10: SharedTexCapture hooked
23:48:54: GraphicsCaptureSource::NewCapture:  eliminating old capture
23:48:54: SharedTexCapture hooked
23:48:57: Exit signal received, terminating capture
23:49:07: Total frames encoded: 2276, total frames duplicated: 385 (16.92%)
23:49:07: Number of frames skipped due to encoder lag: 192 (8.44%)
23:49:07: Total frames rendered: 2026, number of late frames: 51 (2.52%) (it's okay for some frames to be late)
23:49:07: RTMPPublisher::SocketLoop: Graceful loop exit
23:49:07: Average send payload: 5751 bytes, average send interval: 21 ms
23:49:07: Number of times waited to send: 0, Waited for a total of 0 bytes
23:49:07: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
23:49:07: Number of bytes sent: 19473722
23:49:07: 
23:49:07: Profiler time results:
23:49:07: 
23:49:07: ==============================================================
23:49:07: video thread frame - [100%] [avg time: 3.36 ms] [children: 24.4%] [unaccounted: 75.6%]
23:49:07: | scene->Preprocess - [0.0298%] [avg time: 0.001 ms]
23:49:07: | GPU download and conversion - [24.4%] [avg time: 0.819 ms] [children: 21.7%] [unaccounted: 2.68%]
23:49:07: | | flush - [10.3%] [avg time: 0.347 ms]
23:49:07: | | CopyResource - [11.2%] [avg time: 0.376 ms]
23:49:07: | | conversion to 4:2:0 - [0.179%] [avg time: 0.006 ms]
23:49:07: Convert444Thread - [100%] [avg time: 1.891 ms] [children: 98.9%] [unaccounted: 1.06%]
23:49:07: | Convert444toNV12 - [98.9%] [avg time: 1.871 ms]
23:49:07: encoder thread frame - [100%] [avg time: 8.302 ms]
23:49:07: ==============================================================
23:49:07: 
23:49:07: 
23:49:07: Profiler CPU results:
23:49:07: 
23:49:07: ==============================================================
23:49:07: video thread frame - [cpu time: avg 0.231 ms, total 468.75 ms] [avg calls per frame: 1]
23:49:07: | scene->Preprocess - [cpu time: avg 0.015 ms, total 31.25 ms] [avg calls per frame: 1]
23:49:07: | GPU download and conversion - [cpu time: avg 0.077 ms, total 156.25 ms] [avg calls per frame: 1]
23:49:07: | | flush - [cpu time: avg 0.038 ms, total 78.125 ms] [avg calls per frame: 1]
23:49:07: | | CopyResource - [cpu time: avg 0.031 ms, total 62.5 ms] [avg calls per frame: 1]
23:49:07: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
23:49:07: Convert444Thread - [cpu time: avg 1.576 ms, total 3171.88 ms] [avg calls per frame: 1]
23:49:07: | Convert444toNV12 - [cpu time: avg 1.568 ms, total 3156.25 ms] [avg calls per frame: 1]
23:49:07: encoder thread frame - [cpu time: avg 1.759 ms, total 3984.38 ms] [avg calls per frame: 1]
23:49:07: ==============================================================
23:49:07: 
23:49:07: =====Stream End: 2013-12-17, 23:49:07=================================================


Last game capture log:
2013-12-17, 23:47:56: we're booting up: 
23:47:56: CaptureThread: attached to process Hearthstone.exe
23:47:57: D3D9 Present
23:47:57: GL Present
23:47:57: (half life scientist) everything..  seems to be in order
23:47:57: D3D9EndScene called
23:47:57: D3DPRESENT_PARAMETERS {
23:47:57: 	BackBufferWidth: 1920
23:47:57: 	BackBufferHeight: 1080
23:47:57: 	BackBufferFormat: D3DFMT_A8R8G8B8
23:47:57: 	BackBufferCount: 1
23:47:57: 	MultiSampleType: D3DMULTISAMPLE_4_SAMPLES
23:47:57: 	MultiSampleQuality: 0
23:47:57: 	SwapEffect: D3DSWAPEFFECT_DISCARD
23:47:57: 	hDeviceWindow: 15598754
23:47:57: 	Windowed: false
23:47:57: 	EnableAutoDepthStencil: false
23:47:57: 	AutoDepthStencilFormat: D3DFMT_D24S8
23:47:57: 	Flags: None
23:47:57: 	FullScreen_RefreshRateInHz: 60
23:47:57: 	PresentationInterval: 1
23:47:57: };
23:47:57: successfully set up d3d9 hooks
23:47:57: D3D9Present called
23:47:58: DoD3D9GPUHook: success
23:47:58: D3D9Reset called
23:47:58: ---------------------- Cleared D3D9 Capture ----------------------
23:47:58: successfully set up d3d9 hooks
23:47:58: D3D9EndScene called
23:47:58: D3D9Present called
23:47:58: DoD3D9GPUHook: success
23:47:58: D3DSURFACE_DESC {
23:47:58: 	Format: D3DFMT_A8R8G8B8
23:47:58: 	Type: D3DRTYPE_SURFACE
23:47:58: 	Usage: D3DUSAGE_RENDERTARGET 
23:47:58: 	Pool: D3DPOOL_DEFAULT
23:47:58: 	MultiSampleType: D3DMULTISAMPLE_NONE
23:47:58: 	MultiSampleQuality: 0
23:47:58: 	Width: 1920
23:47:58: 	Height: 1080
23:47:58: };
23:47:58: successfully capturing d3d9 frames via GPU
23:48:04: D3D9Reset called
23:48:04: ---------------------- Cleared D3D9 Capture ----------------------
23:48:04: failed to get d3d9 swap chain to initialize hooks
23:48:04: D3D9Reset called
23:48:04: ---------------------- Cleared D3D9 Capture ----------------------
23:48:05: successfully set up d3d9 hooks
23:48:05: D3D9EndScene called
23:48:05: D3D9Present called
23:48:05: DoD3D9GPUHook: success
23:48:05: D3DSURFACE_DESC {
23:48:05: 	Format: D3DFMT_A8R8G8B8
23:48:05: 	Type: D3DRTYPE_SURFACE
23:48:05: 	Usage: D3DUSAGE_RENDERTARGET 
23:48:05: 	Pool: D3DPOOL_DEFAULT
23:48:05: 	MultiSampleType: D3DMULTISAMPLE_NONE
23:48:05: 	MultiSampleQuality: 0
23:48:05: 	Width: 1920
23:48:05: 	Height: 1080
23:48:05: };
23:48:05: successfully capturing d3d9 frames via GPU
23:48:09: D3D9Reset called
23:48:09: ---------------------- Cleared D3D9 Capture ----------------------
23:48:09: failed to get d3d9 swap chain to initialize hooks
23:48:09: D3D9Reset called
23:48:09: ---------------------- Cleared D3D9 Capture ----------------------
23:48:10: successfully set up d3d9 hooks
23:48:10: D3D9EndScene called
23:48:10: D3D9Present called
23:48:10: DoD3D9GPUHook: success
23:48:10: D3DSURFACE_DESC {
23:48:10: 	Format: D3DFMT_A8R8G8B8
23:48:10: 	Type: D3DRTYPE_SURFACE
23:48:10: 	Usage: D3DUSAGE_RENDERTARGET 
23:48:10: 	Pool: D3DPOOL_DEFAULT
23:48:10: 	MultiSampleType: D3DMULTISAMPLE_NONE
23:48:10: 	MultiSampleQuality: 0
23:48:10: 	Width: 1920
23:48:10: 	Height: 1080
23:48:10: };
23:48:10: successfully capturing d3d9 frames via GPU
23:48:53: D3D9Reset called
23:48:53: ---------------------- Cleared D3D9 Capture ----------------------
23:48:53: failed to get d3d9 swap chain to initialize hooks
23:48:53: D3D9Reset called
23:48:53: ---------------------- Cleared D3D9 Capture ----------------------
23:48:54: successfully set up d3d9 hooks
23:48:54: D3D9EndScene called
23:48:54: D3D9Present called
23:48:54: DoD3D9GPUHook: success
23:48:54: D3DSURFACE_DESC {
23:48:54: 	Format: D3DFMT_A8R8G8B8
23:48:54: 	Type: D3DRTYPE_SURFACE
23:48:54: 	Usage: D3DUSAGE_RENDERTARGET 
23:48:54: 	Pool: D3DPOOL_DEFAULT
23:48:54: 	MultiSampleType: D3DMULTISAMPLE_NONE
23:48:54: 	MultiSampleQuality: 0
23:48:54: 	Width: 1920
23:48:54: 	Height: 1080
23:48:54: };
23:48:54: successfully capturing d3d9 frames via GPU
 

dodgepong

Administrator
Community Helper
Yeah, looks like the encoder is having a bit of a hard time.

Try downscaling to 480p and raising x264 preset to superfast or ultrafast.
 

dodgepong

Administrator
Community Helper
If your base resolution is 1920x1080, like in the log, then the 2.25 downscale should be 480p.
 

shippou5

New Member
Worked nicely! One question though, when I stream I also want to interact with people in the twitch chat but I don't have two monitors and I don't want to alt tab too much it freezes the stream in one pictures until I alt tab back.
 

Nirrudn

Member
shippou5 said:
Worked nicely! One question though, when I stream I also want to interact with people in the twitch chat but I don't have two monitors and I don't want to alt tab too much it freezes the stream in one pictures until I alt tab back.

You'll have to run the game in windowed mode, if it supports it. (never played Hearthstone, but I assume it would since it's a Blizzard game)

If you choose to run it in windowed mode at a smaller resolution, make sure you adjust your OBS Video settings otherwise you'll end up with black borders around your stream. The "Base Resolution" should be the game's resolution, unless you're using an overlay of some kind.
 

Krazy

Town drunk
You are severely bottlenecked by your processor, there's likely not a whole lot you are going to be able to do.
 

shippou5

New Member
Oh lol I was dumb, my max bitnate for the video encoding was 2000 and it lagged the entire stream. Now I can 720p without a problem but there is something else that is strange:
Whatever I stream only appears 10 seconds later in the stream itself, is this normal?
 

hilalpro

Member
Yes, if you're streaming to twitch they now use HLS to deliver streams to viewers which requires the player to download and buffer video chunks in order for the playback to start.
 

shippou5

New Member
When I don't fullscreen and stream a game it gets like 18 fps, should I do 480p for monitor streaming or whatnot? In fullscreen I can 720p 30 fps no problem
 

hilalpro

Member
If you're using monitor capture then use windows capture instead other than that you're probably running the game at a way lower resolution in fullscreen which your cpu can sort of keep up with.
 
Top