diff options
author | Carl Eugen Hoyos <cehoyos@ag.or.at> | 2012-05-28 19:05:15 +0200 |
---|---|---|
committer | Carl Eugen Hoyos <cehoyos@ag.or.at> | 2012-05-28 19:05:15 +0200 |
commit | 5cd947d81b3b6dcfbb1f42e800270a4da5dbbcac (patch) | |
tree | 91fd7f7edab1456838f3e76a1974e9a8ee610d5c | |
parent | 77cea13f0521d4c481ab163220017404c1a13f19 (diff) | |
download | ffmpeg-5cd947d81b3b6dcfbb1f42e800270a4da5dbbcac.tar.gz |
Fix r10k codec for widths that are not multiples of 64.
Fixes ticket #1358
-rw-r--r-- | libavcodec/r210dec.c | 3 | ||||
-rw-r--r-- | libavcodec/r210enc.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/r210dec.c b/libavcodec/r210dec.c index b81a4f22c7..07dc5886b8 100644 --- a/libavcodec/r210dec.c +++ b/libavcodec/r210dec.c @@ -41,7 +41,8 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, int h, w; AVFrame *pic = avctx->coded_frame; const uint32_t *src = (const uint32_t *)avpkt->data; - int aligned_width = FFALIGN(avctx->width, 64); + int aligned_width = FFALIGN(avctx->width, + avctx->codec_id == CODEC_ID_R10K ? 1 : 64); uint8_t *dst_line; if (pic->data[0]) diff --git a/libavcodec/r210enc.c b/libavcodec/r210enc.c index 92c9ce31f6..0a7dd332ba 100644 --- a/libavcodec/r210enc.c +++ b/libavcodec/r210enc.c @@ -38,7 +38,8 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *pic, int *got_packet) { int i, j, ret; - int aligned_width = FFALIGN(avctx->width, 64); + int aligned_width = FFALIGN(avctx->width, + avctx->codec_id == CODEC_ID_R10K ? 1 : 64); int pad = (aligned_width - avctx->width) * 4; uint8_t *src_line; uint8_t *dst; |