Fix GuideGrid to include rsOtherShowing in the 'will record' highlighting colour. Fixes #12081
Services API: Ignore 'manual' programmes when building the guide. This are psuedo programmes that don't exist in reality but which are created only for the purpose of manual recording schedules. Ideally we'd still display manual schedule periods in the guide, but that's for another day.
Tighten the logic when matching up scheduler data against program showings. This should prevent some invalid data when the exact same program, at the exact same time is covered by two different schedules on different channels.

Refs #12081
Extend ReadInternalMode to work with all RingBuffer method

Following c671656dc2b653b28e5f2e520da4b3927cc29fc0, make RingBuffer::Seek handle everything while ReadInternalMode is on. This simplify the code and remove the need for duplicated lock handling locking
Try to open the media for 1.5s, using only the internal data in ringbuffer.

After this, we revert to the previous method
reset current position in file when exiting internal read mode

Not actually required due to how FFmpeg calls us, as it always does a Seek(0) when exiting
Merge branch 'master' of code.mythtv.org:mythtv into devel/ringbuffer