nokiatech / heif

High Efficiency Image File Format
Other
1.74k stars 247 forks source link

Example sequences are not compliant #115

Open leo-barnes opened 1 year ago

leo-barnes commented 1 year ago

sea1_animation.heic and starfield_animation.heic are not spec-compliant. Both files contain an stss box that marks every 16th sample as a sync sample.

When actually looking at the samples, only sample 1 (if counting from 1) is a sync sample. The other samples marked as sync samples are not actually sync samples according to 14496-15, paragraph "8.4.3 Sync sample":

A sync sample in 'hvc1' and 'hev1' tracks shall contain VCL NAL units indicating that the coded picture with nuh_layer_id equal to 0 in the sample is an Instantaneous Decoding Refresh (IDR) picture, a Clean Random Access (CRA) picture, or a Broken Link Access (BLA) picture. When the coded picture with nuh_layer_id equal to 0 in a sync sample is a BLA or CRA picture, there shall be no RASL pictures associated with that BLA or CRA picture.

Sample 1 has nal_unit_type IDR_W_RADL (19), but the remaining samples marked as sync samples have nal_unit_type TRAIL_R (1).

I have only checked sea1_animation.heic and starfield_animation.heic. There may be other files among the examples that are incorrect.