Sign in

username:

password:



Not a member?

Search imagedsp



Search tips

Subscribe to imagedsp



imagedsp by Keywords

Error Concealment | JPEG | MPEG-4 | Wavelet | YUV

Ads

Discussion Groups

Technical Discussions related to Image Processing (image coding, compression, digital effects, mpeg, etc)

  

Post a new Thread

IMG_LIB MPEG 2 VLD - mosh...@imagine-com.com - Apr 10 7:47:16 2007



I have a question regarding Mpeg2 VLD function of the TI IMG_LIB. 
The API of the intra function is:

void IMG_mpeg2_vld_intra_

(

    const short *RESTRICT Wptr,      // quantization matrix

    short *RESTRICT outi,            // IDCT coefficients output array

    IMG_mpeg2_vld *RESTRICT Mpeg2v,  // bitstream context structure

    int dc_pred[3],                  // DC prediction array

    int mode_12Q4,                   // if !=0 returns coeffs in 12Q4 format

    int num_blocks,                  // number of blocks in the MB

    int bsbuf_words                  // bitstream buffer size

)

I see in the manual, that the bsbuf field in the IMG_mpeg2_vld struct, which contains the bits
of the decoded DCT coeffs, should be word aligned to the size of bsbuf_words. 
TI uses in their example a buffer of 512 words, 2048 bytes. 
I guess it's because of loop unrolling. 

The problem is that in the m2v bitstream, the DCT coeffs decoded bits are obviously not
aligned. I am familiar with the mechanism of word0, word1 and word2 which create top0 and top1.
This is ok. 
But should I also copy the data to a 2048 bytes buffer before each calling to the VLD function?

This is obviously time consuming. 

So what am I missing?

Thanks a lot,

Moshe



(You need to be a member of imagedsp -- send a blank email to imagedsp-subscribe@yahoogroups.com )