Question / Help CFR and Delay

Bensam123

Member
So I'm not sure if this is from CFR, but it seems as though some users end up further behind the stream then others. This seems to only really have started happening after I enabled CFR. Does CFR prevent frames from dropping so users with slower computers end up further behind? It seems like it also happened on my laptop, which is constantly pegged due to running a few things on it. Normally with CFR off it keeps up with the stream even if it drops frames here and there, but with it on it's steady video... it just ended up like 30 seconds behind my stream.

Anyone notice similar?
 

alpinlol

Active Member
i give you the answer ... but please dont laugh

INTERNET and DELAY if twitch needs to buffer and you got the known lagg lately you fall even further behind!
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Hm, added stream delay usually only happens if you're having connection issues and you're teetering on the frame drop threshold a lot. You getting red/yellow on the indicator at all?

CFR shouldn't be causing it at all. In fact it's pretty much always technically on by default now.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Hm, I think in this case reducing the frame drop threshold may be useful to prevent buffering. I may add an option to adjust frame drop threshold in the future.

However, I would recommend seeing if lowering your bitrate helps at all first. You might also get better results with minimize network impact due to the fact that it will split up packets to be less bursty, but I'm not network-knowledgeable enough to say if that would help at all for certain (that's r1ch's department)
 

Bensam123

Member
I use miniminze network impact and automatic low latency mode. I have been using these settings (except for CFR and a higher audio bit rate) for close to six months now though and it's only recently become a problem. This also seems to correlate with Twitch's tomfoolery.

Code:
02:30:25: Open Broadcaster Software v0.57b - 32bit (´・ω・`)
02:30:25: -------------------------------
02:30:25: CPU Name: AMD FX(tm)-8350 Eight-Core Processor
02:30:25: CPU Speed: 4013MHz
02:30:25: Physical Memory:  4095MB Total, 4095MB Free
02:30:25: stepping id: 0, model 2, family 15, type 0, extmodel 0, extfamily 3, HTT 1, logical cores 8, total cores 4
02:30:25: monitor 1: pos={0, 0}, size={1920, 1080}
02:30:25: monitor 2: pos={-1680, 0}, size={1680, 1050}
02:30:25: Windows Version: 6.1 Build 7601 S
02:30:25: Aero is Disabled
02:30:25: -------------------------------
02:30:25: OBS Modules:
02:30:25: Base Address     Module
02:30:25: 01370000         OBS.exe
02:30:25: 635F0000         OBSApi.dll
02:30:25: 74470000         DShowPlugin.dll
02:30:25: 63DB0000         GraphicsCapture.dll
02:30:25: 63AF0000         NoiseGate.dll
02:30:25: 63AD0000         PSVPlugin.dll
02:30:25: ------------------------------------------
02:30:25: Adapter 1
02:30:25:   Video Adapter: AMD Radeon HD 7800 Series
02:30:25:   Video Adapter Dedicated Video Memory: 2120388608
02:30:25:   Video Adapter Shared System Memory: 2174513152
02:30:25: Using automatic low latency mode
02:30:25: =====Stream Start: 2013-09-25, 02:30:25===============================================
02:30:25:   Multithreaded optimizations: On
02:30:25:   Base resolution: 1920x1080
02:30:25:   Output resolution: 1280x720
02:30:25: ------------------------------------------
02:30:25: Loading up D3D10 on AMD Radeon HD 7800 Series...
02:30:25: ------------------------------------------
02:30:25: Audio Format: 48000hz
02:30:25: Playback device Default
02:30:25: ------------------------------------------
02:30:25: Using desktop audio input: Speakers (Auzentech X-Fi Forte)
02:30:25: Using 7.1 surround speaker setup
02:30:25: ------------------------------------------
02:30:25: Using auxilary audio input: Line 2 (Virtual Audio Cable)
02:30:25: ------------------------------------------
02:30:25: Audio Encoding: AAC
02:30:25:     bitrate: 160
02:30:25: Using graphics capture
02:30:25: ------------------------------------------
02:30:25: Video Encoding: x264
02:30:25:     fps: 30
02:30:25:     width: 1280, height: 720
02:30:25:     preset: veryfast
02:30:25:     profile: high
02:30:25:     keyint: 60
02:30:25:     CBR: no
02:30:25:     CFR: yes
02:30:25:     max bitrate: 3100
02:30:25:     buffer size: 5000
02:30:25:     quality: 9
02:30:25: ------------------------------------------
02:30:25: MMDeviceAudioSource: Frequency for device 'Speakers (Auzentech X-Fi Forte)' is 1536000, samples per sec is 48000
02:30:25: MMDeviceAudioSource: Frequency for device 'Line 2 (Virtual Audio Cable)' is 352800, samples per sec is 44100
02:30:25: SharedTexCapture hooked
02:30:27: Using RTMP service: Twitch / Justin.tv
02:30:27:   Server selection: rtmp://live-dfw-backup.justin.tv/app
02:30:27:   Interface: Realtek PCIe GBE Family Controller (ethernet, 1000 mbps)
02:30:27: Completed handshake with rtmp://live-dfw-backup.justin.tv/app in 181 ms.
02:30:28: SO_SNDBUF was at 8192
02:30:28: SO_SNDBUF is now 65536
02:30:30: RTMPPublisher::Socketloop: Increasing send buffer to ISB 131072 (buffer: 0 / 416768)
02:32:58: GraphicsCaptureSource::NewCapture:  eliminating old capture
02:32:58: SharedTexCapture hooked
02:39:39: GraphicsCaptureSource::NewCapture:  eliminating old capture
02:39:39: SharedTexCapture hooked
03:04:21: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
03:04:21:   New Scene
03:04:21: Using Monitor Capture
03:05:20: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
03:05:20:   New Scene
03:05:20: Using graphics capture
03:05:20: SharedTexCapture hooked
03:36:01: GraphicsCaptureSource::NewCapture:  eliminating old capture
03:36:01: SharedTexCapture hooked
03:49:56: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
03:49:56:   New Scene
03:49:56: Using Monitor Capture
03:50:06: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
03:50:06:   New Scene
03:50:06: Using graphics capture
03:50:06: SharedTexCapture hooked
04:09:17: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:09:17:   New Scene
04:09:17: Using Monitor Capture
04:09:22: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:09:22:   New Scene
04:09:22: Using graphics capture
04:09:23: SharedTexCapture hooked
04:09:24: GraphicsCaptureSource::NewCapture:  eliminating old capture
04:09:24: SharedTexCapture hooked
04:15:53: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:15:53:   New Scene
04:15:53: Using Monitor Capture
04:26:11: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:26:11:   New Scene
04:26:11: Using graphics capture
04:26:11: SharedTexCapture hooked
04:33:05: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:33:05:   New Scene
04:33:05: Using Monitor Capture
04:34:35: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:34:35:   New Scene
04:34:35: Using graphics capture
04:34:35: SharedTexCapture hooked
04:34:50: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:34:50:   New Scene
04:34:50: Using Monitor Capture
04:36:26: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
04:36:26:   New Scene
04:36:26: Using graphics capture
04:36:26: SharedTexCapture hooked
04:51:26: GraphicsCaptureSource::NewCapture:  eliminating old capture
04:51:26: SharedTexCapture hooked
04:51:31: GraphicsCaptureSource::NewCapture:  eliminating old capture
04:51:31: SharedTexCapture hooked
05:07:23: RTMPPublisher::Socketloop: Increasing send buffer to ISB 262144 (buffer: 0 / 416768)
05:22:39: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:22:39:   New Scene
05:22:39: Using Monitor Capture
05:25:11: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:25:11:   New Scene
05:25:11: Using graphics capture
05:25:11: SharedTexCapture hooked
05:25:12: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:25:12:   New Scene
05:25:12: Using Monitor Capture
05:27:41: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:27:41:   New Scene
05:27:41: Using graphics capture
05:27:41: SharedTexCapture hooked
05:27:52: Capture window 0x000A0CA2 invalid or changing, terminating capture
05:27:53: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:27:53:   New Scene
05:27:53: Using Monitor Capture
05:29:33: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:29:33:   New Scene
05:29:33: Using graphics capture
05:29:40: SharedTexCapture hooked
05:29:42: GraphicsCaptureSource::NewCapture:  eliminating old capture
05:29:42: SharedTexCapture hooked
05:37:37: GraphicsCaptureSource::NewCapture:  eliminating old capture
05:37:37: SharedTexCapture hooked
05:37:46: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:37:46:   New Scene
05:37:46: Using Monitor Capture
05:38:26: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:38:26:   New Scene
05:38:26: Using graphics capture
05:38:26: SharedTexCapture hooked
05:54:24: Exit signal received, terminating capture
05:54:28: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:54:28:   New Scene
05:54:28: Using Monitor Capture
05:55:28: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
05:55:28:   New Scene
05:55:28: Using graphics capture
05:55:28: SharedTexCapture hooked
06:00:32: GraphicsCaptureSource::NewCapture:  eliminating old capture
06:00:32: SharedTexCapture hooked
06:00:37: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:00:37:   New Scene
06:00:37: Using Monitor Capture
06:02:03: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:02:03:   New Scene
06:02:03: Using graphics capture
06:02:03: SharedTexCapture hooked
06:13:48: GraphicsCaptureSource::NewCapture:  eliminating old capture
06:13:48: SharedTexCapture hooked
06:14:09: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:14:09:   New Scene
06:14:09: Using Monitor Capture
06:14:50: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:14:50:   New Scene
06:14:50: Using graphics capture
06:14:50: SharedTexCapture hooked
06:20:24: GraphicsCaptureSource::NewCapture:  eliminating old capture
06:20:24: SharedTexCapture hooked
06:20:26: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:20:26:   New Scene
06:20:26: Using Monitor Capture
06:20:41: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:20:41:   New Scene
06:20:41: Using graphics capture
06:20:41: SharedTexCapture hooked
06:20:53: GraphicsCaptureSource::NewCapture:  eliminating old capture
06:20:53: SharedTexCapture hooked
06:20:57: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:20:57:   New Scene
06:20:57: Using Monitor Capture
06:22:21: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:22:21:   New Scene
06:22:21: Using graphics capture
06:22:21: SharedTexCapture hooked
06:31:00: GraphicsCaptureSource::NewCapture:  eliminating old capture
06:31:00: SharedTexCapture hooked
06:31:06: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:31:06:   New Scene
06:31:06: Using Monitor Capture
06:32:32: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:32:32:   New Scene
06:32:32: Using graphics capture
06:32:32: SharedTexCapture hooked
06:40:36: GraphicsCaptureSource::NewCapture:  eliminating old capture
06:40:36: SharedTexCapture hooked
06:40:40: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:40:40:   New Scene
06:40:40: Using Monitor Capture
06:41:15: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
06:41:15:   New Scene
06:41:15: Using graphics capture
06:41:15: SharedTexCapture hooked
07:07:36: Exit signal received, terminating capture
07:07:38: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
07:07:38:   New Scene
07:07:38: Using Monitor Capture
07:08:52: Total frames encoded: 501182, total frames duplicated: 4071 (0.81%)
07:08:52: Total frames rendered: 500478, number of late frames: 167 (0.03%) (it's okay for some frames to be late)
07:08:52: RTMPPublisher::SocketLoop: Graceful loop exit
07:08:52: Average send payload: 1406 bytes, average send interval: 4 ms
07:08:52: Number of times waited to send: 0, Waited for a total of 0 bytes
07:08:52: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
07:08:52: Number of bytes sent: 5102097797
07:08:52: 
07:08:52: Profiler time results:
07:08:52: 
07:08:52: ==============================================================
07:08:52: video thread frame - [100%] [avg time: 1.56 ms] [children: 50.1%] [unaccounted: 49.9%]
07:08:52: | scene->Preprocess - [50.1%] [avg time: 0.782 ms]
07:08:52: GPU download and conversion - [100%] [avg time: 0.354 ms] [children: 68.4%] [unaccounted: 31.6%]
07:08:52: | flush - [63.8%] [avg time: 0.226 ms]
07:08:52: | CopyResource - [3.11%] [avg time: 0.011 ms]
07:08:52: | conversion to 4:2:0 - [1.41%] [avg time: 0.005 ms]
07:08:52: Convert444Threads - [100%] [avg time: 0.586 ms] [children: 98.5%] [unaccounted: 1.54%]
07:08:52: | Convert444toNV12 - [98.5%] [avg time: 0.577 ms]
07:08:52: encoder thread frame - [100%] [avg time: 1.503 ms]
07:08:52: ==============================================================
07:08:52: 
07:08:52: 
07:08:52: Profiler CPU results:
07:08:52: 
07:08:52: ==============================================================
07:08:52: video thread frame - [cpu time: avg 0.826 ms, total 413808 ms] [avg calls per frame: 1]
07:08:52: | scene->Preprocess - [cpu time: avg 0.615 ms, total 308211 ms] [avg calls per frame: 1]
07:08:52: GPU download and conversion - [cpu time: avg 0.037 ms, total 18891.7 ms] [avg calls per frame: 1]
07:08:52: | flush - [cpu time: avg 0.028 ms, total 14040.1 ms] [avg calls per frame: 1]
07:08:52: | CopyResource - [cpu time: avg 0.003 ms, total 1653.61 ms] [avg calls per frame: 1]
07:08:52: | conversion to 4:2:0 - [cpu time: avg 0 ms, total 483.605 ms] [avg calls per frame: 1]
07:08:52: Convert444Threads - [cpu time: avg 0.697 ms, total 698432 ms] [avg calls per frame: 2]
07:08:52: | Convert444toNV12 - [cpu time: avg 0.692 ms, total 692847 ms] [avg calls per frame: 2]
07:08:52: encoder thread frame - [cpu time: avg 1.025 ms, total 513727 ms] [avg calls per frame: 1]
07:08:52: ==============================================================
07:08:52: 
07:08:52: =====Stream End: 2013-09-25, 07:08:52=================================================


Last game capture log:
2013-09-25, 05:55:28: we're booting up: 
05:55:28: DXGI Present
05:55:28: (half life scientist) everything..  seems to be in order
05:55:28: DXGI: Found D3D 11
05:55:28: setting up d3d11 data
05:55:28: ---------------------- Cleared D3D11 Capture ----------------------
05:55:28: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
05:55:28: DoD3D11Hook: success
05:55:28: successfully capturing d3d11 frames via GPU
05:55:45: D3D9 Present
06:00:32: ---------------------- Cleared D3D11 Capture ----------------------
06:00:32: DXGI: Found D3D 11
06:00:32: setting up d3d11 data
06:00:32: ---------------------- Cleared D3D11 Capture ----------------------
06:00:32: found dxgi format (dx11) of: 28, size: {1280, 720}, multisampled: false
06:00:32: DoD3D11Hook: success
06:00:32: successfully capturing d3d11 frames via GPU
06:00:37: stop requested, terminating d3d11 capture
06:00:37: ---------------------- Cleared D3D11 Capture ----------------------
06:02:02: ---------------------- Cleared D3D11 Capture ----------------------
06:02:03: DXGI: Found D3D 11
06:02:03: setting up d3d11 data
06:02:03: ---------------------- Cleared D3D11 Capture ----------------------
06:02:03: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
06:02:03: DoD3D11Hook: success
06:02:03: successfully capturing d3d11 frames via GPU
06:13:48: ---------------------- Cleared D3D11 Capture ----------------------
06:13:48: DXGI: Found D3D 11
06:13:48: setting up d3d11 data
06:13:48: ---------------------- Cleared D3D11 Capture ----------------------
06:13:48: found dxgi format (dx11) of: 28, size: {1280, 720}, multisampled: false
06:13:48: DoD3D11Hook: success
06:13:48: successfully capturing d3d11 frames via GPU
06:14:09: stop requested, terminating d3d11 capture
06:14:09: ---------------------- Cleared D3D11 Capture ----------------------
06:14:48: ---------------------- Cleared D3D11 Capture ----------------------
06:14:49: DXGI: Found D3D 11
06:14:49: setting up d3d11 data
06:14:49: ---------------------- Cleared D3D11 Capture ----------------------
06:14:49: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
06:14:50: DoD3D11Hook: success
06:14:50: successfully capturing d3d11 frames via GPU
06:20:23: ---------------------- Cleared D3D11 Capture ----------------------
06:20:24: DXGI: Found D3D 11
06:20:24: setting up d3d11 data
06:20:24: ---------------------- Cleared D3D11 Capture ----------------------
06:20:24: found dxgi format (dx11) of: 28, size: {1280, 720}, multisampled: false
06:20:24: DoD3D11Hook: success
06:20:24: successfully capturing d3d11 frames via GPU
06:20:26: stop requested, terminating d3d11 capture
06:20:26: ---------------------- Cleared D3D11 Capture ----------------------
06:20:39: ---------------------- Cleared D3D11 Capture ----------------------
06:20:40: DXGI: Found D3D 11
06:20:40: setting up d3d11 data
06:20:40: ---------------------- Cleared D3D11 Capture ----------------------
06:20:40: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
06:20:41: DoD3D11Hook: success
06:20:41: successfully capturing d3d11 frames via GPU
06:20:53: ---------------------- Cleared D3D11 Capture ----------------------
06:20:53: DXGI: Found D3D 11
06:20:53: setting up d3d11 data
06:20:53: ---------------------- Cleared D3D11 Capture ----------------------
06:20:53: found dxgi format (dx11) of: 28, size: {1280, 720}, multisampled: false
06:20:53: DoD3D11Hook: success
06:20:53: successfully capturing d3d11 frames via GPU
06:20:57: stop requested, terminating d3d11 capture
06:20:57: ---------------------- Cleared D3D11 Capture ----------------------
06:22:19: ---------------------- Cleared D3D11 Capture ----------------------
06:22:20: DXGI: Found D3D 11
06:22:20: setting up d3d11 data
06:22:20: ---------------------- Cleared D3D11 Capture ----------------------
06:22:20: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
06:22:21: DoD3D11Hook: success
06:22:21: successfully capturing d3d11 frames via GPU
06:31:00: ---------------------- Cleared D3D11 Capture ----------------------
06:31:00: DXGI: Found D3D 11
06:31:00: setting up d3d11 data
06:31:00: ---------------------- Cleared D3D11 Capture ----------------------
06:31:00: found dxgi format (dx11) of: 28, size: {1280, 720}, multisampled: false
06:31:00: DoD3D11Hook: success
06:31:00: successfully capturing d3d11 frames via GPU
06:31:06: stop requested, terminating d3d11 capture
06:31:06: ---------------------- Cleared D3D11 Capture ----------------------
06:32:30: ---------------------- Cleared D3D11 Capture ----------------------
06:32:31: DXGI: Found D3D 11
06:32:31: setting up d3d11 data
06:32:31: ---------------------- Cleared D3D11 Capture ----------------------
06:32:31: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
06:32:32: DoD3D11Hook: success
06:32:32: successfully capturing d3d11 frames via GPU
06:40:36: ---------------------- Cleared D3D11 Capture ----------------------
06:40:36: DXGI: Found D3D 11
06:40:36: setting up d3d11 data
06:40:36: ---------------------- Cleared D3D11 Capture ----------------------
06:40:36: found dxgi format (dx11) of: 28, size: {1280, 720}, multisampled: false
06:40:36: DoD3D11Hook: success
06:40:36: successfully capturing d3d11 frames via GPU
06:40:40: stop requested, terminating d3d11 capture
06:40:40: ---------------------- Cleared D3D11 Capture ----------------------
06:41:13: ---------------------- Cleared D3D11 Capture ----------------------
06:41:14: DXGI: Found D3D 11
06:41:14: setting up d3d11 data
06:41:14: ---------------------- Cleared D3D11 Capture ----------------------
06:41:14: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
06:41:15: DoD3D11Hook: success
06:41:15: successfully capturing d3d11 frames via GPU
 
Top