Pixotope uses the Unreal Engine media framework for file-based video input.
Rendering to file based video → https://docs.unrealengine.com/en-US/render-cinematics-in-unreal-engine/
Recommended file based video format for playback
Bink and HAP are video codecs that perform decompression using a computer's graphics hardware, substantially reducing the CPU usage necessary to play video. They have become the standard for high-performance, high-resolution movie playback on media servers, for live video performance and event visuals. They include support for alpha channels.
Pixotope recommend the playback of video files encoded using the Bink codec.
For more details check the Unreal Engine documentation: → https://docs.unrealengine.com/5.3/en-US/bink-video-for-unreal-engine/
Pixotope supports the playback of video files encoded using the HAP codec.
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
For more details on setup and playback check the Unreal Engine documentation: → https://docs.unrealengine.com/5.3/en-US/media-framework-technical-reference-for-unreal-engine/#hapcodecplaybacksupport
Encode HAP video using FFmpeg
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"