Bug Report Hooking with Battlefield 4 with OBS causes stutters

Bensam123

Member
I was playing Battlefield 4 tonight and I thought at first it was just the game as a lot of people were complaining about performance issues. I myself was playing it on low and it was just about unplayable. After I finished streaming tonight I decided to play it again while I wasn't streaming and it's about as smooth as Battlefield 3 is when I stream that.

Something else worth noting, whenever I tab out of the game (regardless of capture method) Battlefield 4 crashes with the below error dialog. Last time this happened I didn't even hook it, I simply started preview mode.

tdd2.jpg


Looking at perfoverlay.drawgraph true, when OBS is running there are huge spikes in the graph, sometimes spiking from 10-15 to 200. I'm guessing this is frame time or the amount of time it takes to draw frames. FPS isn't as accurate, but it usually reflects these spikes. I go from about 40-60 to 20, sometimes 10, and occasionally 2-4.

Code:
08:53:43: Open Broadcaster Software v0.571b - 32bit (´・ω・`)
08:53:43: -------------------------------
08:53:43: CPU Name: AMD FX(tm)-8350 Eight-Core Processor
08:53:43: CPU Speed: 4214MHz
08:53:43: Physical Memory:  4095MB Total, 4095MB Free
08:53:43: stepping id: 0, model 2, family 15, type 0, extmodel 0, extfamily 3, HTT 1, logical cores 8, total cores 4
08:53:43: monitor 1: pos={0, 0}, size={1920, 1080}
08:53:43: monitor 2: pos={-1680, 0}, size={1680, 1050}
08:53:43: Windows Version: 6.1 Build 7601 S
08:53:43: Aero is Disabled
08:53:43: -------------------------------
08:53:43: OBS Modules:
08:53:43: Base Address     Module
08:53:43: 013D0000         OBS.exe
08:53:43: 5C130000         OBSApi.dll
08:53:43: 5C570000         DShowPlugin.dll
08:53:43: 5C110000         GraphicsCapture.dll
08:53:43: 5C0F0000         NoiseGate.dll
08:53:43: 5C0D0000         PSVPlugin.dll
08:53:43: ------------------------------------------
08:53:43: Adapter 1
08:53:43:   Video Adapter: AMD Radeon HD 7800 Series
08:53:43:   Video Adapter Dedicated Video Memory: 2120388608
08:53:43:   Video Adapter Shared System Memory: 2174513152
08:53:43: =====Stream Start: 2013-10-01, 08:53:43===============================================
08:53:43:   Multithreaded optimizations: On
08:53:43:   Base resolution: 1920x1080
08:53:43:   Output resolution: 1280x720
08:53:43: ------------------------------------------
08:53:43: Loading up D3D10 on AMD Radeon HD 7800 Series...
08:53:43: ------------------------------------------
08:53:43: Audio Format: 48000hz
08:53:43: Playback device Default
08:53:43: ------------------------------------------
08:53:43: Using desktop audio input: Speakers (Auzentech X-Fi Forte)
08:53:43: Using 7.1 surround speaker setup
08:53:43: ------------------------------------------
08:53:43: Using auxilary audio input: Line 2 (Virtual Audio Cable)
08:53:43: ------------------------------------------
08:53:43: Audio Encoding: AAC
08:53:43:     bitrate: 160
08:53:43: Using graphics capture
08:53:43: ------------------------------------------
08:53:43: Video Encoding: x264
08:53:43:     fps: 30
08:53:43:     width: 1280, height: 720
08:53:43:     preset: veryfast
08:53:43:     profile: high
08:53:43:     keyint: 60
08:53:43:     CBR: no
08:53:43:     CFR: no
08:53:43:     max bitrate: 3100
08:53:43:     buffer size: 5000
08:53:43:     quality: 9
08:53:43: ------------------------------------------
08:53:43: MMDeviceAudioSource: Frequency for device 'Speakers (Auzentech X-Fi Forte)' is 1536000, samples per sec is 48000
08:53:43: MMDeviceAudioSource: Frequency for device 'Line 2 (Virtual Audio Cable)' is 352800, samples per sec is 44100
08:53:49: Total frames encoded: 144, total frames duplicated: 1 (0.69%)
08:53:49: Total frames rendered: 148, number of late frames: 0 (0.00%) (it's okay for some frames to be late)
08:53:49: 
08:53:49: Profiler time results:
08:53:49: 
08:53:49: ==============================================================
08:53:49: video thread frame - [100%] [avg time: 0.725 ms] [children: 0.276%] [unaccounted: 99.7%]
08:53:49: | scene->Preprocess - [0.276%] [avg time: 0.002 ms]
08:53:49: GPU download and conversion - [100%] [avg time: 0.109 ms] [children: 89%] [unaccounted: 11%]
08:53:49: | flush - [75.2%] [avg time: 0.082 ms]
08:53:49: | CopyResource - [10.1%] [avg time: 0.011 ms]
08:53:49: | conversion to 4:2:0 - [3.67%] [avg time: 0.004 ms]
08:53:49: Convert444Threads - [100%] [avg time: 0.553 ms] [children: 98.7%] [unaccounted: 1.27%]
08:53:49: | Convert444toNV12 - [98.7%] [avg time: 0.546 ms]
08:53:49: encoder thread frame - [100%] [avg time: 1.718 ms]
08:53:49: ==============================================================
08:53:49: 
08:53:49: 
08:53:49: Profiler CPU results:
08:53:49: 
08:53:49: ==============================================================
08:53:49: video thread frame - [cpu time: avg 0.21 ms, total 31.2 ms] [avg calls per frame: 1]
08:53:49: | scene->Preprocess - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:53:49: GPU download and conversion - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:53:49: | flush - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:53:49: | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:53:49: | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:53:49: Convert444Threads - [cpu time: avg 0.234 ms, total 62.4 ms] [avg calls per frame: 2]
08:53:49: | Convert444toNV12 - [cpu time: avg 0.234 ms, total 62.4 ms] [avg calls per frame: 2]
08:53:49: encoder thread frame - [cpu time: avg 1.536 ms, total 202.801 ms] [avg calls per frame: 1]
08:53:49: ==============================================================
08:53:49: 
08:53:49: =====Stream End: 2013-10-01, 08:53:49=================================================
08:53:50: =====Stream Start: 2013-10-01, 08:53:50===============================================
08:53:50:   Multithreaded optimizations: On
08:53:50:   Base resolution: 1920x1080
08:53:50:   Output resolution: 1280x720
08:53:50: ------------------------------------------
08:53:50: Loading up D3D10 on AMD Radeon HD 7800 Series...
08:53:50: ------------------------------------------
08:53:50: Audio Format: 48000hz
08:53:50: Playback device Default
08:53:50: ------------------------------------------
08:53:50: Using desktop audio input: Speakers (Auzentech X-Fi Forte)
08:53:50: Using 7.1 surround speaker setup
08:53:50: ------------------------------------------
08:53:50: Using auxilary audio input: Line 2 (Virtual Audio Cable)
08:53:50: ------------------------------------------
08:53:50: Audio Encoding: AAC
08:53:50:     bitrate: 160
08:53:50: Using graphics capture
08:53:50: ------------------------------------------
08:53:50: Video Encoding: x264
08:53:50:     fps: 30
08:53:50:     width: 1280, height: 720
08:53:50:     preset: veryfast
08:53:50:     profile: high
08:53:50:     keyint: 60
08:53:50:     CBR: no
08:53:50:     CFR: no
08:53:50:     max bitrate: 3100
08:53:50:     buffer size: 5000
08:53:50:     quality: 9
08:53:50: ------------------------------------------
08:53:50: MMDeviceAudioSource: Frequency for device 'Speakers (Auzentech X-Fi Forte)' is 1536000, samples per sec is 48000
08:53:50: MMDeviceAudioSource: Frequency for device 'Line 2 (Virtual Audio Cable)' is 352800, samples per sec is 44100
08:53:57: SharedTexCapture hooked
08:54:00: GraphicsCaptureSource::NewCapture:  eliminating old capture
08:54:00: SharedTexCapture hooked
08:54:00: GraphicsCaptureSource::NewCapture:  eliminating old capture
08:54:00: SharedTexCapture hooked
08:55:49: Exit signal received, terminating capture
08:57:24: Total frames encoded: 6394, total frames duplicated: 134 (2.10%)
08:57:24: Number of frames skipped due to encoder lag: 2 (0.03%)
08:57:24: Total frames rendered: 6344, number of late frames: 16 (0.25%) (it's okay for some frames to be late)
08:57:24: 
08:57:24: Profiler time results:
08:57:24: 
08:57:24: ==============================================================
08:57:24: video thread frame - [100%] [avg time: 0.95 ms] [children: 0.316%] [unaccounted: 99.7%]
08:57:24: | scene->Preprocess - [0.316%] [avg time: 0.003 ms]
08:57:24: GPU download and conversion - [100%] [avg time: 0.442 ms] [children: 85.1%] [unaccounted: 14.9%]
08:57:24: | flush - [62%] [avg time: 0.274 ms]
08:57:24: | CopyResource - [21.9%] [avg time: 0.097 ms]
08:57:24: | conversion to 4:2:0 - [1.13%] [avg time: 0.005 ms]
08:57:24: Convert444Threads - [100%] [avg time: 0.567 ms] [children: 98.6%] [unaccounted: 1.41%]
08:57:24: | Convert444toNV12 - [98.6%] [avg time: 0.559 ms]
08:57:24: encoder thread frame - [100%] [avg time: 1.736 ms]
08:57:24: ==============================================================
08:57:24: 
08:57:24: 
08:57:24: Profiler CPU results:
08:57:24: 
08:57:24: ==============================================================
08:57:24: video thread frame - [cpu time: avg 0.122 ms, total 780.005 ms] [avg calls per frame: 1]
08:57:24: | scene->Preprocess - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:57:24: GPU download and conversion - [cpu time: avg 0.024 ms, total 156.001 ms] [avg calls per frame: 1]
08:57:24: | flush - [cpu time: avg 0.022 ms, total 140.401 ms] [avg calls per frame: 1]
08:57:24: | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:57:24: | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
08:57:24: Convert444Threads - [cpu time: avg 0.277 ms, total 3510.02 ms] [avg calls per frame: 2]
08:57:24: | Convert444toNV12 - [cpu time: avg 0.274 ms, total 3478.82 ms] [avg calls per frame: 2]
08:57:24: encoder thread frame - [cpu time: avg 1.175 ms, total 7503.65 ms] [avg calls per frame: 1]
08:57:24: ==============================================================
08:57:24: 
08:57:24: =====Stream End: 2013-10-01, 08:57:24=================================================
08:59:44: =====Stream Start: 2013-10-01, 08:59:44===============================================
08:59:44:   Multithreaded optimizations: On
08:59:44:   Base resolution: 1920x1080
08:59:44:   Output resolution: 1280x720
08:59:44: ------------------------------------------
08:59:44: Loading up D3D10 on AMD Radeon HD 7800 Series...
08:59:45: ------------------------------------------
08:59:45: Audio Format: 48000hz
08:59:45: Playback device Default
08:59:45: ------------------------------------------
08:59:45: Using desktop audio input: Speakers (Auzentech X-Fi Forte)
08:59:45: Using 7.1 surround speaker setup
08:59:45: ------------------------------------------
08:59:45: Using auxilary audio input: Line 2 (Virtual Audio Cable)
08:59:45: ------------------------------------------
08:59:45: Audio Encoding: AAC
08:59:45:     bitrate: 160
08:59:45: Using Monitor Capture
08:59:45: ------------------------------------------
08:59:45: Video Encoding: x264
08:59:45:     fps: 30
08:59:45:     width: 1280, height: 720
08:59:45:     preset: veryfast
08:59:45:     profile: high
08:59:45:     keyint: 60
08:59:45:     CBR: no
08:59:45:     CFR: no
08:59:45:     max bitrate: 3100
08:59:45:     buffer size: 5000
08:59:45:     quality: 9
08:59:45: ------------------------------------------
08:59:45: MMDeviceAudioSource: Frequency for device 'Speakers (Auzentech X-Fi Forte)' is 1536000, samples per sec is 48000
08:59:45: MMDeviceAudioSource: Frequency for device 'Line 2 (Virtual Audio Cable)' is 352800, samples per sec is 44100
09:04:35: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
09:04:35:   New Scene
09:04:35: Using graphics capture
09:04:35: SharedTexCapture hooked
09:04:56: Exit signal received, terminating capture
09:05:10: SharedTexCapture hooked
09:05:23: GraphicsCaptureSource::NewCapture:  eliminating old capture
Warning -- SharedTexCapture::Init: Could not open file mapping: 2
09:05:24: SharedTexCapture hooked
09:07:23: Exit signal received, terminating capture
09:07:50: Total frames encoded: 14538, total frames duplicated: 965 (6.64%)
09:07:50: Number of frames skipped due to encoder lag: 11 (0.08%)
09:07:50: Total frames rendered: 14287, number of late frames: 91 (0.64%) (it's okay for some frames to be late)
09:07:50: 
09:07:50: Profiler time results:
09:07:50: 
09:07:50: ==============================================================
09:07:50: video thread frame - [100%] [avg time: 6.103 ms] [children: 61.4%] [unaccounted: 38.6%]
09:07:50: | scene->Preprocess - [61.4%] [avg time: 3.748 ms]
09:07:50: GPU download and conversion - [100%] [avg time: 0.631 ms] [children: 87.8%] [unaccounted: 12.2%]
09:07:50: | flush - [75.4%] [avg time: 0.476 ms]
09:07:50: | CopyResource - [11.3%] [avg time: 0.071 ms]
09:07:50: | conversion to 4:2:0 - [1.11%] [avg time: 0.007 ms]
09:07:50: Convert444Threads - [100%] [avg time: 0.656 ms] [children: 98.2%] [unaccounted: 1.83%]
09:07:50: | Convert444toNV12 - [98.2%] [avg time: 0.644 ms]
09:07:50: encoder thread frame - [100%] [avg time: 1.718 ms]
09:07:50: ==============================================================
09:07:50: 
09:07:50: 
09:07:50: Profiler CPU results:
09:07:50: 
09:07:50: ==============================================================
09:07:50: video thread frame - [cpu time: avg 4.09 ms, total 58438 ms] [avg calls per frame: 1]
09:07:50: | scene->Preprocess - [cpu time: avg 3.145 ms, total 44943.9 ms] [avg calls per frame: 1]
09:07:50: GPU download and conversion - [cpu time: avg 0.058 ms, total 842.403 ms] [avg calls per frame: 1]
09:07:50: | flush - [cpu time: avg 0.038 ms, total 546.002 ms] [avg calls per frame: 1]
09:07:50: | CopyResource - [cpu time: avg 0.005 ms, total 78 ms] [avg calls per frame: 1]
09:07:50: | conversion to 4:2:0 - [cpu time: avg 0.002 ms, total 31.201 ms] [avg calls per frame: 1]
09:07:50: Convert444Threads - [cpu time: avg 0.474 ms, total 13540.9 ms] [avg calls per frame: 2]
09:07:50: | Convert444toNV12 - [cpu time: avg 0.47 ms, total 13416.1 ms] [avg calls per frame: 2]
09:07:50: encoder thread frame - [cpu time: avg 1.226 ms, total 17815.3 ms] [avg calls per frame: 1]
09:07:50: ==============================================================
09:07:50: 
09:07:50: =====Stream End: 2013-10-01, 09:07:50=================================================


Last game capture log:
2013-10-01, 09:05:09: we're booting up: 
09:05:09: DXGI Present
09:05:09: (half life scientist) everything..  seems to be in order
09:05:10: DXGI: Found D3D 11
09:05:10: setting up d3d11 data
09:05:10: ---------------------- Cleared D3D11 Capture ----------------------
09:05:10: found dxgi format (dx11) of: 28, size: {1920, 1080}, multisampled: false
09:05:10: DoD3D11Hook: success
09:05:10: successfully capturing d3d11 frames via GPU
09:05:23: ---------------------- Cleared D3D11 Capture ----------------------
09:05:23: DXGI: Found D3D 11
09:05:23: setting up d3d11 data
09:05:23: ---------------------- Cleared D3D11 Capture ----------------------
09:05:23: DoD3D11Hook: success
09:05:23: ---------------------- Cleared D3D11 Capture ----------------------
09:05:24: DXGI: Found D3D 11
09:05:24: setting up d3d11 data
09:05:24: ---------------------- Cleared D3D11 Capture ----------------------
09:05:24: DoD3D11Hook: success
09:05:24: successfully capturing d3d11 frames via GPU
09:07:08: ---------------------- Cleared D3D11 Capture ----------------------

I thought maybe this could be my processor getting pegged, as it's very close to 100% utilization, but it never reaches it. It usually sits at about 80-95%. Changing the priority of BF4 doesn't do anything.


 

Lain

Forum Admin
Lain
Forum Moderator
Developer
A new game, a new problem. Thank you for reporting it at least, I'm not entirely sure what to do yet but I'm going to check to see if anyone else is having this problem (and if anyone else is I would appreciate it if they posted)
 

Bensam123

Member
Looking at your thread Gartokk, your capture card doesn't do anything unless it's in another computer. You'll still get the encoding workload using a Live Gamer HD. OBS doesn't have support for the hardware encoding functionality. Those are pretty much identical problems as myself.

I'm starting to suspect that BF4 doesn't deal well with 100% CPU utilization or close to it. When I get close to 100% utilization the game chokes and I get a spike, which backs down the FPS and utilization. Unlike other games and it's predecessor it simply doesn't throttle the FPS when it reaches that point or deal with it gracefully. I'm not sure if this is a beta problem or what, but it definitely was affecting my stream quality.

The stream indicator was almost constantly red, but I wasn't dropping any frames.
 

dodgepong

Administrator
Community Helper
I wouldn't expect any game to deal well with 100% CPU utilization. Maybe some of them do, but I wouldn't consider that the baseline.
 

romcom

New Member
Dice is currently looking into a potential bug that causes extremely high CPU usage. I run a i7 3770k @ 4.6ghz and before running OBS I was running in the 75-80% cpu usage range regardless of settings or resolutions. It makes it a little difficult to encode with so little head room so currently the only way to stream BF4 is with the use of a capture card until the issue is resolved.
 

dodgepong

Administrator
Community Helper
To clarify, a capture card won't help unless the capture card is in a separate computer from the one you are playing BF4 on.
 

badbadrobot

Member
I'm having this issue as well. I've tried using veryfast encoding AND quick sync. CPU is 65%-80%. If I have OBS streaming or even previewing it makes BF4 studder and lag so much. Not sure if this can be fixed.

Here is my log:

20:35:39: Open Broadcaster Software v0.571b - 64bit ( ^ω^)
20:35:39: -------------------------------
20:35:39: CPU Name: Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz
20:35:39: CPU Speed: 3531MHz
20:35:39: Physical Memory: 8079MB Total, 3941MB Free
20:35:39: stepping id: 9, model 10, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 8, total cores 4
20:35:39: monitor 1: pos={0, 0}, size={1920, 1080}
20:35:39: monitor 2: pos={1920, 0}, size={1920, 1080}
20:35:39: monitor 3: pos={3840, 0}, size={1280, 720}
20:35:39: Windows Version: 6.1 Build 7601 S
20:35:39: Aero is Disabled
20:35:39: -------------------------------
20:35:39: OBS Modules:
20:35:39: Base Address Module
20:35:39: 000000003F170000 OBS.exe
20:35:39: 00000000EE1D0000 OBSApi.dll
20:35:39: 00000000FAC40000 DShowPlugin.dll
20:35:39: 00000000FACA0000 GraphicsCapture.dll
20:35:39: 00000000FAFB0000 NoiseGate.dll
20:35:39: 00000000FAC20000 PSVPlugin.dll
20:35:39: ------------------------------------------
20:35:39: Adapter 1
20:35:39: Video Adapter: NVIDIA GeForce GTX 680
20:35:39: Video Adapter Dedicated Video Memory: 2087387136
20:35:39: Video Adapter Shared System Memory: 2147807232
20:35:39: ------------------------------------------
20:35:39: Adapter 2
20:35:39: Video Adapter: Intel(R) HD Graphics 4000
20:35:39: Video Adapter Dedicated Video Memory: 67108864
20:35:39: Video Adapter Shared System Memory: 1711276032
20:35:39: Using fixed low latency mode, factor 20
20:35:39: =====Stream Start: 2013-10-02, 20:35:39===============================================
20:35:39: Multithreaded optimizations: On
20:35:39: Base resolution: 1920x1080
20:35:39: Output resolution: 1280x720
20:35:39: ------------------------------------------
20:35:39: Loading up D3D10 on NVIDIA GeForce GTX 680...
20:35:39: ------------------------------------------
20:35:39: Audio Format: 48000hz
20:35:39: Playback device {0.0.0.00000000}.{8d0305bc-ce5b-43a2-9a69-6a9bcd961e43}
20:35:39: ------------------------------------------
20:35:39: Using desktop audio input: Speakers (7- Logitech G930 Headset)
20:35:39: Using 7.1 surround speaker setup
20:35:39: ------------------------------------------
20:35:39: Using auxilary audio input: Microphone (7- Logitech G930 Headset)
20:35:39: ------------------------------------------
20:35:39: Audio Encoding: AAC
20:35:39: bitrate: 160
20:35:39: ------------------------------------------
20:35:39: device: Logitech HD Pro Webcam C920,
20:35:39: device id \\?\usb#vid_046d&pid_082d&mi_00#7&3611481c&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{bbefb6c7-2fc4-4139-bb8b-a58bba724083},
20:35:39: chosen type: I420, usingFourCC: false, res: 1920x1080 - 1920x1080, frameIntervals: 333333-2000000, fourCC: 'I420'
20:35:39: audio device: Disable,
20:35:39: audio device id Disabled,
20:35:39:
20:35:40: Using directshow input
20:35:40: Using graphics capture
20:35:40: Using bitmap image
20:35:40: ------------------------------------------
20:35:40: Video Encoding: x264
20:35:40: fps: 60
20:35:40: width: 1280, height: 720
20:35:40: preset: faster
20:35:40: profile: high
20:35:40: keyint: 120
20:35:40: CBR: yes
20:35:40: CFR: no
20:35:40: max bitrate: 3500
20:35:40: buffer size: 3500
20:35:40: ------------------------------------------
20:35:40: MMDeviceAudioSource: Frequency for device 'Speakers (7- Logitech G930 Headset)' is 1536000, samples per sec is 48000
20:35:40: MMDeviceAudioSource: Frequency for device 'Microphone (7- Logitech G930 Headset)' is 64000, samples per sec is 16000
20:35:40: SharedTexCapture hooked
20:35:42: Using RTMP service: Twitch / Justin.tv
20:35:42: Server selection: rtmp://live-ord.justin.tv/app
20:35:42: Interface: Realtek PCIe GBE Family Controller #2 (ethernet, 100 mbps)
20:35:42: Completed handshake with rtmp://live-ord.justin.tv/app in 177 ms.
20:35:43: SO_SNDBUF was at 8192
20:35:43: SO_SNDBUF is now 65536
20:36:14: GraphicsCaptureSource::NewCapture: eliminating old capture
20:36:14: SharedTexCapture hooked
20:36:16: GraphicsCaptureSource::NewCapture: eliminating old capture
20:36:16: SharedTexCapture hooked
20:36:17: GraphicsCaptureSource::NewCapture: eliminating old capture
20:36:17: SharedTexCapture hooked
20:36:39: GraphicsCaptureSource::NewCapture: eliminating old capture
20:36:39: SharedTexCapture hooked
20:36:44: GraphicsCaptureSource::NewCapture: eliminating old capture
20:36:44: SharedTexCapture hooked
20:36:59: GraphicsCaptureSource::NewCapture: eliminating old capture
20:36:59: SharedTexCapture hooked
20:37:02: GraphicsCaptureSource::NewCapture: eliminating old capture
20:37:02: SharedTexCapture hooked
20:37:03: GraphicsCaptureSource::NewCapture: eliminating old capture
20:37:03: SharedTexCapture hooked
20:42:07: Total frames encoded: 23154, total frames duplicated: 816 (3.52%)
20:42:07: Total frames rendered: 22990, number of late frames: 19 (0.08%) (it's okay for some frames to be late)
20:42:07: RTMPPublisher::SocketLoop: Graceful loop exit
20:42:07: Average send payload: 22799 bytes, average send interval: 50 ms
20:42:07: Number of times waited to send: 0, Waited for a total of 0 bytes
20:42:07: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
20:42:07: Number of bytes sent: 171494481
20:42:07:
20:42:07: Profiler time results:
20:42:07:
20:42:07: ==============================================================
20:42:07: video thread frame - [100%] [avg time: 1.678 ms] [children: 43.2%] [unaccounted: 56.8%]
20:42:07: | scene->Preprocess - [43.2%] [avg time: 0.725 ms]
20:42:07: GPU download and conversion - [100%] [avg time: 0.56 ms] [children: 43.2%] [unaccounted: 56.8%]
20:42:07: | flush - [34.3%] [avg time: 0.192 ms]
20:42:07: | CopyResource - [8.39%] [avg time: 0.047 ms]
20:42:07: | conversion to 4:2:0 - [0.536%] [avg time: 0.003 ms]
20:42:07: Convert444Threads - [100%] [avg time: 0.569 ms] [children: 99.5%] [unaccounted: 0.527%]
20:42:07: | Convert444toNV12 - [99.5%] [avg time: 0.566 ms]
20:42:07: encoder thread frame - [100%] [avg time: 0.923 ms]
20:42:07: ==============================================================
20:42:07:
20:42:07:
20:42:07: Profiler CPU results:
20:42:07:
20:42:07: ==============================================================
20:42:07: video thread frame - [cpu time: avg 0.762 ms, total 17518.9 ms] [avg calls per frame: 1]
20:42:07: | scene->Preprocess - [cpu time: avg 0.523 ms, total 12043.3 ms] [avg calls per frame: 1]
20:42:07: GPU download and conversion - [cpu time: avg 0.06 ms, total 1388.41 ms] [avg calls per frame: 1]
20:42:07: | flush - [cpu time: avg 0.025 ms, total 577.2 ms] [avg calls per frame: 1]
20:42:07: | CopyResource - [cpu time: avg 0.01 ms, total 234.002 ms] [avg calls per frame: 1]
20:42:07: | conversion to 4:2:0 - [cpu time: avg 0.001 ms, total 31.2 ms] [avg calls per frame: 1]
20:42:07: Convert444Threads - [cpu time: avg 0.492 ms, total 22604.5 ms] [avg calls per frame: 2]
20:42:07: | Convert444toNV12 - [cpu time: avg 0.491 ms, total 22542.1 ms] [avg calls per frame: 2]
20:42:07: encoder thread frame - [cpu time: avg 0.283 ms, total 6552.04 ms] [avg calls per frame: 1]
20:42:07: ==============================================================
20:42:07:
20:42:07: =====Stream End: 2013-10-02, 20:42:07=================================================
 

Bensam123

Member
Yeah, I'm not entirely sure it's BF4 though. The crashes I get just by hooking it or even running OBS in preview mode and monitor capture (never hooking BF4). Just running the encoder seems to mess with BF4 for some reason. I tried this out with a completely black screen and it still caused stutters in BF4. OBS was using all of like 6% of my processor while the black screen was up.

It must be a combination of a OBS bug and BF4 also having issues with stutters at high CPU utilization.
 

Quinsta

New Member
I have also having an issue with streaming BF4. Massive drop in framerate during gameplay and errors within OBS (Taking to long to encode skipping frames).

OBS has been great but BF4 is the first game I am having issues with. I did however find that by dropping the FPS from 60 to 30 seems to really improve the gameplay so its not so choppy.

Im hoping its a BETA issue and that the full game will be optimized better to handle these problems. The reason I think it is because its the BETA version build is causing this is becuase the Origin in game broadcaster isnt even set to allow broadcasting to Twitch which makes me think they will have this sorted by release.

Quinsta
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
BF4 apparently eats a ton of CPU. Use quicksync if you have it. The game is totally eating up everything.
 

Absarn

Member
It's pretty much a game problem, alot of other people including me has reported that the game is using tons of CPU power. But which isnt caused by OBS though, but the problem is in the game it self. But i guess it's called Beta for a reason and hopefully I cross my fingers for it to get fixed soon or til release
 

badbadrobot

Member
dodgepong said:
badbadrobot, according to that log, you are not using QuickSync.

I did have it on, but I was messing with settings so much I may have turned it off before I showed you the log. But, the new beta drivers released for BF4 have made quicksync not work correctly (very boxy and studdery) as you can see here in this test: http://www.twitch.tv/thebadbadrobot/b/466886472

I can only get quicksync to work smoothly on GeForce 327.23 Driver. But on that driver BF4 runs like crap in general. On top of that, I have the same issue someone else just posted, I don't even have to be capturing BF4, but if OBS is previewing/streaming it destroys the battlefield 4 gameplay.

So for some reason OBS and BF4 do NOT play nice.
 

romcom

New Member
Ok, I finally got a solid stream going using quicksync on my test channel. You will notice subpar fps but that's just because I can only run 1 of my 7870 XT's (can't wait for that r9 290x) but I only had 50% cpu load.

I had similar issues like Badbadrobot was experiencing but there a few things you can do to prevent this. Do not change graphics settings in BF4 mid stream and also try game capture in windowed mode. Windowed mode also prevents any urge to alt tab in fullscreen which BF4 and quicksync do not like to do.

http://www.twitch.tv/romcomvom/b/467038090
 

Bensam123

Member
Does anyone know of a way to framecap BF4? This would probably be a good temporary fix (as long as the engine is tied to the gpu render). Also anyone heard anything from Dice besides 'they're fixing it'? I don't keep up with their blogs.


Way to be constructive Dodgepong and actually present meaningful discussion. You essentially said everything I said on the first page only in a condescending snide manner, most people know things like 'using a capture PC reduces CPU utilization'. Completely relevant to the conversation and attempting to diagnose and fix the problem at hand.
 

Sapiens

Forum Moderator
Bensam123 said:
Does anyone know of a way to framecap BF4?
Dxtory can do this, but BF3 didn't exhibit any significant reduction of CPU/GPU usage from frame capping, so I wouldn't be surprised if BF4 behaved similarly.

Bensam123 said:
Way to be constructive Dodgepong and actually blah blah blah butthurt
dodgepong contributes far more to this forum and its users than either of us, and what he's posted so far in the topic has been pretty much spot on. He clarified about capture cards because there's a disturbing number of people who think a capture card alone will magically improve performance.
 
Top