I have a NES with composite output connected to my Elgato Game Capture HD capture card. Then, connected in USB port. When playing on my PC monitor, I have about 1 second lag. Most of the time, I use the R/F output of my NES to connect to an old CRT monitor and it's fine. But for splitting the run, it's useless since I have lag in OBS. Is it config related in OBS? I want to use the Elgato since I paid for it and it captures well, but I was expected to have something more real time.
Welcome to USB capture cards.
USB 3.0 cards tend to mitigate delay pretty good, but it's still not perfect when it's coming over USB. I'm afraid there isn't much you can do in terms of settings of configurations. As a side note, isn't that capture card HDMI input only? Are you perhaps running the NES through an upscaler of some kind to turn the composite into HDMI? If so, that could be the root of your problem. Unless you're using a good quality upscaler (Framemeister, OSSC, RetroTink) then you're probably going to introduce delay into your feed and it could be coming from that.
Hi! There is an analog video adapter, so I can connect composite into the Elgato. I'm sure sthat since they built it, it should work. But maybe the 1s input lag was suppose to be expected
I don't personally use Elgato products, so I can't speak for them from experience, but my guess is that the adapter they provided will work well, but might be the cause of the 1s of delay in the capture. I'm assuming you don't want to invest in a more expensive upscaler, so what I can recommend is buying a powered splitter then 2 extra sets of composite cables. Then, you can run the composite from the NES into the splitter, then send one output of composite to the adapter/capture card, and then send another composite output to your TV (I'm assuming you have a CRT if you use RF). That will allow you to play off the TV with no delay, while still capturing the gameplay.
If your CRT is RF only, I would then get a modulator to go from composite to RF (this shouldn't introduce any lag).
My sources for the above is that my setup used to use the exact same components in an RF/Composite setup years ago, so I can vouch for the products. You could get a RetroTink for a little over $100 (not sure about shipping out of the US), or you can get the above for like $50 total (again, shipping not included). Of course you could look around for cheaper alternatives, but those are the products I've used in the past.
It sounds like my actual setup, actually. In fact, I have an RF connexion from my NES directly to my TV, and composite directly into my capture Elgato. In fact, that works very fine. Except I would like to have something less laggy, so I can split on my PC on the right frame. When I see on TV the event that tell me to split, and perform it on PC, it gets 1 second sooner.
What would be the perfect setup for a NES console? I'm pretty sure the Elgato Game Capture HD is not part of the solution for having 0s input lag on PC.
The splits are pretty much irrelevant, all that matters is the duration of the run as a whole. If you start your splits when the game starts on the TV, and end your splits when the game ends on your TV, then your time and splits will be accurate. The viewers might just see you start/stop your splits "1 second early" on their video from the capture (this doesn't invalidate anything or cause issues, it's just a view thing), but the splits will still be correct.
I think LiveSplit has a delay option where you enter a number of seconds and LiveSplit will hold the split for that long. I don't use LiveSplit so I can't remember where that setting is (or maybe I just made it up), but I'm pretty sure it exists and people used to use it when they had longer delay. If memory serves, it would essentially mean you can hit the split key, LiveSplit will wait x amount of seconds (however long you put in) and then it'll actually register the split. This would allow you to sync the splits to the capture assuming the capture delay is consistent.
Thanks guys, that's all good advices. Then, let's forget about my Elgato; what streamers/pros/runners use to as device to capture their run for NES?
For any non-NES retro (non HDMI) console I use component output with HD Retrovision component cables into a powered splitter. One component split goes to a Sony Trinitron CRT and the other goes to an OSSC. The OSSC then connects to my capture card, a Magewell HDMI capture card that goes to my PC via USB 3.0. For NES, since mine isn’t RGB modded currently, I use the same setup except the NES goes to a composite splitter (the one linked above) and connects to a RetroTink instead of the OSSC.
For HDMI consoles my capture card has an HDMI pass through that goes to my TV so I can just use that to split the signal between the card and the TV. I always play off the TV, never the PC. All in all, I went overkill because getting the best video quality from older consoles is a passion of mine, so my setup between all the devices and my capture card totaled up to like $700 or so.
Thanks Timmiluvs. That's good informations you're giving me. And with that setup you experience 0 input lag when looking at your pc monitor? I know timers are less important, but it works well for a lot of people except me. Trying to figure out how to have a good setup.
Like Liv said, you’re probably always gonna have some input lag with a USB capture card. My setup doesn’t have anything more than maybe some frames, at least nothing noticeable like a second or more. Most of that reduction in latency comes from the OSSC and RetroTink doing 0 lag upscaling. My capture card also doesn’t add a ton, just the few frames I mentioned above.
Are there any alternative to USB capture device for NES console?
You would need to buy an internal capture card - one that connects to your motherboard via PCIe. Those types of cards tend to have very little to no input delay because the connection directly to your motherboard provides much faster data reads than USB (even 3.0). The downside is they are more expensive and you need to be able to open your PC to add it into an open mobo slot (which obviously isn't possible for someone using a laptop for example). Since you currently have an Elgato, here's an example product from them
But there are many other brands out there to shop around for. There's other brands like the VisionRGB-E1S - which takes a DVI input for RGB - from Datapath that some retro streamers swear by, but those are usually really pricey. There's a lot of research that has gone into optimizing video output from retro consoles and usually all of it involves RGB, upscalers and/or some capture card like that that can take in the analog signal for maximum quality. It also tends to be very expensive just because optimizing analog video to the best quality with the least amount of lag is just expensive due to the nature of the components required to do it correctly. It's really not required or worth it unless you are obsessed with that kind of stuff and love it beyond the hobby of speedrunning.
Thanks to everyone for taking time to explaining this stuff, very apreciated. I'm pretty novice regarding Speedrun.
Major concern was how can runner be so precise when hitting the button for starting and spliting the timer during the run. I mean, if people play on console (NES, for instance), and they hook it to PC. They obviously look at TV screen instead of PC because of lag. That being said, they still push the timer at the very perfect frame for starting the timer and between milestones. That means, they have to play for 1 about one second watching the screen, then, after that second, hiting the Start button for the timer (with a foot switch, I guess).
Sorry for my poor English, and not being very clear about this.
Have a nice day!
Most people don’t split that accurately at all, at least not consistently and not on any perfect frames. Splits are nothing more than a nice visual indicator of pace for you and your viewers. All accurate timings for runs that need them to very precise is done by frame counting the run after the fact. Obviously autosplitters are the exception because they are designed to be precise.
Obviously people aren’t inaccurate by multiple seconds in their splits (if they are they usually retime the run) so for most games being a few milliseconds or centiseconds off doesn’t usually matter unless the game is super competitive and exact timings are necessary for accurate placements on the LB.
I resolved this for NES and SNES by splitting the composite output from the consoles and running one side of the console output to the CRT TV and the other side to the Elgato analog adapter. If you have an upscaler, you can use it for recording/streaming output by putting it between the splitter and Elgato without creating any more input lag. This setup adds at most 1 frame of input lag because the console output going to the TV doesn't pass through the Elgato.