OK all,
I have resolved the problem, for me at least.
I think a firmware update at some stage must have fiddled with a setting that I had never previously seen.
Using the Web interface of my nvr onsite, I went into the area where we chose the bit rate, quality, framerate etc. of the recordings - for main and event.
It is a fiddly page, and I have been spending more time than I like here gradually downgrading all the video qualities until I can view my alarm recordings. (about 2000kbps incidentally). But that is of course a ridiculous solution because then when Mr burglar turns up and you want to check out his nose on the recording, well you can't because the compression has removed it.
So leave your recording quality as high as you like! Mine are back up to 8000 now, with 16000 for events.
Below all these settings there is a little button 'more settings' click on that, and you will see maybe three options, the last of which is a nondescript option to chose main or sub stream. It doesn't tell you what you're choosing it for! Mine were all set at 'Main'. I changed one camera to 'sub', and instantly all the alarms from that camera are now perfectly playable using the substream. The main stream is still viewable at super high res in real-time, and is available for browsing on the recording at a later date. So I corrected them all to 'sub' and applied one at a time for each camera.
And everything works!
Hooray.
I hope it helps...