Commit 2c93a8ed authored by Jingning Han's avatar Jingning Han Committed by Paul Wilkins
Browse files

Give VP9 a different sync code from VP8

The new code is 0x49, 0x83, 0x42

There is nothing particularly special about this code bitstream wise.
Its derivation is the word "sync" coded using 4x6bit alphabetic indices.

Change-Id: Ie2430a854af32ddc5a5c25a6c1c90cf6497ba647
parent 5f3612c3
......@@ -959,7 +959,7 @@ int vp9_decode_frame(VP9D_COMP *pbi, const uint8_t **p_data_end) {
// When error concealment is enabled we should only check the sync
// code if we have enough bits available
if (data + 3 < data_end) {
if (data[0] != 0x9d || data[1] != 0x01 || data[2] != 0x2a)
if (data[0] != 0x49 || data[1] != 0x83 || data[2] != 0x42)
vpx_internal_error(&pc->error, VPX_CODEC_UNSUP_BITSTREAM,
"Invalid frame sync code");
}
......
......@@ -1506,9 +1506,9 @@ void vp9_pack_bitstream(VP9_COMP *cpi, uint8_t *dest, unsigned long *size) {
*/
if (oh.type == KEY_FRAME) {
// Start / synch code
cx_data[0] = 0x9D;
cx_data[1] = 0x01;
cx_data[2] = 0x2a;
cx_data[0] = 0x49;
cx_data[1] = 0x83;
cx_data[2] = 0x42;
extra_bytes_packed = 3;
cx_data += extra_bytes_packed;
}
......
......@@ -217,7 +217,7 @@ static vpx_codec_err_t vp8_peek_si(const uint8_t *data,
else {
/* Parse uncompresssed part of key frame header.
* 3 bytes:- including version, frame type and an offset
* 3 bytes:- sync code (0x9d, 0x01, 0x2a)
* 3 bytes:- sync code (0x49, 0x83, 0x42)
* 4 bytes:- including image width and height in the lowest 14 bits
* of each 2-byte value.
*/
......@@ -228,7 +228,7 @@ static vpx_codec_err_t vp8_peek_si(const uint8_t *data,
si->is_kf = 1;
/* vet via sync code */
if (c[0] != 0x9d || c[1] != 0x01 || c[2] != 0x2a)
if (c[0] != 0x49 || c[1] != 0x83 || c[2] != 0x42)
res = VPX_CODEC_UNSUP_BITSTREAM;
si->w = (c[3] | (c[4] << 8));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment