diff options
Diffstat (limited to 'libhb')
-rw-r--r-- | libhb/hb.c | 14 | ||||
-rw-r--r-- | libhb/work.c | 2 |
2 files changed, 9 insertions, 7 deletions
diff --git a/libhb/hb.c b/libhb/hb.c index f5caa8cd6..f7e3c9dae 100644 --- a/libhb/hb.c +++ b/libhb/hb.c @@ -796,12 +796,14 @@ void hb_set_anamorphic_size( hb_job_t * job, } else { - /* We first need the display ar. - That's the source display width divided by the source height after cropping. - Then we multiple the output height by that to get the pixel aspect width, - and the pixel aspect height is the storage width.*/ - pixel_aspect_width = height * source_display_width / cropped_height; - pixel_aspect_height = width; + /* If we're doing ana 3 and not specifying a DAR, care needs to be taken. + This indicates a PAR is potentially being set by the interface. But + this is an output PAR, to correct a source, and it should not be assumed + that it properly creates a display aspect ratio when applied to the source, + which could easily be stored in a different resolution. */ + + int output_display_width = width * (double)pixel_aspect_width / + (double)pixel_aspect_height ; } /* Back to caller */ diff --git a/libhb/work.c b/libhb/work.c index 92f04f483..e99feaa8c 100644 --- a/libhb/work.c +++ b/libhb/work.c @@ -204,7 +204,7 @@ void hb_display_job_info( hb_job_t * job ) if( job->anamorphic.mode ) { - hb_log( " + %s anamorphic", job->anamorphic.mode == 1 ? "strict" : "loose" ); + hb_log( " + %s anamorphic", job->anamorphic.mode == 1 ? "strict" : job->anamorphic.mode == 2? "loose" : "custom" ); hb_log( " + storage dimensions: %d * %d -> %d * %d, crop %d/%d/%d/%d", title->width, title->height, job->width, job->height, job->crop[0], job->crop[1], job->crop[2], job->crop[3] ); |