mirror of
https://github.com/mpv-player/mpv.git
synced 2024-09-20 20:03:10 +02:00
Use avcodec_align_dimensions to appropriately align width and height in
get_buffer instead of reimplementing it badly. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29921 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
69e86099e2
commit
a98091b77b
@ -536,10 +536,8 @@ static int get_buffer(AVCodecContext *avctx, AVFrame *pic){
|
||||
int type= MP_IMGTYPE_IPB;
|
||||
int width= avctx->width;
|
||||
int height= avctx->height;
|
||||
int align=15;
|
||||
avcodec_align_dimensions(avctx, &width, &height);
|
||||
//printf("get_buffer %d %d %d\n", pic->reference, ctx->ip_count, ctx->b_count);
|
||||
if(avctx->pix_fmt == PIX_FMT_YUV410P)
|
||||
align=63; //yes seriously, its really needed (16x16 chroma blocks in SVQ1 -> 64x64)
|
||||
|
||||
if (pic->buffer_hints) {
|
||||
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "Buffer hints: %u\n", pic->buffer_hints);
|
||||
@ -595,8 +593,7 @@ static int get_buffer(AVCodecContext *avctx, AVFrame *pic){
|
||||
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, type== MP_IMGTYPE_IPB ? "using IPB\n" : "using IP\n");
|
||||
}
|
||||
|
||||
mpi= mpcodecs_get_image(sh, type, flags,
|
||||
(width+align)&(~align), (height+align)&(~align));
|
||||
mpi= mpcodecs_get_image(sh, type, flags, width, height);
|
||||
if (!mpi) return -1;
|
||||
|
||||
// ok, let's see what did we get:
|
||||
|
Loading…
Reference in New Issue
Block a user