Search Issue Tracker
Fixed in 2019.1
Fixed in 2018.2, 2018.3
[iOS] VideoPlayer player is paused when unplugging headphones
While using VideoPlayer API to play a video with no audio and no playback controls on it, the video is paused when removing headset/earphones. That behavior is ok for a video that has audio and controls, but in some other use cases where it's a background loop video, it doesn't look good. What's also bad is that the video player still reports its state as playing (VideoPlayer.isPlaying reports true), and resuming the video requires first a call to VideoPlayer.Pause() and then VideoPlayer.Play(). This makes it difficult for the application to work around the issue.
1. Download attached project "VideoBug.zip" and open in Unity
2. Open "SampleScene" scene
3. Build for iOS
4. Deploy the Xcode project to the iOS device which has headphones plugged in
5. Observe that the Video is playing by default
6. While the Video is playing, remove the headphones from a device
Expected result: If the Video is paused/stopped, "videoPlayer.isPlaying" becomes "false"
Actual result: If the Video is paused/stopped, "videoPlayer.isPlaying" still stays "true"
- This issue appears only on iOS
- On Android, this issue does not reproduce
- iPhone 6s Plus iOS 10.3.2
Reproduced on Unity 2018.2.0a8, 2018.2.11f1, 2018.3.0b4 and 2019.1.0a3
Not reproduced on Unity 2018.1.9f2 and 2018.2.0a7
Regression on Unity 2018.2.0a8
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- [Build Callbacks] Build is not failing when BuildFailedException is thrown in the PostProcessScene Callback
- Custom Event do not fire on builds
- [WebGL] Mouse input is blocked after a few moves when using Edge browser
- Builds that contain terrain using the Nature/Terrain/Standard shader produce errors when run in headless mode
- When the registry value for "TimeZoneKeyName" is invalid, "TimeZoneNotFoundException" exceptions are thrown