RESOLVED MOVED 212131
REGRESSION (iOS 13.4): Audio drift on HLS videos that encrypted with AES-128
https://bugs.webkit.org/show_bug.cgi?id=212131
Summary REGRESSION (iOS 13.4): Audio drift on HLS videos that encrypted with AES-128
Jatesadakarn Saengrat
Reported 2020-05-20 03:16:49 PDT
Created attachment 399825 [details] Some error message when drifting happens We found that playing HLS videos (MPEGTS segments) that encrypted with AES-128, on Safari on iOS 13.4, has some video/audio out-of-sync issues: 1. The video starts normally, no out-of-sync issues. 2. As the video playing, the audio keep out-of-sync, ahead of the video incrementally. 3. If user seek the video, the audio will back to be sync with the video again. 4. The drifting will occur again after a while. We already investigate that: * No drifting on older iOS versions. * No drifting on iOS 13.4 with unencrypted HLS videos. * No drifting on iOS 13.4 if the video is forced to play with MSE (on iPadOS). * Also found this issue on Safari 13.2 (WebKit 15610.1.12.2) on Mac OS X. When this issue occurs, there are some error log like this from mediaserverd: Too few bits left in input buffer Error deserializing packet ACMP4AACBaseDecoder.cpp:1392:ProduceOutputBufferList: (0x159637640) Error decoding packet 2583: err = -1, packet length: 371 ACMP4AACBaseDecoder.cpp:1401:ProduceOutputBufferList: '21 11 45 00 14 50 01 46 FF F1 0A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5A 5D E9 82 14 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 B4 47 40 11 1A 00 42 F0 25' We also prepare sample videos for reproducing this issue: * Encrypted HLS video (that the drifting occurs): * Media: https://champjss-apple-hls-sync-issues.sgp1.cdn.digitaloceanspaces.com/blip-blop/encrypted/prog_index.m3u8 * Sample Experience: https://youtu.be/y_9CQSfjRwY * Unencrypted HLS video: * Media: https://champjss-apple-hls-sync-issues.sgp1.cdn.digitaloceanspaces.com/blip-blop/raw/prog_index.m3u8 * Sample Experience: https://youtu.be/0HG_lpcR0Mc
Attachments
Some error message when drifting happens (416.18 KB, image/png)
2020-05-20 03:16 PDT, Jatesadakarn Saengrat
no flags
Radar WebKit Bug Importer
Comment 1 2020-05-20 16:42:20 PDT
Yuta Naito
Comment 2 2020-05-31 21:03:32 PDT
*** Bug 212472 has been marked as a duplicate of this bug. ***
Nonthawat Srichad
Comment 3 2020-05-31 21:20:21 PDT
Hi, Thanks, Yuta for update your issue. :) Here is updated information from our side 1. We have tested on iOS 13.5 and confirm that it still exists both iPhone and iPad. 2. We also discovered that this bug is occurring on macOS Catalina 10.15.5 too. tested on - Safari Version 13.1.1 (15609.2.9.1.2) - Safari Technology Preview Release 107 (Safari 13.2, WebKit 15610.1.14.1) If you want more information or log feel free to contact me or Jatesadakarn.
Yuta Naito
Comment 4 2020-06-01 21:22:56 PDT
Hi, Nonthawat. Thanks for the additional information. I've seen it happened in my own iOS 13.5 and Safari Technology Preview Release 107. I'll let you know if I want more information. -- Dear Webkit developer This issue has a huge impact on our business. I hope you can fix it as soon as possible.. Or do you have other workarounds or something like that?
Jatesadakarn Saengrat
Comment 5 2020-06-02 02:45:09 PDT
jredford
Comment 6 2020-06-09 18:28:33 PDT
I am also experiencing the same issues. Happy to provide further information if needed.
Jon Lee
Comment 7 2020-06-09 18:51:01 PDT
This is an issue on system frameworks. Please try the latest iOS 13.5.5 beta.
Nonthawat Srichad
Comment 8 2020-06-09 20:52:30 PDT
Hi Jon Lee, Thanks for the update. But you mention about beta version for iOS/iPadOS what about Safari on macOS? it also has the same issue as iOS/iPadOS. Anyway, I will try the iOS beta version and let you know the result.
Nonthawat Srichad
Comment 9 2020-06-09 23:36:05 PDT
Hi all, We've tested on iOS/iPadOS 13.6 beta (13.5.5 beta?) using a link from Jatesadakarn's comment and confirm that this issue is solved. - No audio drift occurs when playing encrypted HLS video (VOD). - No error deserializing packet occurs.
Yasuhiko Takano
Comment 10 2020-06-10 23:00:33 PDT
Hello, I had same problem. (refer https://bugs.webkit.org/show_bug.cgi?id=212588) and I tested with below URL target URL: https://5aeb1e45d40a5.streamlock.net/vodcf6/sync.mp4/playlist.m3u8 with 13.6 public beta2 and iPad 7th generation and the issue was solved.
Yasuhiko Takano
Comment 11 2020-06-11 00:10:07 PDT
I also checked with https://champjss-apple-hls-sync-issues.sgp1.cdn.digitaloceanspaces.com/blip-blop/index.html and iPad7 + 13.6 public beta2 and iPad 7th generation, and the issue was solved on it.
Note You need to log in before you can comment on or make changes to this bug.