I just learned that MP4 files don't support alpha channel / transparent backgrounds. I'd like to play a logo animation over a UIView.
Has anyone successfully done this, and/or can point me in a direction? Thank you.
MP4 is a container format, not an encoding format. What encoding are you looking to use?
The last time I tried, H.264 video with transparency played back just fine, but AVFoundation was unable to encode *into* H.264 with transparency. So I could play an existing track with transparency, but not create a new one via AVFoundation. Whether or not this has changed since I tried, I don't know.
However, playing back transparent video is awkard because the default background is black, which kind of defeats the purpose. What I had to do was to create a AVMutableVideoComposition using "instructions" to grab the video track out of an asset, and explicitly specify that the AVMutableVideoCompositionInstruction backgroundColor should be clear, rather than the default of black.
Again, this was a while ago. This might be easier to achieve now.