job->list_attachment = hb_attachment_list_copy( title->list_attachment );
job->metadata = hb_metadata_copy( title->metadata );
+
+#ifdef USE_QSV
+ job->qsv_decode = title->qsv_decode_support;
+#endif
}
static void job_clean( hb_job_t * job )
int hb_qsv_decode_is_enabled(hb_job_t *job)
{
- return ((job != NULL && job->title->qsv_decode_support) &&
+ return ((job != NULL && job->title->qsv_decode_support && job->qsv_decode) &&
(job->vcodec & HB_VCODEC_QSV_MASK));
}
static int64_t stop_at_pts = 0;
static int stop_at_frame = 0;
static uint64_t min_title_duration = 10;
+#ifdef USE_QSV
+static int qsv_decode = 1;
+#endif
/* Exit cleanly on Ctrl-C */
static volatile int die = 0;
job->vcodec = vcodec;
}
+#ifdef USE_QSV
+ job->qsv_decode = qsv_decode;
+#endif
+
/* Grab audio tracks */
if( atracks )
{
if (hb_qsv_available())
{
fprintf( out,
- "### QSV Options, via --encopts=\"option1=value1:option2=value2\" -----------\n\n"
+ "### Intel Quick Sync Video------------------------------------------------------\n\n"
+ " --disable-qsv-decoding Force software decoding of the video track.\n"
+ "\n"
+ " Advanced encoding options, via --encopts=\"option1=value1:option2=value2\":\n"
" - target-usage A range of numbers that indicate trade-offs between\n"
" <number> quality and speed, from 1 to 7 inclusive.\n"
" Default is 2\n"
{ "no-dvdnav", no_argument, NULL, DVDNAV },
#ifdef USE_QSV
{ "qsv-baseline", no_argument, NULL, QSV_BASELINE },
+ { "disable-qsv-decoding", no_argument, &qsv_decode, 0 },
#endif
{ "format", required_argument, NULL, 'f' },