I've had this occur and can explain the cause in my situation in case it helps. For me it occurs when there is corruption very early in the recording (i.e. weak or bad signal resulted in corrupted m2ts transport). The channel might be generally ok but JRiver seems very sensitive to errors early in the transport.
The over-the-air m2ts transport is extremely robust. Without getting too detailed, each element (audio, video, metadata, etc.) is given an ID and sent in small packets carrying the ID. There are mapping tables for the IDs which are repeated periodically. In case of corruption, there are sync words, continuity markers, and repeated opportunities to get the correct information.
It seems like MC looks only at the first (or at least only the very early) instances of ID tables and stream config when classifying a recording. When this has happened to me (going all the way back to MC21),
- Forcing the media type of the recording usually fixes playback
- ffmpeg transcodes audio/video to mp4 perfectly but warns of some corruption early on