What server side language are you using ( PHP, Node.js )? Regardless, you will have to check for a range request:
request.getHeader("Range") != null
and then perform some more logic afterward perhaps setting some headers. Have you checked what your Content-Range header looks like?
I took a look at your site and noticed you don’t use a poster image for your mp4 you are trying to play, hence the reason for the gray box.
You can construct a curl command to check the byte range support:
curl --range 0-99 aspire.jo/wp-content/uploads/2020/01/Silent2_Video.mp4 -o /dev/null
You will have to find the path of the mp4 file and run the curl command. We are passing --range parameter because we want to see the header content-range that is being served. If successful, you should get a 206 response and the number of bytes should say 100.