[FFmpeg-user] considering image sequence+audio for video preservation

Carl Eugen Hoyos cehoyos at ag.or.at
Sun Jun 12 17:57:23 CEST 2016


ibrahim <ibrahim <at> httpdot.net> writes:

> i hope it is appropriate to send this kind of an e-mail to 
> ffmpeg-user list.

I believe it is.

> i'd like to ask your opinions for a proposal of long term 
> video preservation strategy. FFV1+lpcm+mkv is a perfect 
> solution that meet most of the preservation requirements 
> for video

Which requirements are not met?
(I can imaging some but I wonder if the issue can be fixed 
within FFmpeg.)

> and i would recommend that as the first option but i am also 
> working on an additional strategy based on keeping the video 
> as image sequence+audio,

How would this deal with vfr videos?

> which would make the video part independent of video codecs 
> and the multimedia containers.

Why do you think so?
You need a video codec to store the individual images or not?
And at least audio would likely be stored within a container.
Without such a container, a lot of basic information (like 
length) would be missing.

> So, there would be no extra dedicated plan for preservation 
> of videos in a collection but "frames" of videos would be 
> preserved along with other still images (like photos)

How would the frames be preserved?
Maybe as ffv1 frames in mkv?

> and the audio part would be preserved along with other audio 
> works in a collection, according to the existing preservation 
> strategy of those media.

I believe you would still have to answer the question how to 
preserve audio and this brings you back to the original question: 
You have to decide container and codec(s).

[...]

> the image format for the image sequence should be a lossless 
> compressed or uncompressed free/libre format and it should 
> preserve the significant properties of video

If uncompressed video is acceptable for you, I may not understand 
your question: I believe the reason why ffv1 is discussed is that 
uncompressed video is generally not acceptable.

> such as interlacing,

Do you mean interlaced content?
If you use lossless compression, then by definition the 
artefacts that interlaced content shows are preserved.
But "interlacing" often means the way video frames are encoded 
(independently of the content) and I sincerely hope you will 
choose a codec that does not support interlaced encoding which 
is a can of worms.

> colour space (without any colour conversion), chroma 
> subsampling and bitdepth.

Of course.
Note that depending on what you mean with "colour space" it may 
not be so easy to reliably preserve it: Two codecs that use YV12 
(or, in FFmpeg's language: yuv420p) may expect a different 
representation of the same values on screen.

> I know that no such image format exists.

At least from FFmpeg's point of view, ffv1 is an image format, 
and you can use any image format within a video container to 
store video.

> png is my best option but: -png is up to 8bpc (besides alpha) 
> RGB.

png supports up to 16 bit and FFmpeg contains an implementation 
of png that supports up to 16 bit.

> besides YUV to RGB colour space conversion, i will loose 
> information for 10 bpc formats such as prores 4:2:2 when 
> represented as 8bpc.

> Is there a free/libre lossless image format that can handle 
> greater bitdepths?

jpg?
(But it cannot handle greater bitdepths than png, only 10 bit 
iirc.)

> since all displays are RGB, a color conversion to RGB is 
> eventually mandatory, at least when displaying the video/image.

I am not an expert on archiving but I suspect that this is 
exactly what should be avoided: Note that if losslessness is not 
a necessary goal, there are many alternatives to ffv1 (including 
h264) that compress much, much better without any visual 
degredation.

Are you writing this email to advocate jpeg 2000?
Note that jpeg 2000 certainly supports many features, most 
implementations are slow though, and the fact that most 
implementations contain different bugs could mean that the 
standard is difficult to implement.
I am not sure how "free" it is.

[...]

> Instead of choosing one image format for all videos, is it a 
> better approach to choose different image formats according 
> to the significant properties of the videos. like one image 
> format for interlaced source, another image format for 
> progressive etc...

Apart from my comment about interlacing above, using different 
codecs seem like a very bad approach.

Allow me to repeat that video contains "frames" and that there 
is no difference between a "collection of frames" and a video.
(If the collection is ordered.)

Carl Eugen



More information about the ffmpeg-user mailing list