Open vladimir-kazakov opened 5 years ago
@vladimir-kazakov Thanks for the reminder. We do plan to enable the flag 'mp4_include_pssh_in_stream' by default at some time. I'll add it to the next milestone so we don't forget about it.
Move it to v2.5 milestone, but will do it in v2.4.1 minor release.
By default, when creating protected DASH content, Shaka Packager adds PSSH boxes both into media and manifest files. This can be reproduced using the following command:
Both DASH-IF IOP (4.3; the latest currently) and CMAF (1st edition; the latest currently) recommend to include PSSH boxes only into manifests.
For example, DASH-IF IOP, in the section 7.7.1, says:
There is also an explanation why it's a bad idea to include PSSH boxes into media files. Other sub-sections of the section 7 may also provide additional information.
Another example - CMAF, in section 7.4.3, says:
The section 8 provides more info about this recommendation.
Of course, there is an option to explicitly tell to the packager to not include PSSH boxes into media files:
It works as expected, but the problem is that by default the packager tries to be compatible with DASH-IF IOP, which does not recommend such behavior. The packager does it, because of the following option:
Which by default is set to
true
.So, if
generate_dash_if_iop_compliant_mpd
is set totrue
, themp4_include_pssh_in_stream
must be implicitly set tofalse
. In other words, DASH-IF IOP and CMAF compliant content must not contain PSSH boxes in media files, if these PSSH boxes will be added to manifests.I'm using Shaka Packager c257113-release on Ubuntu 18.04.3 inside a Docker container (google/shaka-packager, b5ec0eef40bc).