5 MB might not seem like much, but it can feel like it takes ages if you sit down to wait for it, specially in slower or spotty connections.
Asides from building the UI with the expectation that a video is going to take a little while to show up (showing a spinner or some other kind of feedback where the video is supposed to go), you should also try to compress them as much as possible until they have an acceptable quality.
Another common strategy is to start loading videos as soon as you can, while the user is busy paying attention to something else or getting to the part of your app that needs to show the videos. This way you get a little bit of "free" loading time, by the time a video actually needs to be shown, the perceived wait time can seem lower.