diff options
author | Vittorio Giovara <vittorio.giovara@gmail.com> | 2015-03-08 04:06:32 +0000 |
---|---|---|
committer | Vittorio Giovara <vittorio.giovara@gmail.com> | 2015-06-30 15:34:37 +0200 |
commit | 3e3056f2a020dd77efdf379dbd4c06a65b4a499a (patch) | |
tree | 5aae453a69553d0fba5767fb09dcc83a036be7b5 /libavcodec | |
parent | 3ad678a85b96fc5fecd60e3d3a31ca5ffc89d67f (diff) | |
download | ffmpeg-3e3056f2a020dd77efdf379dbd4c06a65b4a499a.tar.gz |
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 <vittorio.giovara@gmail.com>
Diffstat (limited to 'libavcodec')
-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; } |