Hi Simon,
I'm somewhat confused on what you are trying to do here. If you are using Media Services, and you already ran an encoding job - you should have an Asset that points to a storage container in storage that has a collection of MP4 files in it.
When you published the content and got back the Streaming Locator - you ended up with a URL that ends with /manifest which provides the top level Smooth Streaming format XML manifest, or you may be likely using the /manifest(format=m3u8-cmaf) version which points to the HLS version of the content. Those manifests are text file descriptions of the smaller 2-second chunks of video that are dynamically generated by the origin server (Streaming Endpoint) to allow for adaptive bitrate streaming. ABR streaming is very different from downloading a file. You can't point to that manifest used for video.js adapative streaming with HLS or DASH and expect it to download the full MP4 file.
If you need a downloadable version of the MP4 file, you need to generate a Shared Access Signature (SAS) URL to the blob file in storage directly and share that with the customer in the browser. That will allow the customer and browser to download the FULL standard MP4 file. You can choose which bitrate to offer to the customer for download directly. That will bypass the origin server's dynamic streaming generation. To get a SAS URL, you have to use the storage blob SDK, or you can request a 'progressive download' URL streaming policy in AMS - see here
https://learn.microsoft.com/en-us/azure/media-services/latest/stream-streaming-policy-concept
If you use a Download only, or the "Predefined_DownloadAndClearStreaming" streaming policy - we provide the full list of downloadable URLs to the MP4's in addition to the streaming HLS and DASH manifest URLs.
It's probably best to look at a site like this and learn how streaming works in general first. Streaming is very different from "downloading".
https://howvideo.works/