[libav-devel] [RFC] Cineform HD questions
kierank at obe.tv
Thu Dec 31 18:14:18 CET 2015
On 31 December 2015 at 06:17, Kostya Shishkov <kostya.shishkov at gmail.com> wrote:
> On Thu, Dec 31, 2015 at 04:13:50AM +0000, Kieran Kunhya wrote:
>> This patch is the first attempt at getting a working Cineform HD decoder into avcodec
>> It supports YUV422P10 files which are the majority of files in the wild
>> There are some files not supported such as those from film scanners and some older files which do something unusual with chroma and the transform.
>> Also files which are cut awkwardly will infinite loop in the coefficient decoding because of a lack of escape symbol.
> A simple condition for checking if you exceeded number of coefficients will be
> added anyway (probably by you too).
I thought perhaps there was a clever way to get that info from the
checked bitstream writer but perhaps not.
>> The big question is how to organise the coefficients - at the moment all the buffers are hardcoded.
>> If anyone has any suggestions about the best way to do this, that would be appreciated.
> 1) find somebody who can convert transform into lifting scheme so you can do
> it inplace (yes, very realistic)
> 2) have one temporary buffer for merging and store all bands in the same
> (coeffs) (tmp) (coeffs again)
> LL0 | LH0 | LH1 L0 band0 | LH1
> ----+-----+ --- |
> HL0 | HH0 | => H0 => |
> ----+-----+------ --------+------
> HL1 | HH1 HL1 | HH1
> So you'll have the same stride for input high and low coeffs too.
Ok, 2) makes sense, might try 1) another day.
More information about the libav-devel