Video playback stutters at m3u8 segment boundaries when AVPlayer is muted
| Originator: | fcanas | ||
| Number: | rdar://24130593 | Date Originated: | 11-Jan-2016 12:01 PM |
| Status: | Open | Resolved: | |
| Product: | iOS | Product Version: | 9 |
| Classification: | Performance | Reproducible: | Always |
Summary: When playing an m3u8 video playback stutters at about the three second mark, within a few dozen milliseconds of the segment boundary, when the AVPlayer is muted. Steps to Reproduce: Reproducing in code: 1. Initialize an AV player item with a url for an m3u8 file 2. Initialize an AVPlayer with the result of step 1 3. Mute the AVPlayer from step 3 4. Play the video and observe a stutter at around 3 seconds, or the segment boundary —— Steps to reproduce in attached project: 1. Build and install on an iOS 9 device. 2. Launch the application and observe smooth playback of the video 3. Enable mute via the mute switch in the upper-right of the screen 4. Kill the application 5. Relaunch the application 6. Observe that on its first playback, the video stutters right around the time the red panda is eating something that looks like an apple. 7. Disable mute, kill the app, and go to step 2. Expected Results: Visual playback should be smooth, as it is when the player is not muted, and as it is on subsequent playback of the same asset. Actual Results: The video can be seen to visibly stall. Regression: The problem does not occur on iOS 8.4.1 Notes: When you observe the progress of the player in CMTime compared against an NSTimer, CMTime is seen “stalling”. That is, CMTime does not advance for over 100milliseconds while the NSTimer does. This behavior can be observed on iOS 9.1 and 9.2. It was not observed on 8.4.1 The m3u8 in the project isn’t particularly special. The behavior can be reproduced with many different m3u8s which I have validated with Apple’s streaming video validation tools.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!