[FFmpeg-devel] [PATCH]Fix linesize for pix_fmt pal8
Stefano Sabatini
stefasab at gmail.com
Mon Jun 25 19:28:38 CEST 2012
On date Monday 2012-06-25 17:24:11 +0200, Stefano Sabatini encoded:
> On date Wednesday 2012-06-20 07:33:04 +0000, Carl Eugen Hoyos encoded:
> > Stefano Sabatini <stefasab <at> gmail.com> writes:
> >
> > > Check attached patch, it should fix the problem when coupled
> > > with the new imgutils functions.
> >
> > The patch breaks decoding some of the samples from ticket #823.
>
> Can you explain the following code from raw_decode()?
>
> //2bpp and 4bpp raw in avi and mov (yes this is ugly ...)
> if (context->buffer) {
> int i;
> uint8_t *dst = context->buffer;
> buf_size = context->length - 256*4;
> if (avctx->bits_per_coded_sample == 4){
> for(i=0; 2*i+1 < buf_size && i<avpkt->size; i++){
> dst[2*i+0]= buf[i]>>4;
> dst[2*i+1]= buf[i]&15;
> }
> linesize_align = 8;
> } else {
> for(i=0; 4*i+3 < buf_size && i<avpkt->size; i++){
> dst[4*i+0]= buf[i]>>6;
> dst[4*i+1]= buf[i]>>4&3;
> dst[4*i+2]= buf[i]>>2&3;
> dst[4*i+3]= buf[i] &3;
> }
> linesize_align = 16;
shouldn't we use a specific pixel format for this (PIX_FMT_PALETTE4/2)?
--
FFmpeg = Foolish & Freak Marvellous Powered Elitarian Game
More information about the ffmpeg-devel
mailing list