Hi,
I doubt that it's an encoding issue since we always use them same encoded file, but when we vary the clear lead duration in our packager, the artifact is always heard when transitioning from an unprotected to a protected segment.
We deliver the same encrypted segments to Chrome (encrypted with cbcs), and there they play without an audible artifact on the unencrypted-encrypted boundary, so I'm reasonably confident that our packager isn't completely out of spec at least (I've also tried shaka-packager and its output has the same artifact).
I also tried inserting a discontinuity tag at the transition point, but it didn't seem to have an effect.
ISO 23001-7 (CENC) indicates that one could have one 'enca' sample description entry, and supply a 'sgpd' with 'seig' grouping type and 'isProtected=0x0' in a fragment's 'traf' to indicate that the samples in a fragment is unencrypted. However, most packagers I've used seem to have both 'enca' and 'mp4a' sample description entries, and indicating in the 'tfhd' which of sample description to use, thereby omitting the 'sgpd' with 'seig' grouping. What is Apple's recommended way of signalling unprotected samples in a protected track?
Do you have any examples of HLS with fMP4 and a clear lead? And is there any plan to implement support for clear lead in the mediafilesegmenter?
We've also tried playing the same stream on AVPlayer on iOS, and the same artifact is audible there. Is there anything we need to be aware of when developing our player, so that it handles a mix of protected and unprotected segments seamlessly?
(I reported this as a bug back on in the middle of March to hopefully get some help, but haven't heard anything yet.)