Supported media formats
Introduction
Pixotope uses the Unreal Engine media framework for file-based video input.
For a list of supported formats see → https://docs.unrealengine.com/4.27/en-US/WorkingWithMedia/IntegratingMedia/MediaFramework/TechReference/
Please refer to the Unreal documentation's section on best practices for how to set up file and streaming based playback of video: https://docs.unrealengine.com/4.27/en-US/WorkingWithMedia/IntegratingMedia/MediaFramework/HowTo/
For rendering and output to file based video, Unreal now supports professional codecs such as Apple ProRes and Avid DNx. Please refer to the UE4 documentation to learn how to best output to these formats: https://docs.unrealengine.com/4.27/en-US/WorkingWithMedia/IntegratingMedia/MediaFramework/HowTo/ExportProMedia/
Recommended file based video format for playback
Recommended Codec | Recommended Container |
---|---|
HAP | .mov |
H.264 | .mp4 |
HAP Codecs for playback
Pixotope supports the playback of video files encoded using the HAP codec.
Please refer to UE4 documentation on setting up playback of HAP encoded videos: https://docs.unrealengine.com/en-US/Engine/MediaFramework/TechReference/index.html#hapcodecplaybacksupport
HAP is a set of video codecs that perform decompression using a computer's graphics hardware, substantially reducing the CPU usage necessary to play video. It has become the standard for high-performance, high-resolution movie playback on media servers, for live video performance and event visuals. It includes support for alpha channels.
There are four different flavors of HAP:
HAP has the lowest data rate and reasonable image quality
HAP Alpha has the same image quality as HAP and supports an alpha channel
HAP Q has improved image quality, at the expense of larger file sizes
HAP Q Alpha has improved image quality and an alpha channel, at the expense of larger file sizes
Learn more about using HAP here: https://hap.video/using-hap
Using FFmpeg to encode HAP video
For HAP movies use the following command:
ffmpeg -i yourSourceFile.mov -c:v hap outputName.mov
For HAP Alpha movies use the following command:
ffmpeg -i yourSourceFile.mov -c:v hap -format hap_alpha outputName.mov
For HAP Q movies use the following command:
ffmpeg -i yourSourceFile.mov -c:v hap -format hap_q outputName.mov
Encoding a set of images to HAP using FFmpeg
Export to HAP directly from a .tif sequence with alpha using FFmpeg:
ffmpeg -r 30 -f image2 -s 1920x1080 -i test%02d.tif -vcodec hap -format hap_alpha -pix_fmt rgba test.mov
-i is where you set the pattern for the image sequence naming (where "%02d" means that zeros will be padded until the length of the string is 2, i.e. 01…20…30… and so on. If no padding is needed, use pic%d.png or %d.png or similar)
-r is the frame rate (fps)
-s is the resolution
and the output filename is "test.mov"