strukturag / libheif

libheif is an HEIF and AVIF file format decoder and encoder.
Other
1.6k stars 292 forks source link

uncompressed: support version 1 boxes #1198

Closed bradh closed 4 days ago

bradh commented 5 days ago

This solves the same problem as https://github.com/strukturag/libheif/pull/1132, but aligned to the "the uncompressed codec looks for both variants and then internally generates the implied boxes. They are never visible outside the uncompressed codec."

It doesn't actually generate the boxes, it just works with and without the cmpd box.

farindk commented 4 days ago

Thanks for the change.

Ready from your side? I'll probably remove the prefer_minimised_boxes_everywhere option, because it doesn't work to have this in the options struct as they can contradict each other. When we have more similar options later on, we can add a

heif_encoder_options_set_minimised_boxes(bool);

To switch all those options at the same time.

I'd also prefer to set prefer_uncC_short_form = true;, because that is no breaking change for anyone and currently there are probably very few users of the codec anyway. It's better to have a nice default in the future.

bradh commented 4 days ago

I think I've now fixed the option to match.

Do you want me to redo this against master?

farindk commented 4 days ago

Do you want me to redo this against master?

Not needed, I can merge it into master.

bradh commented 4 days ago

Do you want me to redo this against master?

Not needed, I can merge it into master.

Thanks.

farindk commented 4 days ago

Rebased and merged into master. Thank you.