[Libav-user] [livav-users] where can I change read frame size ?

parth.pancholi parth5151 at yahoo.com
Tue Jul 5 08:49:00 CEST 2016


Hi All,
I am adding support of NV12 Tiled pixel format in ffmpeg. NV12 Tiled format
conversion need bigger frame size than actual given resolution because it
adjusts frame data into 64x32 (Tile size) micro blocks in Z and flip Z
pattern. see  this <http://www.hep.by/gnu/kernel/media/re27.html>   link for
more details about NV12 Tiled format. So my question is

Where can I change my frame size or src[0] & src[1] buffer size ?? 
src[0] - contains Y frame data, 
src[1] - contains UV interleaved data

Below are my actual height and width calculations for NV12 Tiled format.

#define ROUND_UP_X(num,x) (((num)+(x-1))&~(x-1))
static int tile_size = 64*32;

int wTiles = ROUND_UP_X(width,128)/64;
int hTiles = ROUND_UP_X(height,32)/32;
int hTiles_UV = ROUND_UP_X(height/2,32)/32;

//Size of a single frame in source, source is in NV12Tile format
int frame_size_src_Y = (tile_size * wTiles * hTiles);
int frame_size_src_UV = (tile_size * wTiles * hTiles_UV);
int frame_size_src = frame_size_src_Y + frame_size_src_UV;



--
View this message in context: http://libav-users.943685.n4.nabble.com/livav-users-where-can-I-change-read-frame-size-tp4662324.html
Sent from the libav-users mailing list archive at Nabble.com.


More information about the Libav-user mailing list