#define WRITE_PIXELS(a, b, c) \
do { \
- val = CLIP(*a++); \
+ val = CLIP(*a++); \
val |= (CLIP(*b++) << 10) | \
(CLIP(*c++) << 20); \
AV_WL32(dst, val); \
#define WRITE_PIXELS8(a, b, c) \
do { \
- val = (CLIP8(*a++) << 2); \
- val |= (CLIP8(*b++) << 12) | \
- (CLIP8(*c++) << 22); \
+ val = (CLIP8(*a++) << 2); \
+ val |= (CLIP8(*b++) << 12) | \
+ (CLIP8(*c++) << 22); \
AV_WL32(dst, val); \
dst += 4; \
} while (0)
static void v210_planar_pack_8_c(const uint8_t *y, const uint8_t *u,
- const uint8_t *v, uint8_t *dst, ptrdiff_t width)
+ const uint8_t *v, uint8_t *dst,
+ ptrdiff_t width)
{
uint32_t val;
int i;
/* unroll this to match the assembly */
- for( i = 0; i < width-11; i += 12 ){
+ for (i = 0; i < width - 11; i += 12) {
WRITE_PIXELS8(u, y, v);
WRITE_PIXELS8(y, u, y);
WRITE_PIXELS8(v, y, u);
}
static void v210_planar_pack_10_c(const uint16_t *y, const uint16_t *u,
- const uint16_t *v, uint8_t *dst, ptrdiff_t width)
+ const uint16_t *v, uint8_t *dst,
+ ptrdiff_t width)
{
uint32_t val;
int i;
- for( i = 0; i < width-5; i += 6 ){
+ for (i = 0; i < width - 5; i += 6) {
WRITE_PIXELS(u, y, v);
WRITE_PIXELS(y, u, y);
WRITE_PIXELS(v, y, u);
avctx->coded_frame->pict_type = AV_PICTURE_TYPE_I;
- s->pack_line_8 = v210_planar_pack_8_c;
- s->pack_line_10 = v210_planar_pack_10_c;
+ s->pack_line_8 = v210_planar_pack_8_c;
+ s->pack_line_10 = v210_planar_pack_10_c;
if (ARCH_X86)
ff_v210enc_init_x86(s);
const AVFrame *pic, int *got_packet)
{
V210EncContext *s = avctx->priv_data;
-
int aligned_width = ((avctx->width + 47) / 48) * 48;
int stride = aligned_width * 8 / 3;
int line_padding = stride - ((avctx->width * 8 + 11) / 12) * 4;
int h, w, ret;
uint8_t *dst;
- if ((ret = ff_alloc_packet(pkt, avctx->height * stride)) < 0) {
+ ret = ff_alloc_packet(pkt, avctx->height * stride);
+ if (ret < 0) {
av_log(avctx, AV_LOG_ERROR, "Error getting output packet.\n");
return ret;
}
-
dst = pkt->data;
if (pic->format == AV_PIX_FMT_YUV422P10) {
- const uint16_t *y = (const uint16_t*)pic->data[0];
- const uint16_t *u = (const uint16_t*)pic->data[1];
- const uint16_t *v = (const uint16_t*)pic->data[2];
+ const uint16_t *y = (const uint16_t *)pic->data[0];
+ const uint16_t *u = (const uint16_t *)pic->data[1];
+ const uint16_t *v = (const uint16_t *)pic->data[2];
for (h = 0; h < avctx->height; h++) {
uint32_t val;
w = (avctx->width / 6) * 6;
memset(dst, 0, line_padding);
dst += line_padding;
-
y += pic->linesize[0] / 2 - avctx->width;
u += pic->linesize[1] / 2 - avctx->width / 2;
v += pic->linesize[2] / 2 - avctx->width / 2;
}
- }
- else if(pic->format == AV_PIX_FMT_YUV422P) {
+ } else if(pic->format == AV_PIX_FMT_YUV422P) {
const uint8_t *y = pic->data[0];
const uint8_t *u = pic->data[1];
const uint8_t *v = pic->data[2];
v += w >> 1;
dst += (w / 12) * 32;
- for( ; w < avctx->width-5; w += 6 ){
+ for (; w < avctx->width - 5; w += 6) {
WRITE_PIXELS8(u, y, v);
WRITE_PIXELS8(y, u, y);
WRITE_PIXELS8(v, y, u);
AV_WL32(dst, val);
dst += 4;
}
-
memset(dst, 0, line_padding);
dst += line_padding;