How do I make an MP4? 

MP4s can be generated using Handbrake (a Mac App which allows you to optimize file size for the web) or tools like Adobe Premiere. If the source video is high quality on the YouTube account, there's a number of online free conversion tools, like

What should the video specs be?

The source video needs to be converted and edited down to no more than a 20 ish second loop (which also optimizes the screen resolution).  The video background adds a lot of potential page load time, so we want those videos to be as optimized as possible without reducing quality.

You’ll want a 16:9 aspect ratio for most uses on the site, although some fields have different aspect ratios specified. Typically you’ll want at least a 1080p resolution, or a 1920 x 1080 size on your video.

Background video can be exported without audio (the audio won’t play whether the video has audio or not).

Compress for web but test your compression settings. background videos will have to be compressed as much as possible before uploading using mp4 format and the H264 codec. When properly compressed, this should be around a 12 MB file.

Where should I upload it?

The file should be uploaded to a static file server with public access permissions:  Dropbox, Amazon AWS, Google Drive should all work if the file is uploaded with "Anyone can view" permissions. AWS is a complex setup but very cost effective; it requires a separate application to upload to it.

Another option is to hook up your AWS account as a CDN to this site which should give a performance boost. In that instance, AWS would host all your photos and videos and reduce site load times. Videos compressed below 8 MB could be uploaded from the site. 

Don't upload them to the website or YouTube. Video files will be a bit too large to serve from the website itself, and Youtube links can't be used directly for video backgrounds.