Media Plane Image Sequence starts at incorrect frame

We are using the New Media Plate Actor in Virtual Production (to replace manually making a video player material output) to try to load in an image sequence to the scene, in our case a portal. As a part of the portal open sequence it seems to either load one of two cases: the last frame of media loaded or the last displayed frame of media previously displayed.

In Blueprint what I am doing is calling the restart event on the media plane (setting playback position to 0, alternatively seeking to 0). Then I play the media and un-hide the actor.

It seems like there should be a better way to interact with this plane. Namely the functionality one might hope for is “Play and Display” with a optional Restart “tick box” (bool param) which would properly handle un-hiding the actor and playing back the first frame on the media plane.

The way it appears to work right now is to apply the old texture to the player upon un-hiding then play media after the actor has been un-hidden. Logically it makes sense that it is not applying a media texture to a hidden object. However, this can lead to a unappealing look for media playback on a surface.

Reference: Dropbox - 2023-06-21 18-36-45.mkv - Simplify your life

Some notes:

  • Have tried to use an EXR image sequence (what is displayed in the example). The decoding/read performance is better but display seems nominally different (due to cache).
  • The Media Planes are set to a mesh of Plane for optimal performance.

Some Relevant Documentation:

Hello, I encountered the same issue as you. Do you have a better solution?

In my project, I want to play a video on an Image widget in UMG. However, even if I open the widget after the video has SourceOpened, I can still see the last frame of the previous video.

Currently, my approach is to continuously check in the UMG’s Tick event if MediaPlayer->GetTime() > 0. Usually, there are 3-5 frames where IsPlaying() == true && GetTime() == 0.