Question / Help Poor Quality (Semi-Blurry Stream) 720p @ 60 fps

RaX

New Member
My main problem is just as the title says. I used to run at 720p @ 25 fps and the quality looked amazing (although the lower fps was noticeable). I'm now trying to stream at 60 fps but am getting somewhat blurry images, especially when there is a lot of movement on the screen (MMO raids). Also, when I look at my replays on Twitch, sometimes it doesn't quite look like 60 fps. I am getting zero performance in the actual game window...zero fps drops that I can notice. I feel like my system can handle these settings flawlessly so I just want to be sure there isn't anything I can change. Log is below.

Code:
22:01:50: Open Broadcaster Software v0.60b - 64bit ( ^ω^)
22:01:50: -------------------------------
22:01:50: CPU Name: Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz
22:01:50: CPU Speed: 3518MHz
22:01:50: Physical Memory:  16328MB Total, 12375MB Free
22:01:50: stepping id: 9, model 58, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 8, total cores 4
22:01:50: monitor 1: pos={0, 0}, size={1920, 1080}
22:01:50: monitor 2: pos={-1920, 0}, size={1920, 1080}
22:01:50: monitor 3: pos={1920, 0}, size={1920, 1080}
22:01:50: Windows Version: 6.1 Build 7601 S
22:01:50: Aero is Enabled
22:01:50: -------------------------------
22:01:50: OBS Modules:
22:01:50: Base Address     Module
22:01:50: 000000003F730000 OBS.exe
22:01:50: 00000000EE230000 OBSApi.dll
22:01:50: 00000000F4480000 DShowPlugin.dll
22:01:50: 00000000F7BD0000 GraphicsCapture.dll
22:01:50: 00000000F4810000 NoiseGate.dll
22:01:50: 00000000F4760000 PSVPlugin.dll
22:01:50: ------------------------------------------
22:01:50: Adapter 1
22:01:50:   Video Adapter: NVIDIA GeForce GTX 680
22:01:50:   Video Adapter Dedicated Video Memory: 4232773632
22:01:50:   Video Adapter Shared System Memory: 3997380608
22:01:50:   Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
22:01:50:   Video Adapter Output 2: pos={-1920, 0}, size={1920, 1080}, attached=true
22:01:50:   Video Adapter Output 3: pos={1920, 0}, size={1920, 1080}, attached=true
22:01:50: =====Stream Start: 2014-02-02, 22:01:50===============================================
22:01:50:   Multithreaded optimizations: On
22:01:50:   Base resolution: 1920x1080
22:01:50:   Output resolution: 1280x720
22:01:50: ------------------------------------------
22:01:50: Loading up D3D10 on NVIDIA GeForce GTX 680 (Adapter 1)...
22:01:50: ------------------------------------------
22:01:50: Audio Format: 48000hz
22:01:50: Playback device Default
22:01:50: ------------------------------------------
22:01:50: Using desktop audio input: Speakers (Logitech G930 Headset)
22:01:50: Using 7.1 surround speaker setup
22:01:50: ------------------------------------------
22:01:50: Using auxilary audio input: Microphone (Logitech G930 Headset)
22:01:50: ------------------------------------------
22:01:50: Audio Encoding: AAC
22:01:50:     bitrate: 128
22:01:50: Using graphics capture
22:01:50: Scene buffering time set to 700
22:01:50: ------------------------------------------
22:01:50: Video Encoding: x264
22:01:50:     fps: 60
22:01:50:     width: 1280, height: 720
22:01:50:     preset: veryfast
22:01:50:     profile: main
22:01:50:     keyint: 120
22:01:50:     CBR: yes
22:01:50:     CFR: yes
22:01:50:     max bitrate: 3300
22:01:50:     buffer size: 3300
22:01:50: ------------------------------------------
22:01:50: SharedTexCapture hooked
22:01:52: Using RTMP service: Twitch / Justin.tv
22:01:52:   Server selection: rtmp://live.justin.tv/app
22:01:52:   Interface: Intel(R) 82579V Gigabit Network Connection (ethernet, 100 mbps)
22:01:52: Completed handshake with rtmp://live.justin.tv/app in 125 ms.
22:01:53: SO_SNDBUF was at 8192
22:01:53: SO_SNDBUF is now 65536
22:01:54: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 131072 (buffer: 33406 / 438272)
22:01:56: RTMPPublisher::SocketLoop: Increasing send buffer to ISB 262144 (buffer: 70070 / 438272)
22:03:39: GetQPCTimeNS: WTF, clock went backwards! 129068031877 < 129068031884
22:05:02: GetQPCTimeNS: WTF, clock went backwards! 129352584346 < 129352584358
22:11:10: GetQPCTimeNS: WTF, clock went backwards! 130618032474 < 130618032482
22:16:44: GetQPCTimeNS: WTF, clock went backwards! 131766316991 < 131766316992
22:19:42: GetQPCTimeNS: WTF, clock went backwards! 132378939942 < 132378939949
22:33:31: GetQPCTimeNS: WTF, clock went backwards! 135227313240 < 135227313241
23:05:39: Total frames encoded: 229680, total frames duplicated: 81 (0.04%)
23:05:39: Total frames rendered: 229672, number of late frames: 11 (0.00%) (it's okay for some frames to be late)
23:05:39: RTMPPublisher::SocketLoop: Graceful loop exit
23:05:39: Average send payload: 7063 bytes, average send interval: 16 ms
23:05:39: Number of times waited to send: 0, Waited for a total of 0 bytes
23:05:39: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
23:05:39: Number of bytes sent: 1643950439
23:05:39: 
23:05:39: Profiler time results:
23:05:39: 
23:05:39: ==============================================================
23:05:39: video thread frame - [100%] [avg time: 0.321 ms] [children: 79.1%] [unaccounted: 20.9%]
23:05:39: | scene->Preprocess - [0.312%] [avg time: 0.001 ms]
23:05:39: | GPU download and conversion - [78.8%] [avg time: 0.253 ms] [children: 58.9%] [unaccounted: 19.9%]
23:05:39: | | flush - [43%] [avg time: 0.138 ms]
23:05:39: | | CopyResource - [15.3%] [avg time: 0.049 ms]
23:05:39: | | conversion to 4:2:0 - [0.623%] [avg time: 0.002 ms]
23:05:39: Convert444Threads - [100%] [avg time: 0.379 ms] [children: 99.5%] [unaccounted: 0.528%]
23:05:39: | Convert444toNV12 - [99.5%] [avg time: 0.377 ms]
23:05:39: encoder thread frame - [100%] [avg time: 0.783 ms]
23:05:39: ==============================================================
23:05:39: 
23:05:39: 
23:05:39: Profiler CPU results:
23:05:39: 
23:05:39: ==============================================================
23:05:39: video thread frame - [cpu time: avg 0.005 ms, total 1185.61 ms] [avg calls per frame: 1]
23:05:39: | scene->Preprocess - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
23:05:39: | GPU download and conversion - [cpu time: avg 0.002 ms, total 561.604 ms] [avg calls per frame: 1]
23:05:39: | | flush - [cpu time: avg 0.001 ms, total 374.403 ms] [avg calls per frame: 1]
23:05:39: | | CopyResource - [cpu time: avg 0 ms, total 140.401 ms] [avg calls per frame: 1]
23:05:39: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
23:05:39: Convert444Threads - [cpu time: avg 0.038 ms, total 17487.7 ms] [avg calls per frame: 2]
23:05:39: | Convert444toNV12 - [cpu time: avg 0.037 ms, total 17394.1 ms] [avg calls per frame: 2]
23:05:39: encoder thread frame - [cpu time: avg 0.084 ms, total 19390.9 ms] [avg calls per frame: 1]
23:05:39: ==============================================================
23:05:39: 
23:05:39: =====Stream End: 2014-02-02, 23:05:39=================================================


Last game capture log:
2014-02-02, 22:01:50: we're booting up: 
22:01:50: CaptureThread: attached to process ffxiv.exe
22:01:50: D3D9 Present
22:01:50: DXGI Present
22:01:50: (half life scientist) everything..  seems to be in order
22:01:50: D3D9EndScene called
22:01:50: D3DPRESENT_PARAMETERS {
22:01:50: 	BackBufferWidth: 1
22:01:50: 	BackBufferHeight: 1
22:01:50: 	BackBufferFormat: D3DFMT_X8R8G8B8
22:01:50: 	BackBufferCount: 1
22:01:50: 	MultiSampleType: D3DMULTISAMPLE_NONE
22:01:50: 	MultiSampleQuality: 0
22:01:50: 	SwapEffect: D3DSWAPEFFECT_DISCARD
22:01:50: 	hDeviceWindow: 983804
22:01:50: 	Windowed: true
22:01:50: 	EnableAutoDepthStencil: false
22:01:50: 	AutoDepthStencilFormat: D3DFMT_UNKNOWN
22:01:50: 	Flags: None
22:01:50: 	FullScreen_RefreshRateInHz: 0
22:01:50: 	PresentationInterval: 2147483648
22:01:50: };
22:01:50: successfully set up d3d9 hooks
22:01:50: D3D9SwapPresent called
22:01:50: DoD3D9GPUHook: success
22:01:50: D3DSURFACE_DESC {
22:01:50: 	Format: D3DFMT_X8R8G8B8
22:01:50: 	Type: D3DRTYPE_SURFACE
22:01:50: 	Usage: D3DUSAGE_RENDERTARGET 
22:01:50: 	Pool: D3DPOOL_DEFAULT
22:01:50: 	MultiSampleType: D3DMULTISAMPLE_NONE
22:01:50: 	MultiSampleQuality: 0
22:01:50: 	Width: 1920
22:01:50: 	Height: 1080
22:01:50: };
22:01:50: successfully capturing d3d9 frames via GPU
23:05:39: ---------------------- Cleared D3D9 Capture ----------------------
23:05:39: D3D9EndScene called
23:05:39: D3D9SwapPresent called

Thanks for any and all help!
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Depends on the game and motion. More motion requires more bitrate, though usually it's fine. You have a video perhaps?
 

Krazy

Town drunk
Well, as you said your system seems to be handling things flawlessly. You can start experimenting with lowering the x264 preset for some extra quality to help out, but keep in mind it may exponentially increase system load.
 

dodgepong

Administrator
Community Helper
FFXIV is a pretty high-motion game, which is always hard to make look good with the kind of compression you need in order to stream. I recommend lowering to 30fps to spread bit rate around more efficiently, and if you can afford to increase bit rate, do so. You might be able to lower your x264 preset to faster, too, which should help.
 
Top