Yes, that’s exactly how it works with our StreamPublisher Module that includes Loop Until Live. You add a SMIL file and when an encoder disconnects, it automatically switches to the mp4 and will loop until a live encoder connects. Some people just use it to play one mp4 as live over and over, others have it switch from mp4 to mp4 based on the order in the SMIL file. Point being you can use it with live and mp4s or all mp4s.
Here is the doc for you:
And also I made a complete tutorial on how to set up stream publisher and the SMIL file:
Here is another tutorial that show you how to use to build an mp4 tv station on a schedule!