You could use Amazon Elastic Transcoder.
FAQ: https://aws.amazon.com/elastictranscoder/faqs/
To use Amazon Elastic Transcoder you need to have at least one media file in an Amazon S3 bucket. The easiest way to use Amazon Elastic Transcoder is to try it through the console. Create a transcoding pipeline that connects the input Amazon S3 bucket to the output Amazon S3 bucket. Create a transcoding job that will transcode your media file, choose a transcoding preset (a template), and submit the job. Your transcoded file will appear in your output bucket once it has been processed.
We support the following video codecs: H.264, VP9, VP8, MPEG-2, and animated GIF. File formats supported include MPEG-2 TS container (for HLS), fmp4 (for Smooth Streaming and MPEG-DASH), MP4, WebM, FLV, MPG, and MXF (XDCAM-compatible). For information on file formats that are supported by specific codecs, please visit the Product Details page.
This tutorial shows has several screenshots to setup the Amazon Elastic Transcoder and how to integrate it with a free JWPlayer. https://www.jwplayer.com/blog/encoding-hls-with-amazon-elastic-transcoder/
The player embed would look something like this.
<video height="270" width="480" controls
poster="http://d3mk7n3cl27pjb.cloudfront.net/bigbuckbunny/bunny-00004.png"
src src="http://d1s3yn3kxq96sy.cloudfront.net/bigbuckbunny/index.m3u8">
<p>Your browser does not support HLS playback in HTML5.</p>
</video>