Question / Help PayDay 2 Frame Drops

TOYBOXX

New Member
Payday 2 has been giving me problems with dropped frames lately. I'm recording locally and running at 25 FPS. I've tinkered with adjusting the frame rate, bitrate, you name it, I've tried it. Still no success. Is there a solution out there?

Big thanks in advance!

Log File:

Code:
01:03:10: Open Broadcaster Software v0.591b - 32bit (´・ω・`)
01:03:10: -------------------------------
01:03:10: CPU Name: AMD A6-3620 APU with Radeon(tm) HD Graphics
01:03:10: CPU Speed: 2196MHz
01:03:10: Physical Memory:  4095MB Total, 4095MB Free
01:03:10: stepping id: 0, model 1, family 18, type 0, extmodel 8, extfamily 1, HTT 1, logical cores 4, total cores 4
01:03:10: monitor 1: pos={0, 0}, size={1680, 1050}
01:03:10: monitor 2: pos={1680, 0}, size={1600, 900}
01:03:10: Windows Version: 6.1 Build 7601 S
01:03:10: Aero is Disabled
01:03:10: -------------------------------
01:03:10: OBS Modules:
01:03:10: Base Address     Module
01:03:10: 01060000         OBS.exe
01:03:10: 6A590000         OBSApi.dll
01:03:10: 70D80000         DShowPlugin.dll
01:03:10: 6AAD0000         GraphicsCapture.dll
01:03:10: 6AAB0000         NoiseGate.dll
01:03:10: 6AA90000         PSVPlugin.dll
01:03:10: ------------------------------------------
01:03:10: Adapter 1
01:03:10:   Video Adapter: AMD Radeon HD 6670
01:03:10:   Video Adapter Dedicated Video Memory: 1060839424
01:03:10:   Video Adapter Shared System Memory: 3234062336
01:03:10:   Video Adapter Output 1: pos={0, 0}, size={1680, 1050}, attached=true
01:03:10:   Video Adapter Output 2: pos={1680, 0}, size={1600, 900}, attached=true
01:03:10: =====Stream Start: 2013-12-22, 01:03:10===============================================
01:03:10:   Multithreaded optimizations: On
01:03:10:   Base resolution: 1680x1050
01:03:10:   Output resolution: 1680x1050
01:03:10: ------------------------------------------
01:03:10: Loading up D3D10 on AMD Radeon HD 6670 (Adapter 1)...
01:03:10: ------------------------------------------
01:03:10: Audio Format: 48000hz
01:03:10: Playback device {0.0.0.00000000}.{db7e8424-526c-491d-86d8-106361f3e063}
01:03:10: ------------------------------------------
01:03:10: Using desktop audio input: Speakers / Headphones (IDT High Definition Audio CODEC)
01:03:10: ------------------------------------------
01:03:10: Using auxilary audio input: Microphone (IDT High Definition Audio CODEC)
01:03:10: Using Mic QPC timestamps
01:03:10: ------------------------------------------
01:03:10: Audio Encoding: AAC
01:03:10:     bitrate: 128
01:03:10: Using bitmap image
Warning -- DShowPlugin: Invalid audio device: name '(null)', path '(null)'
01:03:10: DShowPlugin: No audio pin, result = 80004005
01:03:10: ------------------------------------------
01:03:10:     device: Logitech HD Webcam C615,
01:03:10:     device id \\?\usb#vid_046d&pid_082c&mi_02#6&1c52c519&0&0002#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{bbefb6c7-2fc4-4139-bb8b-a58bba724083},
01:03:10:     chosen type: I420, usingFourCC: false, res: 1280x720 - 1280x720, frameIntervals: 333333-2000000
01:03:10:     use buffering: false - 0, fourCC: 'I420'
01:03:10:     audio device: (null),
01:03:10:     audio device id (null),
01:03:10: 
01:03:10: Using directshow input
01:03:10: Using graphics capture
01:03:11: Scene buffering time set to 700
01:03:11: ------------------------------------------
01:03:11: Video Encoding: x264
01:03:11:     fps: 25
01:03:11:     width: 1680, height: 1050
01:03:11:     preset: ultrafast
01:03:11:     profile: main
01:03:11:     keyint: 50
01:03:11:     CBR: yes
01:03:11:     CFR: yes
01:03:11:     max bitrate: 4500
01:03:11:     buffer size: 4500
01:03:11: ------------------------------------------
01:03:11: MMDeviceAudioSource: Frequency for device 'Speakers / Headphones (IDT High Definition Audio CODEC)' is 768000, samples per sec is 96000
01:03:11: MMDeviceAudioSource: Frequency for device 'Microphone (IDT High Definition Audio CODEC)' is 1536000, samples per sec is 192000
01:03:11: Audio timestamp for device 'Microphone (IDT High Definition Audio CODEC)' was behind target timestamp by 31!  Had to delete audio segment.
01:03:11: Audio timestamp for device 'Microphone (IDT High Definition Audio CODEC)' was behind target timestamp by 21!  Had to delete audio segment.
01:03:11: Audio timestamp for device 'Microphone (IDT High Definition Audio CODEC)' was behind target timestamp by 11!  Had to delete audio segment.
01:03:11: Audio timestamp for device 'Microphone (IDT High Definition Audio CODEC)' was behind target timestamp by 1!  Had to delete audio segment.
01:03:13: Using RTMP service: Twitch / Justin.tv
01:03:13:   Server selection: rtmp://live-ord.justin.tv/app
01:03:13:   Interface: Realtek PCIe GBE Family Controller (ethernet, 100 mbps)
01:03:13: Completed handshake with rtmp://live-ord.justin.tv/app in 171 ms.
01:03:13: SO_SNDBUF was at 8192
01:03:13: SO_SNDBUF is now 65536
01:03:15: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 131072 (buffer: 0 / 591872)
01:03:25: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 262144 (buffer: 86862 / 591872)
01:03:25: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 524288 (buffer: 0 / 591872)
01:04:05: SharedTexCapture hooked
01:22:52: Using graphics capture
01:22:58: SharedTexCapture hooked
01:29:54: Using graphics capture
01:30:05: Using graphics capture
01:30:10: SharedTexCapture hooked
01:40:09: Using graphics capture
01:40:21: SharedTexCapture hooked
01:40:38: Using graphics capture
01:40:43: SharedTexCapture hooked
01:40:47: Using graphics capture
01:40:50: Using graphics capture
01:40:55: SharedTexCapture hooked
02:32:03: Capture window 0x0011091E invalid or changing, terminating capture
02:32:16: Using text output
02:46:17: SharedTexCapture hooked
03:46:14: Capture window 0x00230626 invalid or changing, terminating capture
03:46:31: Total frames encoded: 244988, total frames duplicated: 5100 (2.08%)
03:46:31: Total frames rendered: 244368, number of late frames: 334 (0.14%) (it's okay for some frames to be late)
03:46:32: RTMPPublisher::SocketLoop: Graceful loop exit
03:46:32: Average send payload: 11720 bytes, average send interval: 20 ms
03:46:32: Number of times waited to send: 2, Waited for a total of 8194 bytes
03:46:32: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
03:46:32: Number of bytes sent: 5676084401
03:46:32: 
03:46:32: Profiler time results:
03:46:32: 
03:46:32: ==============================================================
03:46:32: video thread frame - [100%] [avg time: 6.629 ms] [children: 69.2%] [unaccounted: 30.8%]
03:46:32: | scene->Preprocess - [18.2%] [avg time: 1.204 ms]
03:46:32: | GPU download and conversion - [51.1%] [avg time: 3.385 ms] [children: 31%] [unaccounted: 20.1%]
03:46:32: | | flush - [30.3%] [avg time: 2.006 ms]
03:46:32: | | CopyResource - [0.453%] [avg time: 0.03 ms]
03:46:32: | | conversion to 4:2:0 - [0.256%] [avg time: 0.017 ms]
03:46:32: Convert444Threads - [100%] [avg time: 2.277 ms] [children: 99.1%] [unaccounted: 0.878%]
03:46:32: | Convert444toNV12 - [99.1%] [avg time: 2.257 ms]
03:46:32: encoder thread frame - [100%] [avg time: 2.535 ms]
03:46:32: ==============================================================
03:46:32: 
03:46:32: 
03:46:32: Profiler CPU results:
03:46:32: 
03:46:32: ==============================================================
03:46:32: video thread frame - [cpu time: avg 1.435 ms, total 350753 ms] [avg calls per frame: 1]
03:46:32: | scene->Preprocess - [cpu time: avg 0.84 ms, total 205329 ms] [avg calls per frame: 1]
03:46:32: | GPU download and conversion - [cpu time: avg 0.138 ms, total 33961.4 ms] [avg calls per frame: 1]
03:46:32: | | flush - [cpu time: avg 0.092 ms, total 22557.7 ms] [avg calls per frame: 1]
03:46:32: | | CopyResource - [cpu time: avg 0.019 ms, total 4664.43 ms] [avg calls per frame: 1]
03:46:32: | | conversion to 4:2:0 - [cpu time: avg 0.005 ms, total 1279.21 ms] [avg calls per frame: 1]
03:46:32: Convert444Threads - [cpu time: avg 1.955 ms, total 955725 ms] [avg calls per frame: 2]
03:46:32: | Convert444toNV12 - [cpu time: avg 1.948 ms, total 952308 ms] [avg calls per frame: 2]
03:46:32: encoder thread frame - [cpu time: avg 2.022 ms, total 495475 ms] [avg calls per frame: 1]
03:46:32: ==============================================================
03:46:32: 
03:46:32: =====Stream End: 2013-12-22, 03:46:32=================================================


Last game capture log:
2013-12-22, 02:46:17: we're booting up: 
02:46:17: CaptureThread: attached to process lotroclient.exe
02:46:17: DXGI Present
02:46:17: DXGI: Found D3D 11
02:46:17: setting up d3d11 data
02:46:17: ---------------------- Cleared D3D11 Capture ----------------------
02:46:17: found dxgi format (dx11) of: 28, size: {1680, 1050}, multisampled: true
02:46:17: DoD3D11Hook: success
02:46:17: successfully capturing d3d11 frames via GPU
02:46:19: NV Capture available
02:46:19: FBO available
02:46:19: GL Present
02:46:19: (half life scientist) everything..  seems to be in order
 

FerretBomb

Active Member
Payday 2 is problematic; Overkill coded it quite strangely (doesn't capture the mouse cursor properly, can have draw-issues at random). Only way I've found is by using straight Game Capture in fullscreen mode. Additionally, I'm not sure an APU is going to be able to really encode 1050p video, even at the Ultrafast preset. You may (probably) need to downscale.

Couple of other tips:
-Enable Aero if you're going to use Window Capture, it'll speed it up. Especially with the rather HUGE number of captures you have running, for whatever reason.
-Max bitrate recommended by Twitch is 3500kbps; past this, the ingest servers can (will) have problems accepting your stream. Non-partnered max recommended is 2000.

Yeah, but PD2 was my primary game for a long time there. Low-framerate days just... happened sometimes, seemingly at-random. Usually at the main menu and in crimenet, with performance usually improving in-game (but sometimes needing a restart of PD2, OBS, or both to resolve).
 

TOYBOXX

New Member
What is a good preset for 720p? I'm not looking to go full-on HD with my recordings. I was simply tinkering with the settings that worked best with my other games I tried to capture.
 

TOYBOXX

New Member
Honestly, I think it's the graphics card, but I wasn't sure. The 6670 is considered old tech. Maybe an upgrade is in order? I just wanted to consult with the community first before making an upgrade purchase.
 

FerretBomb

Active Member
For local-recording-only, you can turn the bitrate WAY up (20,000kbps) and go to the Ultrafast encoder preset to minimize the compression used while recording live, then re-compress it later for upload/storage. Downscaling is not required, as you don't have the compression/bandwidth issue to contend with. You can just throw bitrate at the problem.

I'm on a 6870... I'd say that your GPU is less of a problem than the fact that you're on a (notoriously underpowered) APU.

Beyond that, PD2 is just like that sometimes. At random.
 

TOYBOXX

New Member
With the APU I'm able to record, or livestream, most games without any issue. However, with PD2 it seems to be problematic. I do appreciate the help thus far. Thank you. I'll be tinkering with this further.
 
Top