diff options
author | Vittorio Giovara <[email protected]> | 2015-03-08 04:06:32 +0000 |
---|---|---|
committer | Vittorio Giovara <[email protected]> | 2015-06-30 15:34:37 +0200 |
commit | 3e3056f2a020dd77efdf379dbd4c06a65b4a499a (patch) | |
tree | 5aae453a69553d0fba5767fb09dcc83a036be7b5 | |
parent | 3ad678a85b96fc5fecd60e3d3a31ca5ffc89d67f (diff) |
h264: Allow stream and container cropping at the same time
The container cropping is applied only when difference is within 16
pixels, and the smallest value between the two is chosen.
Bug-Id: 383
Signed-off-by: Vittorio Giovara <[email protected]>
-rw-r--r-- | libavcodec/h264_slice.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c index 16043dcb0e..d287662286 100644 --- a/libavcodec/h264_slice.c +++ b/libavcodec/h264_slice.c @@ -896,13 +896,10 @@ static int init_dimensions(H264Context *h) { int width = h->width - (h->sps.crop_right + h->sps.crop_left); int height = h->height - (h->sps.crop_top + h->sps.crop_bottom); - int crop_present = h->sps.crop_left || h->sps.crop_top || - h->sps.crop_right || h->sps.crop_bottom; /* handle container cropping */ - if (!crop_present && - FFALIGN(h->avctx->width, 16) == h->width && - FFALIGN(h->avctx->height, 16) == h->height) { + if (FFALIGN(h->avctx->width, 16) == FFALIGN(width, 16) && + FFALIGN(h->avctx->height, 16) == FFALIGN(height, 16)) { width = h->avctx->width; height = h->avctx->height; } |