summaryrefslogtreecommitdiffstats
path: root/libhb/enc_qsv.c
diff options
context:
space:
mode:
authorRodeo <[email protected]>2014-01-12 22:52:30 +0000
committerRodeo <[email protected]>2014-01-12 22:52:30 +0000
commitd4fdf932d85c988bae5a9046730a98f71c2364a5 (patch)
tree918b5b6a7e31c45a1b3b8432f1f5c4f969f17a81 /libhb/enc_qsv.c
parentd69e6b4612a40ba2a4714ac8e02a9b4fea6bb03c (diff)
QSV: base the B-pyramid check on the presence of B-references, rather than the initial delay.
This is potentially more accurate. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5963 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'libhb/enc_qsv.c')
-rw-r--r--libhb/enc_qsv.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/libhb/enc_qsv.c b/libhb/enc_qsv.c
index ca2158a67..e4d0dc04b 100644
--- a/libhb/enc_qsv.c
+++ b/libhb/enc_qsv.c
@@ -1464,13 +1464,6 @@ int encqsvWork( hb_work_object_t * w, hb_buffer_t ** buf_in,
((task->bs->TimeStamp -
task->bs->DecodeTimeStamp +
(duration / 2)) / duration));
- // check whether b_pyramid is respected, log if needed
- if ((pv->param.gop.b_pyramid != 0 && pv->bfrm_delay <= 1) ||
- (pv->param.gop.b_pyramid == 0 && pv->bfrm_delay >= 2))
- {
- hb_log( "encqsvWork: b_pyramid %d not respected (delay: %d)",
- pv->param.gop.b_pyramid, pv->bfrm_delay);
- }
}
if (!pv->bfrm_workaround)
@@ -1502,6 +1495,15 @@ int encqsvWork( hb_work_object_t * w, hb_buffer_t ** buf_in,
}
}
+ // check whether B-pyramid is used even though it's disabled
+ if ((pv->param.gop.b_pyramid == 0) &&
+ (task->bs->FrameType & MFX_FRAMETYPE_B) &&
+ (task->bs->FrameType & MFX_FRAMETYPE_REF))
+ {
+ hb_log("encqsvWork: BPyramid off not respected (delay: %d)",
+ pv->bfrm_delay);
+ }
+
// check for PTS < DTS
if (buf->s.start < buf->s.renderOffset)
{