ref: 9a81785e4228a9cbf944dcf94127f8ec29bf9b6d
parent: 197ef67eeb327d79abb961fa0dfd8de9df24d691
author: Johann <johannkoenig@google.com>
date: Mon Apr 29 12:07:02 EDT 2019
vp8: quiet conversion warning when packing sizes The values are or'd together and then stored 8 bits at a time: 9.1. Uncompressed Data Chunk * 16 bits: (2 bits Horizontal Scale << 14) | Width (14 bits) * 16 bits: (2 bits Vertical Scale << 14) | Height (14 bits) BUG=webm:1615 Change-Id: Id2eb3deaccec299a0619990d3a6f1eb4f71e50e2
--- a/vp8/encoder/bitstream.c
+++ b/vp8/encoder/bitstream.c
@@ -1043,12 +1043,18 @@
cx_data[1] = 0x01;
cx_data[2] = 0x2a;
+ /* Pack scale and frame size into 16 bits. Store it 8 bits at a time.
+ * https://tools.ietf.org/html/rfc6386
+ * 9.1. Uncompressed Data Chunk
+ * 16 bits : (2 bits Horizontal Scale << 14) | Width (14 bits)
+ * 16 bits : (2 bits Vertical Scale << 14) | Height (14 bits)
+ */
v = (pc->horiz_scale << 14) | pc->Width;
- cx_data[3] = v;
+ cx_data[3] = v & 0xFF;
cx_data[4] = v >> 8;
v = (pc->vert_scale << 14) | pc->Height;
- cx_data[5] = v;
+ cx_data[5] = v & 0xFF;
cx_data[6] = v >> 8;
extra_bytes_packed = 7;