Search Issue Tracker
Fixed in 2021.2.X
Fixed in 2019.4.X, 2020.3.X, 2021.1.X
Votes
0
Found in
2018.4
2019.4
2020.2
2021.1
2021.2
2021.2.0a6
Issue ID
1318270
Regression
No
Calling VideoPlayer.Prepare and VideoPlayer.StepForward produces a frame on a Render Texture
Reproduction steps:
1. Open attached project "videoplayer" and load Scene "SampleScene"
2. Enter Play Mode
3. Click "Prepare" and "StepForward" in the Game view
Expected result: No frames show up in the Game View
Actual result: A new frame gets produced every time "StepForward" is pressed
Reproducible with: 2018.4.32f1, 2019.4.21f1, 2020.2.7f1, 2021.1.0b8, 2021.2.0a6
Could not test with: 2021.2.0a7 (UI breaks and starts glitching the Game View)
Notes:
- Comment from the developers:
Unless VideoPlayer.Play() or VideoPlayer.Pause() have been called, there should be no frame produced ever. So any seek that is done beforehand, whether VideoPlayer.Prepare has been called or not, should not put new content in the RenderTexture. This is the case when seeking by setting VideoPlayer.frame or VideoPlayer.time, but not with VideoPlayer.StepForward(). The fact that the frame shows up before calling VideoPlayer.Play() is not as per requirements.
- Video of the reproduction is attached
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Mono Windows Builds don't produce full log callstacks when generating logs
- AssetBundles fail to load when running in Built Players for Mobile Devices
- UI elements with text gets bigger and grey when Player window is moved to another screen with different resolution
- System name accepts multiline text but crops it on confirmation, duplicates input, and shrinks the field when empty
- UI element scale and position are wrong in project build when DRS is changed with HDR and Software Dynamic Resolution enabled
Resolution Note (fix version 2021.2):
Fixed in 2021.2.0a10
As per design, VideoPlayer no longer causes frames to be produced before Pause() or Play() have been called. The VideoPlayer.clockTime value does change, and this will cause the new time to be used when starting playback, but the target (camera/texture/renderer) will not be updated.
Resolution Note (fix version 2021.1):
Fixed in 2021.1.2f1
Resolution Note (fix version 2020.3):
Fixed in 2020.3.14f1
Resolution Note (fix version 2019.4):
Fixed in 2019.4.29f1