From 3ebdfd3eed6604843887257661fc7281aa75c821 Mon Sep 17 00:00:00 2001 From: "Alfred E. Heggestad" Date: Wed, 18 May 2016 19:46:00 +0200 Subject: daala: upgrade to daala 0.0-1564-g79787c7 --- modules/daala/daala.c | 3 +++ modules/daala/decode.c | 2 +- modules/daala/encode.c | 17 +++++++++++++---- 3 files changed, 17 insertions(+), 5 deletions(-) (limited to 'modules/daala') diff --git a/modules/daala/daala.c b/modules/daala/daala.c index 130ca59..b5790fa 100644 --- a/modules/daala/daala.c +++ b/modules/daala/daala.c @@ -20,6 +20,9 @@ * - Define and implement fragmentation of large packets * - Define an IETF RTP Payload type * + * External libraries: + * + * daala version 0.0-1564-g79787c7 (or later) * * References: * diff --git a/modules/daala/decode.c b/modules/daala/decode.c index e2217c8..cacd8b5 100644 --- a/modules/daala/decode.c +++ b/modules/daala/decode.c @@ -143,7 +143,7 @@ int daala_decode(struct viddec_state *vds, struct vidframe *frame, } } else { - od_img img; + daala_image img; if (!vds->got_headers) { warning("daala: decode: still waiting for headers\n"); diff --git a/modules/daala/encode.c b/modules/daala/encode.c index 7770bd6..d8abe4d 100644 --- a/modules/daala/encode.c +++ b/modules/daala/encode.c @@ -130,10 +130,12 @@ static int open_encoder(struct videnc_state *ves, const struct vidsz *size) daala_comment dc; daala_packet dp; int err = 0; - int complexity = 0; - int video_q = 10; + int complexity = 7; + int video_q = 30; + int bitrate = ves->bitrate; - info("daala: open encoder (%d x %d)\n", size->w, size->h); + info("daala: open encoder (%d x %d, %d bps)\n", + size->w, size->h, bitrate); if (ves->enc) { debug("daala: re-opening encoder\n"); @@ -175,6 +177,9 @@ static int open_encoder(struct videnc_state *ves, const struct vidsz *size) daala_encode_ctl(ves->enc, OD_SET_COMPLEXITY, &complexity, sizeof(complexity)); + daala_encode_ctl(ves->enc, OD_SET_BITRATE, + &bitrate, sizeof(bitrate)); + for (;;) { int r; @@ -215,7 +220,8 @@ int daala_encode(struct videnc_state *ves, bool update, const struct vidframe *frame) { int r, err = 0; - od_img img; + daala_image img; + unsigned i; (void)update; /* XXX: how to force a KEY-frame? */ if (!ves || !frame || frame->fmt != VID_FMT_YUV420P) @@ -250,6 +256,9 @@ int daala_encode(struct videnc_state *ves, bool update, img.planes[2].xstride = 1; img.planes[2].ystride = frame->linesize[2]; + for (i=0; i<3; i++) + img.planes[i].bitdepth = 8; + img.nplanes = 3; img.width = frame->size.w; -- cgit v1.2.3