Forum Discussion
andrewmatthews0
11 years agoHonored Guest
How can I make 4K mp4s?
I've gathered that .mp4 seems to be the preferred format for viewing stereoscopic 3D vids with headsets like DK2 and gear, and I've been having success with that, except when it comes to image size.
I've seen some people posting .mp4s up to 4K x 4K but all the video rendering software I've tried won't make an .mp4 more than around 2K x 2K (over/under). It says the format doesn't support anything larger, but I've watched ones that are.
Anyone have any "best practices" on exporting over/under mp4s for hmd viewing? How high can I make the resolution before the Gear or DK2 can't handle it, and what software will allow me to even make them that large?
Thanks!
I've seen some people posting .mp4s up to 4K x 4K but all the video rendering software I've tried won't make an .mp4 more than around 2K x 2K (over/under). It says the format doesn't support anything larger, but I've watched ones that are.
Anyone have any "best practices" on exporting over/under mp4s for hmd viewing? How high can I make the resolution before the Gear or DK2 can't handle it, and what software will allow me to even make them that large?
Thanks!
20 Replies
- AnonymousFrom Carmack
"“People that are resolution-picky will probably prefer monoscopic videos, which can have twice the resolution of stereo videos. The stereo effect may not be worth anything to you if you can’t get past the blurring.
Here are some notes about video quality that I circulated internally at Oculus:
The hardware decoder on the Samsung devices can handle a lot of bit rate; I think we have successfully played back up to 80 Mb/s, but the largest image stream it can decode is 4096×2048 at 30 fps. For a monoscopic panorama that is roughly the resolution that we render synthetic game content at (but game content is 60 fps), but less than half the optimal resolution for display on the 2560×1440 displays.
There are two limits in play here — the Google video framework in Android has an (arbitrary, as for as I can tell) limit of 2048 lines high on an image, and the decoding hardware has a limit of about 240 Mpixels/s which can be flexibly divided between image size and frame rate. The optimal video stream for the current hardware would be about 6000×3000 at 60 fps in stereo, or 2160 Mpixels/s. A factor of nine over what we have now. When we get 4k displays, that will double again.
The videos we play back now are, in my opinion, “good enough”, but it is clearly still a point that is arguable. One of the super-picky and critical artists we work with kept telling me that our 4k x 2k panoramic photos just didn’t look good, but when I developed the “overlay plane” technology that allowed us to directly sample 1536×1536 cube maps (roughly equal to 6000×3000 equirectangular panoramas) without double-distorting for VR, he finally said “Yeah, that looks good”. He still hates the quality on our panoramic videos. All of the still images in the 360 photos VR app are processed for this resolution, but they don’t necessarily have an optimal content pipeline and compression settings for peak quality.
I want to be able to demonstrate video at this peak quality level, and I think it is going to be important in the coming years, but it isn’t clear what the user experience would be for acquiring and viewing these massive datasets, so this is not the priority of the day.”
I don't have the number handy but even for mono it was 3800 something instead of 4k. - andrewmatthews0Honored GuestThanks for that, but I'm still just wondering what software can output mp4s above 2000x2000. I know it's possible, because I've downloaded and watched other people's.
I know there's a tradeoff in resolution when working in 3D. That's why I'm trying to maximize it. I know I can do better than 2000x2000 but can't figure out how to export that in mp4 form. - AnonymousMuch depends on the players as well even if you load a 4k video. As I understand it Unity only does 1024 x 1024 per eye.
- andrewmatthews0Honored GuestYeah, I'm not using Unity. Just making vids to be played on Gear and similar devices. I'd like to test various resolutions and framerates. So far, it seems to handle 2000x2000 at 30fps fine. Want to try for higher (I've seen other people's vids at higher resolutions) but can't find software that will export any higher. Maybe that's the limit of h.264? If so, I'm wondering what other codecs play nice with VR players. I'm sure I've watched 3D 360 videos that achieve higher resolutions but I'll be darned if I can find any info online how to manage it.
- AnonymousFound the Carmack note:
Limit Gear VR panoramic videos to 3840x1920 resolution @ 30 fps. 4096x2048 and 4000x2000 are causing problems. - emma24xiaHonored GuestI don't think it has to be 4K MP4 that Gear VR can support, it accepts most common file formats including 2D MP4/ AVI/FLV and 3D SBS MP4/MKV for input.
- andrewmatthews0Honored GuestProblem is, I can't make an mp4 of even 3840x1920. After Effects, Premiere, even MPEG Streamclip all max out at 2000 to a side, unless you use other codecs that don't work well with VR players.
Autopano Video Pro outputs mp4s of that size, but you can't stack the stereo images with it. There has got to be another piece of software that allows you to make mp4s with dimensions over 2000 to a side.
(By my calculations, 3840x1920 is about 7.3 million pixels, which, in a square dimension, is around 2700x2700. I'd be happy with that if I could just find a compressor/encoder that will make mp4s over 2000x2000.) - AnonymousMaybe these will help, haven't tried them
http://blogs.adobe.com/VideoRoad/2012/1 ... coder.html
http://www.lightcrafttech.com/support/d ... 64-videos/ - AnonymousIf you have Adobe Creative Cloud you can use the Adobe Media Encoder CC 2014 (latest version but previous still works) to output an H.264 mp4 file. I send my renders from AE directly to AME using the "Composition" menu and choosing "Add to Adobe Media Encoder Queue".
edit: I've had great results outputting to 3840 x 1920 (4096 x 2048 videos stutter) as per Carmack's suggestion. - andrewmatthews0Honored Guest
"contempt" wrote:
If you have Adobe Creative Cloud you can use the Adobe Media Encoder CC 2014 (latest version but previous still works) to output an H.264 mp4 file. I send my renders from AE directly to AME using the "Composition" menu and choosing "Add to Adobe Media Encoder Queue".
edit: I've had great results outputting to 3840 x 1920 (4096 x 2048 videos stutter) as per Carmack's suggestion.
That's what I use as well. But as I said above, neither Adobe Media Encoder nor After Effects will render an h.264 with a vertical dimension over 2048. That's fine for mono 360 videos but for stereoscopic, you need to stack them which means you need to get the vertical resolution as high as possible.
(Milk VR announced that they will soon be accepting community-created content and they mentioned their max specs for 3D 360 videos is 4096x4096 h.264. So there's got to be a dang way to make such a thing!)
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 30 days ago
- 2 months ago