I recently got an Elgato HD60 and got it setup in OBS. Using the software from Elgato (Game Capture HD), I can record at 1080p 60 fps with no issues. However when recording or streaming with OBS, the video and sound from the device will cut out or skip whenever there is loading screen or some form of transition. This seems to happen at any resolution or frame rate. I also tested to see if using the global audio delay had anything to do with it as I will use that to sync game video/audio with desktop audio (for Skype or similar) and set a negative offset to the Elgato device so it matches with the video. The audio offset didn't change anything. Any suggestions to fix this would be great.
Here are recorded videos from both software showing the problem:
Recorded with GCHD 2.1 (1080p 60 fps): https://www.youtube.com/watch?v=Freo709ZwtI
Recorded with OBS at 0ms audio delay (720p 60 fps): https://www.youtube.com/watch?v=bObAS1Xcs8o
Recorded with OBS at 800ms audio delay (720p 60 fps): https://www.youtube.com/watch?v=imRPNpUVSmg
Here are the logs from OBS from a most recent recording which had the same issues:
Here are recorded videos from both software showing the problem:
Recorded with GCHD 2.1 (1080p 60 fps): https://www.youtube.com/watch?v=Freo709ZwtI
Recorded with OBS at 0ms audio delay (720p 60 fps): https://www.youtube.com/watch?v=bObAS1Xcs8o
Recorded with OBS at 800ms audio delay (720p 60 fps): https://www.youtube.com/watch?v=imRPNpUVSmg
Here are the logs from OBS from a most recent recording which had the same issues:
Code:
20:50:39: No Intel graphics adapter visible in QSVHelper.exe, Optimus problem?
20:50:39: CUDA loaded successfully
20:50:39: 1 CUDA capable devices found
20:50:39: [ GPU #0 - < GeForce GT 540M > has Compute SM 2.1, NVENC Not Available ]
20:50:39: No NVENC capable devices found
20:51:05: Open Broadcaster Software v0.651b - 32bit (´・ω・`)
20:51:05: -------------------------------
20:51:05: CPU Name: Intel(R) Core(TM) i7-2760QM CPU @ 2.40GHz
20:51:05: CPU Speed: 2394MHz
20:51:05: Physical Memory: 4095MB Total, 3631MB Free
20:51:05: stepping id: 7, model 42, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 8, total cores 4
20:51:05: monitor 1: pos={0, 0}, size={1920, 1080}
20:51:05: monitor 2: pos={1920, 0}, size={1920, 1080}
20:51:05: Windows Version: 6.1 Build 7601 S
20:51:05: Aero is Enabled
20:51:05: -------------------------------
20:51:05: OBS Modules:
20:51:05: Base Address Module
20:51:05: 003B0000 OBS.exe
20:51:05: 556B0000 OBSApi.dll
20:51:05: 5E540000 DShowPlugin.dll
20:51:05: 5E370000 GraphicsCapture.dll
20:51:05: 5E3F0000 NoiseGate.dll
20:51:05: 5E0F0000 PSVPlugin.dll
20:51:05: 5E330000 scenesw.dll
20:51:05: ------------------------------------------
20:51:05: Adapter 1
20:51:05: Video Adapter: NVIDIA GeForce GT 540M
20:51:05: Video Adapter Dedicated Video Memory: 1027014656
20:51:05: Video Adapter Shared System Memory: 3221106688
20:51:05: Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
20:51:05: Video Adapter Output 2: pos={1920, 0}, size={1920, 1080}, attached=true
20:51:05: =====Stream Start: 2015-05-20, 20:51:05===============================================
20:51:05: Multithreaded optimizations: On
20:51:05: Base resolution: 1920x1080
20:51:05: Output resolution: 1280x720
20:51:05: ------------------------------------------
20:51:05: Loading up D3D10 on NVIDIA GeForce GT 540M (Adapter 1)...
20:51:05: ------------------------------------------
20:51:05: Audio Format: 48000 Hz
20:51:05: ------------------------------------------
20:51:05: Audio Channels: 2 Ch
20:51:05: Playback device Default
20:51:05: ------------------------------------------
20:51:05: Using desktop audio input: ASUS VS228-1 (NVIDIA High Definition Audio)
20:51:05: Global Audio time adjust: 0
20:51:05: ------------------------------------------
20:51:05: Using auxilary audio input: Microphone (Webcam C260)
20:51:05: Mic time offset: 0
20:51:05: ------------------------------------------
20:51:05: Audio Encoding: AAC
20:51:05: bitrate: 128
20:51:05: Using bitmap image
20:51:05: ------------------------------------------
20:51:05: device: Elgato Game Capture HD,
20:51:05: device id {39F50F4C-99E1-464A-B6F9-D605B4FB5918},
20:51:05: chosen type: UYVY, usingFourCC: false, res: 1920x1080 - 1920x1080, frameIntervals: 166666-166666
20:51:05: use buffering: true - 0, fourCC: 'UYVY'
20:51:05:
20:51:05: device audio info - bits per sample: 16, channels: 2, samples per sec: 48000, block size: 4
20:51:05: Elgato Game Capture: force buffering with 1 msec
20:51:08: Using directshow input
20:51:08: Scene buffering time set to 700
20:51:08: ------------------------------------------
20:51:08: Video Encoding: x264
20:51:08: fps: 60
20:51:08: width: 1280, height: 720
20:51:08: preset: veryfast
20:51:08: profile: main
20:51:08: keyint: 120
20:51:08: CBR: yes
20:51:08: CFR: yes
20:51:08: max bitrate: 3500
20:51:08: buffer size: 3500
20:51:08: ------------------------------------------
20:52:07: FlushBufferedVideo: Flushing 20 packets over 317 ms
20:52:08: Total frames encoded: 3518, total frames duplicated: 15 (0.43%)
20:52:08: Total frames rendered: 3546, number of late frames: 1 (0.03%) (it's okay for some frames to be late)
20:52:12:
20:52:12: Profiler time results:
20:52:12:
20:52:12: ==============================================================
20:52:12: video thread frame - [100%] [avg time: 2.463 ms] [children: 97.2%] [unaccounted: 2.8%]
20:52:12: | scene->Preprocess - [73.2%] [avg time: 1.804 ms]
20:52:12: | GPU download and conversion - [24%] [avg time: 0.59 ms] [children: 23.3%] [unaccounted: 0.65%]
20:52:12: | | flush - [22.7%] [avg time: 0.56 ms]
20:52:12: | | CopyResource - [0.325%] [avg time: 0.008 ms]
20:52:12: | | conversion to 4:2:0 - [0.244%] [avg time: 0.006 ms]
20:52:12: Convert444Threads - [100%] [avg time: 0.66 ms] [children: 98.8%] [unaccounted: 1.21%]
20:52:12: | Convert444toNV12 - [98.8%] [avg time: 0.652 ms]
20:52:12: encoder thread frame - [100%] [avg time: 1.242 ms] [children: 1.69%] [unaccounted: 98.3%]
20:52:12: | sending stuff out - [1.69%] [avg time: 0.021 ms]
20:52:12: ==============================================================
20:52:12:
20:52:12:
20:52:12: Profiler CPU results:
20:52:12:
20:52:12: ==============================================================
20:52:12: video thread frame - [cpu time: avg 1.667 ms, total 5912.44 ms] [avg calls per frame: 1]
20:52:12: | scene->Preprocess - [cpu time: avg 1.425 ms, total 5054.43 ms] [avg calls per frame: 1]
20:52:12: | GPU download and conversion - [cpu time: avg 0.197 ms, total 702.009 ms] [avg calls per frame: 1]
20:52:12: | | flush - [cpu time: avg 0.18 ms, total 639.608 ms] [avg calls per frame: 1]
20:52:12: | | CopyResource - [cpu time: avg 0.004 ms, total 15.601 ms] [avg calls per frame: 1]
20:52:12: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
20:52:12: Convert444Threads - [cpu time: avg 0.691 ms, total 4836.03 ms] [avg calls per frame: 2]
20:52:12: | Convert444toNV12 - [cpu time: avg 0.691 ms, total 4836.03 ms] [avg calls per frame: 2]
20:52:12: encoder thread frame - [cpu time: avg 0.588 ms, total 2059.21 ms] [avg calls per frame: 1]
20:52:12: | sending stuff out - [cpu time: avg 0.013 ms, total 46.8 ms] [avg calls per frame: 1]
20:52:12: ==============================================================
20:52:12:
20:52:12: =====Stream End: 2015-05-20, 20:52:12=================================================
20:53:09: Terminating 0x2d14
Last game capture log:
2015-05-19, 01:22:30: we're booting up:
01:22:30: CaptureThread: attached to process League of Legends.exe
01:22:30: D3D9 Present
01:22:30: DXGI Present
01:22:30: GL Present
01:22:30: DirectDraw Present
01:22:30: (half life scientist) everything.. seems to be in order
01:22:31: D3D9EndScene called
01:22:31: D3DPRESENT_PARAMETERS {
01:22:31: BackBufferWidth: 1920
01:22:31: BackBufferHeight: 1080
01:22:31: BackBufferFormat: D3DFMT_X8R8G8B8
01:22:31: BackBufferCount: 1
01:22:31: MultiSampleType: D3DMULTISAMPLE_NONE
01:22:31: MultiSampleQuality: 0
01:22:31: SwapEffect: D3DSWAPEFFECT_DISCARD
01:22:31: hDeviceWindow: 1640616
01:22:31: Windowed: true
01:22:31: EnableAutoDepthStencil: false
01:22:31: AutoDepthStencilFormat: D3DFMT_D24S8
01:22:31: Flags: None
01:22:31: FullScreen_RefreshRateInHz: 0
01:22:31: PresentationInterval: 2147483648
01:22:31: };
01:22:31: successfully set up d3d9 hooks
01:22:31: D3D9Present called
01:22:31: DoD3D9GPUHook: success
01:22:33: D3DSURFACE_DESC {
01:22:33: Format: D3DFMT_X8R8G8B8
01:22:33: Type: D3DRTYPE_SURFACE
01:22:33: Usage: D3DUSAGE_RENDERTARGET
01:22:33: Pool: D3DPOOL_DEFAULT
01:22:33: MultiSampleType: D3DMULTISAMPLE_NONE
01:22:33: MultiSampleQuality: 0
01:22:33: Width: 1920
01:22:33: Height: 1080
01:22:33: };
01:22:33: successfully capturing d3d9 frames via GPU
01:22:36: ---------------------- Cleared D3D9 Capture ----------------------
01:22:36: received restart event, capturing
01:22:36: DoD3D9GPUHook: success
01:22:37: D3D9EndScene called
01:22:37: D3D9Present called
01:22:37: D3DSURFACE_DESC {
01:22:37: Format: D3DFMT_X8R8G8B8
01:22:37: Type: D3DRTYPE_SURFACE
01:22:37: Usage: D3DUSAGE_RENDERTARGET
01:22:37: Pool: D3DPOOL_DEFAULT
01:22:37: MultiSampleType: D3DMULTISAMPLE_NONE
01:22:37: MultiSampleQuality: 0
01:22:37: Width: 1920
01:22:37: Height: 1080
01:22:37: };
01:22:37: successfully capturing d3d9 frames via GPU
01:22:40: ---------------------- Cleared D3D9 Capture ----------------------
01:22:40: received restart event, capturing
01:22:40: DoD3D9GPUHook: success
01:22:41: D3D9EndScene called
01:22:41: D3D9Present called
01:22:41: D3DSURFACE_DESC {
01:22:41: Format: D3DFMT_X8R8G8B8
01:22:41: Type: D3DRTYPE_SURFACE
01:22:41: Usage: D3DUSAGE_RENDERTARGET
01:22:41: Pool: D3DPOOL_DEFAULT
01:22:41: MultiSampleType: D3DMULTISAMPLE_NONE
01:22:41: MultiSampleQuality: 0
01:22:41: Width: 1920
01:22:41: Height: 1080
01:22:41: };
01:22:41: successfully capturing d3d9 frames via GPU