1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

Merge commit 'f6f32fc93d39caf329869c1bff8ad024ccab1d42'

* commit 'f6f32fc93d39caf329869c1bff8ad024ccab1d42':
  qsvenc: set the timestamp for PIX_FMT_QSV frames as well

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
This commit is contained in:
Hendrik Leppkes 2015-10-22 15:48:11 +02:00
commit 2fece1e4d5

View File

@ -385,10 +385,7 @@ static int submit_frame(QSVEncContext *q, const AVFrame *frame,
return ret; return ret;
qf->surface = (mfxFrameSurface1*)qf->frame->data[3]; qf->surface = (mfxFrameSurface1*)qf->frame->data[3];
*surface = qf->surface; } else {
return 0;
}
/* make a copy if the input is not padded as libmfx requires */ /* make a copy if the input is not padded as libmfx requires */
if ( frame->height & (q->height_align - 1) || if ( frame->height & (q->height_align - 1) ||
frame->linesize[0] & (q->width_align - 1)) { frame->linesize[0] & (q->width_align - 1)) {
@ -428,9 +425,11 @@ static int submit_frame(QSVEncContext *q, const AVFrame *frame,
qf->surface_internal.Data.PitchLow = qf->frame->linesize[0]; qf->surface_internal.Data.PitchLow = qf->frame->linesize[0];
qf->surface_internal.Data.Y = qf->frame->data[0]; qf->surface_internal.Data.Y = qf->frame->data[0];
qf->surface_internal.Data.UV = qf->frame->data[1]; qf->surface_internal.Data.UV = qf->frame->data[1];
qf->surface_internal.Data.TimeStamp = av_rescale_q(frame->pts, q->avctx->time_base, (AVRational){1, 90000});
qf->surface = &qf->surface_internal; qf->surface = &qf->surface_internal;
}
qf->surface->Data.TimeStamp = av_rescale_q(frame->pts, q->avctx->time_base, (AVRational){1, 90000});
*surface = qf->surface; *surface = qf->surface;