DeepAR SDK supports playing video files since version 3.4.0.

Video textures in Studio

To add video in DeepAR Studio go to Add → Texture then select the video you want to load.

Video will load as a texture in the Textures panel. You can use it as any other texture in the DeepAR Studio. When the video texture is attached to the material, by default it will only display the first frame of the video. To play the video use the Animation components (example: Play Animation Once component) or Animation controller.

Video formats

  • Only allowed video format you can use is mp4 with h.264 (avc) encoding.

  • There are no restrictions on the video resolution.

Best practices

This section provides what is the best way to use video textures in DeepAR SDK.

  • Although there are no restrictions on the video resolution, it's best not to use HD or larger resolutions. Video textures can't generate mip-maps so when displaying those videos on lower resolution screens there will be notable aliasing.

  • Prepare your videos to be small in size (~2MB). Loading large videos will significantly increase resulting effect file size and loading large effects is slow. If you know what are you doing you can load large video files also.

  • When using video textures with Animation controller you can playback different parts of the video as part of the animation states. It is best to avoid playing different parts of the same video as part of the animation states. What you should do is prepare each animation segment as separate video file and play different video as part of the animation states.

  • It is generally best to play video files in their entirety and not just play segments of the video.

Platform specifics

Effects containing video textures cannot be used on all platforms.

  • iOS/MacOS: All video texture features work.

  • Android: All video texture features work except playing video segments as part of the animation controller - only entire video can be play by setting offset to 0ms and duration to 0ms.

  • Web: Video textures aren't currently supported on DeepAR Web SDK (coming soon).

Did this answer your question?