diff --git a/libhb/render.c b/libhb/render.c index edbd18a..e387c0c 100644 --- a/libhb/render.c +++ b/libhb/render.c @@ -336,6 +336,12 @@ int renderInit( hb_work_object_t * w, hb_job_t * job ) pv->job = job; w->private_data = pv; + int sws_flags = SWS_LANCZOS; +#ifndef __x86_64__ + // Accurate rounding causes a segfault on x86_64 linux. + sws_flags |= SWS_ACCURATE_RND; +#endif + /* Get title and title size */ hb_title_t * title = job->title; @@ -347,7 +353,7 @@ int renderInit( hb_work_object_t * w, hb_job_t * job ) title->height - (job->crop[0] + job->crop[1]), PIX_FMT_YUV420P, job->width, job->height, PIX_FMT_YUV420P, - (uint16_t)(SWS_LANCZOS|SWS_ACCURATE_RND), NULL, NULL, NULL); + sws_flags, NULL, NULL, NULL); } /* Setup FIFO queue for subtitle cache */