Search Issue Tracker
Won't Fix
Votes
0
Found in
2018.4
2019.3
2019.3.0f1
2020.1
Issue ID
1203295
Regression
No
[Android] Audio becomes out of sync with Video after playing it at 5x speed
To reproduce:
1. Open the User's attached project
2. Build and Run on Android device
3. Set the speed to 5 for a few seconds
4. Set the speed back to 1
Expected: The audio is in sync with the video
Actual: The audio gets out of sync (~800ms)
Reproduced with: 2018.4.14f1(Mono, IL2CPP), 2019.3.0f2(Mono, IL2CPP), 2020.1.0a15(Mono, IL2CPP)
Reproduced on:
VLNQA00152 Huawei P9 7.0 HiSilicon Kirin 955 Mali-T880 OpenGL ES 3.2
VLNQA00229 Oneplus OnePlus6T 9 Snapdragon 845 SDM845 Adreno (TM) 630 OpenGL ES 3.2
VLNQA00277 Asus ROG Phone 8.1.0 Snapdragon 845 SDM845 Adreno (TM) 630 OpenGL ES 3.2
Not reproduced on:
VLNQA00127 Lge Nexus 5X 8.0.0 Snapdragon 808 Adreno (TM) 418 OpenGL ES 3.2
VLNQA00285 Samsung Galaxy J4 Core 8.1.0 Snapdragon 425 MSM8917 Adreno (TM) 308 OpenGL ES 3.0
VLNQA00270 Samsung Galaxy S10e 9 Exynos 9 9820 Mali-G76 OpenGL ES 3.2
VLNQA00224 Samsung Galaxy A5(2017) 8.0.0 Exynos 7 Octa 7880 Mali-T830 OpenGL ES 3.2
VLNQA00242 iPhone 7 iOS 12.3.1
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
- Crash on ShaderLab::ShaderState::ApplyShaderState when entering Play Mode and calling ShaderWarmup.WarmupShaderFromCollection with a shader that has dynamic_branch
- Crash on operator delete[] when a serializable structure in the System namespace is serialized by a MonoBehaviour
- [macOS] forward and backward mouse buttons are recognized as middle mouse button
- NavMeshModifier.OnEnable/OnDisable gets progressively slower when called repeatedly
- "System.Net.CookieContainer" throws an "ArgumentException" error when using a non-UTF-8 machine locale and hostname
Resolution Note (2020.1.X):
On lower-powered platforms, our video player can't quite keep up with what it's being asked to do. Getting out of sync is one of the things that happens in this case. I think a reasonable work-around when we switch back to playing at normal speed (1.0) is to seek slightly ahead of the current position. This will reset our video and audio buffering, get us back in sync, and get us back to a good starting point. To seek, modify the VideoPlayer component's time field:
vp.playbackSpeed = 1.0f;
vp.time += 0.033f;