I’m not an expert, but I’ve used both a GoPro and a Virb. About the best way to get the overlay that I know of is to use the Virb software. I think that even TR uses the Virb software to get the overlay, but then they use Davinci Resolve for all of the slick editing (picture in picture, cuts, replays, slo-mo, audio overlay…) they do. @NorCal_Cycling used to use (and maybe still does?) Dashware to get his overlays, but I found that system to be rather cumbersome. You can view his video here, though, to see his workflow. I don’t know if it’s changed.
I found that the GoPro was just kind of a slow process, and aligning the video with the track from the .fit file was rather a pain, particularly for a crit. However, I learned that the trick is to make sure you keep the headunit recording until you’ve moved off course and then stop–presumably your wahoo will make an audible beep for when you stop, and then you can use both the video and the beep to match the video with the map. And @Tucker is right–it doesn’t matter where the .fit file (or the video) comes from–the Virb software will work with it. The video may take awhile to import, but it works.
My videos aren’t cuts or anything slick. They’re all just the race and that’s it, not really meant for teaching or providing my own comments or anything like that. I am primarily videoing for my own review/learning and posting for sharing within my team. Maybe someday I’ll get into the whole cuts/audio, but I need a newer computer for that. I tried Davinci Resolve and it kept crashing… I think that my computer is just too slow. I’d really like to have more analysis of women’s races, though, so at some point I may get into it.