If you have scratch audio you can batch sync using PluralEyes, generated an XML then FCPX can load that which produces a single long multicam that you can then cut up: https://www.redgiant.com/products/pluraleyes/
If the file dates are roughly correct you could use this method to sync each day’s work as a separate multicam. I have synced about 500 clips in one batch using PluralEyes.
Within FCPX you can also do a multicam sync of many A/V clips in one pass, just not as many as PluralEyes. However PluralEyes can do continuous correction of sync drift. Before the sync attempt, FCPX requires each batch of clips from each camera to be labeled with a camera name or angle name in the Inspector.
If the files are offloaded into folders named for the camera or camera+operator, etc, these can be auto-keyworded during import using the import preference “keywords from folders”. Then all files from a given camera or recorder can be quickly isolated to assign a camera name or angle name in the Inspector.
Overall I usually sync in FCPX but I sometimes use PluralEyes to generate a visual sync map to quickly ascertain what group of clips to select in the Event Browser for the FCPX sync attempt.
If you forget a clip or angle this can be later added by opening the multicam, clicking on the drop-down menu at left of the timeline, dragging in the new clip then and using the option “sync selection to monitoring angle”.
With FCPX it’s important to sync the material before it ever gets put on a timeline. However there is a procedure to frame-match existing single-cam timeline edits and replace with a synced multicam range. This is laborious and must be done clip by clip but once you’ve done a few hundred it gets faster ☺
1. Use skimmer to get starting timecode of parent clip in timeline.
2. Observe clip length in yellow numbers below viewer
3. Open multicam (MC) and skim to timecode for clip obtained in step #1. Note: it won’t show the clip timecode if that’s the monitoring angle, so select a different monitoring angle before skimming the clip.
4. Place marker; playhead jumps there
5. Move skimmer up so timecode from start of MC container clip displays (vs clip timecode).
6. Go back to timeline
7. In Browser, skim in MC clip to timecode obtained from step #5.
8. Mark range with length obtained from step #2. Expand view as needed using CMD + and CMD -. Use skimmer for rough position then JKL and IO keys to mark the range.
9. Select parent clip in timeline
10. Do OPT+R for replace edit of timeline clip with marked range of MC clip which contains other angles and good audio.