libheif icon indicating copy to clipboard operation
libheif copied to clipboard

main profile image sequence

Open dibbitson opened this issue 3 years ago • 7 comments

Hi,

Is a simple inter frame encoding supported? ie IPPPPP.

I can do a main profile encode with all I frames, or mainstillpicture, but any reference frames seems to not work.

Any ideas?

Thanks

dibbitson avatar Aug 17 '21 17:08 dibbitson

That it works at all is mostly an accident; libheif doesn't support image sequences currently.

silverbacknet avatar Aug 17 '21 18:08 silverbacknet

Image sequence coding is currently not supported at all and there are also no plans to work on it until someone can convince me that this is useful for anything :-)

Maybe decoding, but until now I did not come across any sequence files.

farindk avatar Aug 17 '21 18:08 farindk

Ha well it's a happy accident. Seems to work well. On Mac at least preview has no problem decoding all the imagery.

I have a valid use case ;) I'm sending this imagery in an environment with constrained bandwidth. The space savings gained by being able to do P frames would be very nice.

I might take a look at adding support myself if I can find the time -- from my glance at the spec and libheif code it shouldn't be too much of a change (famous last words). But I'm still not entirely sure of the details yet.

Thanks!

dibbitson avatar Aug 17 '21 19:08 dibbitson

I'm still not sure what you are actually showing, because libheif cannot produce sequences. It can produce files with multiple images, but these are not sequences (HEIF standard section 7 "Image Sequences").

farindk avatar Aug 17 '21 19:08 farindk

The thing is, why heif when you have mp4?

I personally would like to see it because layering static (or even separately moving) areas over a moving image is so powerful for retaining hard edges, like text layers. It's a super common use case in web pages, but there's already HTML and Javascript and SVG for that. Some benefit would transfer to moving it to a constrained file format, much like layering in general can benefit from going to a single PDF.

But is that a sufficient use case to interest anyone? Probably not. Just encoding any plain video to mp4 is plenty for nearly all use cases.

silverbacknet avatar Aug 17 '21 19:08 silverbacknet

@silverbacknet It's also the same codec. Whether you put h265 or av1 into a HEIF container or an MP4 container does not matter at all.

farindk avatar Aug 17 '21 19:08 farindk

Ah I see -- ok that makes sense. That's what I'm seeing then (a file with multiple images).

@silverbacknet We considered MP4 (and unfortunately I can't go into detail) but heif provides a nice solution for our workflow.

dibbitson avatar Aug 17 '21 19:08 dibbitson