Good External HDMI Capture Device advice for Touch

Anyone here that has experience with a decent external HDMI recorder to use with Touchdesigner for real-time recording of Touchdesigner 's output?

I’m having a lot of struggle to understand what device I really need here, since I’m only seeing capture cards that are meant to record things that are coming into to your computer instead of something on your computer. So things like capture cards for gaming, streaming and all that.

I have a laptop, so I need a external capture device/recorder, that I can connect with HDMI / USB-C / USB. I couldn’t find any proper information related to this on this forum, and I wondered how you would use such a device in practice with Touchdesigner? Also I’m looking for something around €100,-

Ok, I’ll ask the obvious question - I’m curious why you would want to use an external recorder instead of just using the Movie File Out TOP to record TD’s output?

We have used both Elgato and Avermedia external recording boxes. We’ve used them for recording workshops where we were running on laptops and wanted to offload the recording from the GPU to give us more headroom to play with. These work, but be warned they are encoding to H264/HEVC and the quality of the recording is limited to what the box can handle. Both companies have newer models doing 4K60 which also come with a bit higher price tag, but if you only need 1080p you can likely find their older version models around at a good discount. There are other manufacturers as well, these are just the brands we have used in the past.

Elgato

Avermedia

1 Like

Normally I use the Movie File Out TOP indeed, but now for the first time, my network became too complex and heavy for my laptop to record and run real-time, with Ableton in the background (TD Ableton). Whenever I start the recording I get sudden massive frame drops. Another option is to maybe pre render some footage, but that will eliminate the purpose of Touchdesigner and being able to edit the project real-time.

Thanks Ben! I came across the Elgato now as well. That’s exactly the reason as well for me, to offload some GPU and CPU usage. But that’s indeed a good point about the encoding, is it then heavily compressed? I’m used to exporting to large .mov files with minor compression, and my goal here is to export audiovisuals that I want to share and showcase, so quality is definitely important as well.

I guess I will also look for some ways to make the project less heavy.

@thevoyageofdesign while I do think it is always great to optimize your TD project as much as you can, I had the same problem as you and followed Ben’s advice to try an Elgato external capture. I ended up using a Mac Air M1 with an Elgator HD60 S+ and it did indeed solve my problem of recording a heavy cooktime TD project without frame drops. If you want to see an example to judge quality, you can take a look on Vimeo here: (also I found OBS better to use than the Elgato software, but whatever works)

https://vimeo.com/manage/videos/672459432

Later I built a killer PC which could easily play complex networks plus record video out with Movie File Out TOP like you tried. So I have not used the Elgato HD60 S+ since then.

BTW I really like the Probe tool the best for optimizing and use it all the time…
Hope this helps.

Thanks for sharing

In the video that you’ve shared, the noise that I’m seeing, is that from the compression of the Elgato or Vimeo? It seems quite noisy.

So I tried pre rendering parts of the visual and replacing the comps that I was using in my background switcher with the pre rendered videos. Now somehow it became heavier, giving me heavy frame drops when switching even without recording. Now how is that possible I’m wondering? A video shouldn’t be heavier right. And is there a way to make the switch TOP less impactful and maybe pre cook/render, so you won’t get heavy drops when switching?

EDIT: I tested it now again with my real-time comps in the switch TOP, and it is indeed less heavy than the rendered videos, I’m shocked

EDIT 2: I’m just gonna order the Elgato HD60 X to try it out, if the quality sucks I will just send it back

So how does the Elgato for example work, with Touchdesigner, can you stream the output with the video device out TOP to the Elgato software? So you don’t have to record an actual screen? Is there information somewhere on how to set this up with Touchdesigner?

There is no TouchDesigner setup to do, the Elgato just captures whatever output from your computer you plug into it via HDMI. My only suggestion is you match the frame rate of TD with your output/recording frame rate. If its secondary output you can open your final output Window COMP on that secondary output, if its capturing your main screen you’ll want to set it to so your Window COMP runs Perform Mode in fullscreen.

1 Like

I think it is the capture because Vimeo is usually pretty clean. It looks like compression artifacts - a bit blocky. But at least you get a recording of a busy heavy network you might not get using movieFileout TOP. Worth a try at least - fool around with various settings to try and minimize noise. This assumes you have a second computer to do the recording of course. My Mac Air M1 did a pretty good job. Good luck with your testing!

So I tried pre rendering parts of the visual and replacing the comps that I was using in my background switcher with the pre rendered videos. Now somehow it became heavier

This totally depends on the codec you used. If your CPU was already almost overloaded, it’s not recommended to choose a CPU heavy codec such as for instance MotionJPEG. For playback of prerendered videos it would be advisable to choose a GPU accelerated video codec, such as HAPQ.

2 Likes

Alright, I see. It could be worth a try. It made me wonder then, are there also external capture devices that have Touchdesigner support, where you can use the device out TOP to send your output directly to the device? (because often I’m exporting in 9:16 aspect ratio)

Wait do you mean you need a second computer to be able to record with the Elgato card? Or to be able to play around with the settings?

My thought was you could just connect the HDMI output from your pc into the device, and connect the USB to be able to use the software, and then be able to record.

Well perhaps that might work, but in my case the whole reason for using Elgato was that my old laptop was already maxed out and dropping frames in touch designer which is why I offloaded it by recording onto a second computer. I must confess I never tried putting it back into the same computer but if you are doing that why not just use OBS (which is free) to do a screen capture? If you have the Elgato device already by all means try it. Maybe it uses different resources than touch designer and won’t load your GPU? I just don’t know. But if you have not bought it already, I would try OBS first. Let us know…curious…

Oh wow, I totally thought by Ben’s comment that it is recorded on the capture device, and then send to the pc. I didn’t realized the recording still has to occur on another computer. The card is then only sending it through to your second computer, but in the meantime encoding it? I have a Macbook from work which I could use, but I might not be able to keep that, so I can’t rely on that unfortunately.

So then what you need in my case is a standalone external capture device I’m guessing? Like a Blackmagic device maybe?

I can try OBS first and will report back.

I’m also really curious how other people go about this with laptops, because my laptop is quite beefed up, Razer Blade RTX 3070. And I’m exporting to 1080p 60fps, with Ableton (frozen tracks) running in the background.

For instance, they demonstrate that you can use the Elgato card for recording with just one computer. It might seem a bit odd to invest in a 200 euro card and then continue recording on your computer instead of the device itself. What’s the purpose of the card if it doesn’t reduce the load on your GPU/CPU?

Yeah you are right. But I think it is geared mostly for gamers hoping to share their gameplay and maybe don’t know how to record their screen. If I understand you correctly, you have a TD program that is just on the edge of performing ok at 60 fps or something and then when you added Movie File Out TOP you started losing frames - corrrect?

So giving that job of recording screen capture to something else, whether external hardware or software on the machine makes sense. I would definitely try OBS before buying Elgato or any other external capture device.

But the other thing I would encourage you to do is really look hard at your network and try to optimize it very carefully. You might just solve your problem of dropped fps. Have you read this one carefully on forum? https://docs.derivative.ca/Optimize

Also, like I said I find the PROBE from palette super helpful in identifying the hogs in cook time. Maybe if you optimize more, you can go back to simply using Movie File Out.
Anyway, good luck and if you do get Elgato let us know how the single computer solution works out.

Certain models of the external capture devices do their own encoding on-device so there is less impact on the GPU. But you need to read the spec carefully as some models use the system (seems more of the newer models do this). I was referring to devices that do all the work on the capture device itself.

If you are using OBS, its on the system, and in that case I would fully recommend the Movie File Out TOP instead. In all cases you are doing GPU compressed codecs if you want to do it in real-time, and therefore need Nvidia GPU as a system requirement as well.

Hello,
If I need an external capture of hdmi output, I prefere to use my Blackmagic Video assist (old HD one). No computer problems, clean proRes or DnxHd file on sd card and you have an output to plug your screen.
Jacques

2 Likes

definitely the way to go. Or just any old Blackmagic capture card / box. Pity that Apple single handedly made tons of those obsolete / hard to use with their choice to drop the old thunderbolt ports… I keep an old MacMini ‘frozen’ just for this…