Browsers handle video embeds differently: when it is ‘in the dom’ (or you are on the scene) the browser looks at the ‘preload’ value and does what it thinks it best. On Mobile devices, this could mean ‘download the first frame’, but on desktop browsers this could mean ‘download the first 5 seconds’ to prepare the video for playing.
One thing you could do is create an initial scene which contains all your videos off the visible scene, and preload and play all your videos in the background muted. To do this in purely Hype, you would you use these settings in the element inspector:
This will cause issues if you have more than 5 videos at once playing, but on most desktops this should be fine. Definitely test this out
If you want to purely avoid the black rectangle which appears while the video is loading, you could use:
… to set a ‘poster’ image on the video while it is loading. This would need to run ‘on scene load’ for the scene where it is present.