Bug Report A bug with Elgato Game Capture HD

HayZ

New Member
Hi there!
I, like many others, have been having trouble with a specific 'Game - Cam/Mic' desync issue when streaming for long periods of time. The sync would be perfect but the longer I stream for, the bigger the desync gets! I'm going based off streaming Call of Duty games.
What I've found through testing a few things is that, whenever a match in Call of duty finishes the game capture seems to lag or maybe even freeze for maybe 1 second while transitioning from the match back to the multiplayer lobby.

Edit: I've also just noticed that the freeze/lag desyncs the Game from the Mix/Cam by around 1300ms, which is the natural delay that the Elgato has. Its as if it doubles up on the delay. So every time a CoD match finishes, the desync becomes +1300ms of what it already is!

This is what Is causing these desync issues, yet I'm unsure as to how I can fix it.
I thought I'd let you know so that anyone can experiment and see if theres a possible fix.

Thanks :)
 

dodgepong

Administrator
Forum Admin
Make sure you enable "Use Buffering" and leave it at 0ms in the video capture device properties.
 

HayZ

New Member
Thanks for the reply! :)
I know all about that but that's not the problem. The problem that me and a lot of others have been having is 'gradual' desync of the Game to the Mic audio + Camera.
I've figured out that something makes the Elgato double up on the natural delay it already has when leaving a match and going back to the multiplayer lobby. So it already has a delay of around 1300ms and when I leave a match it lags/freezes for a short time and doubles the delay.
 

AndehX

Member
I have an Elgato, and I have experienced this progressive delay you speak of, but only in the elgato software. In OBS I don't get any progressive delay. In the elgato software, I have noticed that as more and more time passes, the delay between what im doing, and when it shows in the software increases gradually. It's most than likely a bug in elgato's drivers.
 

UberDragon

Member
It's not actually a bug, it's simply how elgato approached the problem of having their device hooked to the pc via USB 2.0 which simply cannot transmit the data fast enough to keep up. If there's more happening than the USB 2.0 can handle, the output will get delayed progressively.

You'll find this happening in their software, in OBS, xsplit any everywhere else. However xsplit seems to have some code that causes the output to regularly snap back to the default delay of ~1300ms (not entirely sure how that works though)

Practically the only thing OBS could do would be either going for the hacky fix xsplit uses (if theres actually a way to find out what's going on there) or adding an option to delay everything else according to the progressive delay, however that would probably require a huge amount of RAM in longer sessions.

On lower resolutions it should technically stay in sync, but the problem is that (as Jim stated) elgato did a somewhat poor job with their drivers that causes OBS to only be able to use the elgato with 720p output.
 

HayZ

New Member
Ah! I see what you're saying.
What would you suggest I can do personally? Or is there anything I can do at all? Is there a better capture card I can use?

I'm just getting really frustrated with this because I can't stream effectively with this delay =/

Thanks a lot for the reply!
 

UberDragon

Member
Well technically what you can do is very limited. You could use the elgato as a non global source and take a small break every (half) hour or so, switch the scenes during the break, then back to the scene with the elgato and thereby force it to re initialize. That way it won't be that noticeable.

I don't have much experience with many other capture cards, I guess all of them have their flaws, but technically PCIe cards and cards that use USB 3.0 should be able to keep a constant, non increasing delay.
 

HayZ

New Member
Thats what I do when I stream but I have to do it after every game of Call of Duty because it happens during the transition from the end of the match to the pre-match lobby.
 

AndehX

Member
What UberDragon says is not entirely true, as I can stream for hours in OBS and the sync between the game/webcam remains the same. 1300-1500ms.
Something else must be causing your desync.
 

UberDragon

Member
You might be streaming a low motion game, or something that in another way doesn't require more than USB 2.0 can ship to your pc. I've tested this many times, and every single time the delay started to increase as soon as there's a lot of stuff happening. I could stream a no-motion menu for hours and everything would be still in sync, but when the playing starts the disaster begins.

If there really is a way to get this fixed properly I'd be more than happy to hear about it, but sadly I doubt there is one.
 

HayZ

New Member
AndehX said:
What UberDragon says is not entirely true, as I can stream for hours in OBS and the sync between the game/webcam remains the same. 1300-1500ms.
Something else must be causing your desync.
Yea, I'm streaming Call of duty so theres lots of fast paced action. It only happens when I transition from the end of the match to the pre-game lobby. So it doesn't happen during the action which I find interesting.
 

HayZ

New Member
I have finally figured it out!
All I needed to do was set my Elgato to a global source! Silly me :P
 

Rollin

New Member
Hey guys, I am also having this issue with the elgato and streaming blackops2 on xbox360. I have the elgato set as global source, buffer selected and set to 0. I messed with sync setting of my cam/mic and 3000ms seemed to get it in sync with the elgato, however as I start streaming the delay on the elgato is either changing or getting progressively longer because I will say/move on cam 2-4 seconds before the game action that I am reacting to happens on stream.

Also since hooking up the elgato my mic and cam are now out of sync, not sure if this is related to the elgato but only happens since (I look like an old dubbed Japanese film talking then voice comes a few sec later) I've tried all the suggestions in this thread as well as others and I cant figure this out for the life of me.. I am debating just getting a AVerMedia PCI-e card for HDMI Cap if this can't be resolved.

Any and all help would be greatly appreciated, thank you!
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
The elgato delay seems to change, I don't think it's anywhere as much as 2-4 seconds, but rather just a few hundred milliseconds at most. The recommended thing to do is set your mic sync to the eventual delay rather than the initial delay, which.. sucks. I'm almost totally positive that this is actually due to the device's own decoding rather than anything else. If the complexity gets too high it takes longer to decode and then gets more out of sync as it has to widen the delay to compensate for that decoding time.

I do hope none of you are on desktop PCs, because getting a USB 2.0 device on desktop PCs would be a travesty.
 

Rollin

New Member
Hi Jim, Thanks for your reply

"I do hope none of you are on desktop PCs, because getting a USB 2.0 device on desktop PCs would be a travesty."
Can you elaborate on that? my friend lent me his elgato as I currently have no HDMI capture card. would a pci-e card such as the avermedia be lag/desync free?

"The recommended thing to do is set your mic sync to the eventual delay rather than the initial delay, which.. sucks."
So with my mic/cam set to 0 buffer, after 50min I am 6 seconds between reaction on cam and death in game on twitch stream (watched broadcast after to see how long delay is). is presetting the delay to 6000ms something that sounds reasonable? Sorry I dont really understand well.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Internal capture devices and USB 3.0 devices do not have delay/lag, that's why I said that. USB 2.0 devices should *only* ever be used if you're on a laptop that only has USB 2.0 ports.

6 seconds? That's too long. That's not normal. Most delayed an elgato ever gets is about 1500-1600 milliseconds.
 

Rollin

New Member
Jim, Thank you for the clarification about the cards =)

here is an example of the delay, (cam and mic are set to 0 buffer in this clip) 54:33 I say "Nooo my streak" and then 54:39 is when I get killed. http://www.twitch.tv/m/454267 so I guess i'm not really sure what delay to set my mic/cam then.

I guess it obviously makes sense to get an internal cap card as soon as I can afford one, like I mentioned earlier the elgato was lent to me to see if I could even get console streaming set up with my pc etc.

Thanks again.
 
Top