How To Embed S3 Videos Without Plugin
I was (that’s a past tense) using S3 Media Maestro from Fly Plugins primarily for embedding my non-public/protected videos (and media) hosted at Amazon S3 to a handful of my WordPress sites.
But as of late, the embedded videos kept giving out errors .. intermittently. Sorry I didn’t have an attached image to show the exact error message, but the point is, it’s rather embarrassing to showcase a page to a crowd of audience which the video box is “blackout” with an error messages. Then when I finally got the time to troubleshoot some time later, my embedded videos streaming turned out running okay … intermittently.
I’ve tried updating the S3 Media Maestro plugin to its latest version, delete and re-install/activate it … the issue still persists. Yes, I hate intermittent fault; it’s one of the hardest fault to resolve. I’d turn myself to their support but I also realised its time that I’ve to renew my license ($99/yr for 2-site). And seriously, before this, I’ve planned to upgrade to the 10-site license. At the end, I forgo my renewal and kickstart my yet another round to find a good solution.
Now that I’m going to find a new solution to my above issue, I’d geared myself to see if there’s a free (and good) solution. The good news … there is! And it’s … drumroll … Amazon S3 itself!
Before I go into how to embed S3 media directly to a WordPress post or page, let me quickly go through why I chose to host my media on S3. I believe you could have guessed the answer .. it’s cheap; very very economical and downstream speed is good. You might ask, why not YouTube … it’s free and no streaming server match those of YouTube – true and agreed. Just that YouTube is good when the videos are free-to-view and meant for marketing purposes. Yes you can upload the video as Unlisted in YouTube but that doesn’t quite protect your supposed-to-be protected videos.
Without further ado, here’s exactly do you embed your S3 videos onto your website without using any plugin :
Step 1 :
Sign in to AWS console https://console.aws.amazon.com/ as Root user :
If you do not have an AWS account yet, you can go ahead to “Create a new AWS account”.
Then, go to All services > Storage > S3 > Create bucket
Bucket name : ie. willtan_bucket
AWS Region : ie. Asia Pacific (Singapore) ap-southeast-1 (you should of course select the AWS region closest to your residing/targeted country
Now you can “Copy settings from existing bucket” but I’m going to assume you are creating bucket for the very first time.
By default, “Block all public access” is checked > Untick it to allow public access; now when you uncheck this option, you’ll have to check “I acknowledge that the current settings might result in this bucket and the objects within becoming public.”
Under Gutenberg block editor > Add Video block > Insert from URL :
The URL is back at your S3 bucket > click on the .mp4 media file you want to embed, you can find the URL under Object URL :
Once you publish/update the page/post, your .mp4 video will be embedded nicely within a video player frame with basic play, pause, volume and maximise frame controls :
Check out https://willtan.com/courses/autoresponder-2/ on how this embedded S3 works.
So there you go, it’s actually rather easy to embed S3 video directly on a post or page without using 3rd party plugin.
Key advantage for this implementation is the COST … since no 3rd party plugin is required, it now indirectly save me over a hundred dollars annually if I were to subscribe to the S3 Media Maestro. As for S3 usage cost, my overall S3 usage, plus a good handful of WordPress site backups, is less than a few buck per month!
The only downside IMO, however, is the rather “boring” basic video frame … but given such simple effective implementation and the super low cost (of Amazon S3), I would gladly declare this would be the best way to embed your S3 videos to WordPress sites.