diff --git a/src_base/xeve_eco.c b/src_base/xeve_eco.c index 36b89fd..fee3ef7 100644 --- a/src_base/xeve_eco.c +++ b/src_base/xeve_eco.c @@ -202,6 +202,7 @@ int xeve_eco_sps(XEVE_BSW *bs, XEVE_SPS *sps) } u32 t0 = 0; + xeve_bsw_write1(bs, 1); while(!XEVE_BSW_IS_BYTE_ALIGN(bs)) { xeve_bsw_write1(bs, t0); } @@ -235,6 +236,7 @@ int xeve_eco_pps(XEVE_BSW *bs, XEVE_SPS *sps, XEVE_PPS *pps) xeve_bsw_write_ue(bs, pps->cu_qp_delta_area - 6); } u32 t0 = 0; + xeve_bsw_write1(bs, 1); while(!XEVE_BSW_IS_BYTE_ALIGN(bs)) { xeve_bsw_write1(bs, t0); } @@ -331,7 +333,7 @@ static void write_sei_userdata_unregistered(XEVE_SEI_PAYLOAD *sei_userdata, XEVE xeve_bsw_write(bs, 0xff, 8); xeve_bsw_write(bs, payload_type, 8); - u32 payload_size = (ISO_IEC_11578_LEN + sei_userdata->payload_size) << 3; + u32 payload_size = ISO_IEC_11578_LEN + sei_userdata->payload_size; for(; payload_size >= 0xff; payload_size -= 0xff) xeve_bsw_write(bs, 0xff, 8); xeve_bsw_write(bs, payload_size, 8); @@ -368,6 +370,7 @@ int xeve_eco_emitsei(XEVE_CTX *ctx, XEVE_BSW *bs) write_sei_userdata_unregistered(&sei_userdata_unregistered, bs); } + xeve_bsw_write1(bs, 1); while(!XEVE_BSW_IS_BYTE_ALIGN(bs)) { xeve_bsw_write1(bs, 0); } @@ -382,6 +385,7 @@ int xeve_eco_sei(XEVE_CTX *ctx, XEVE_BSW *bs) xeve_eco_signature(ctx, bs); } + xeve_bsw_write1(bs, 1); while(!XEVE_BSW_IS_BYTE_ALIGN(bs)) { xeve_bsw_write1(bs, 0); } diff --git a/src_main/xevem_eco.c b/src_main/xevem_eco.c index 228c0de..eccf2c4 100644 --- a/src_main/xevem_eco.c +++ b/src_main/xevem_eco.c @@ -263,6 +263,7 @@ int xevem_eco_aps_gen(XEVE_BSW *bs, XEVE_APS_GEN *aps, int bit_depth) assert(aps_extension_flag == 0); u32 t0 = 0; + xeve_bsw_write1(bs, 1); while(!XEVE_BSW_IS_BYTE_ALIGN(bs)) { xeve_bsw_write1(bs, t0); } @@ -423,6 +424,7 @@ int xevem_eco_sps(XEVE_BSW *bs, XEVE_SPS *sps) } u32 t0 = 0; + xeve_bsw_write1(bs, 1); while(!XEVE_BSW_IS_BYTE_ALIGN(bs)) { xeve_bsw_write1(bs, t0); } @@ -486,6 +488,7 @@ int xevem_eco_pps(XEVE_BSW *bs, XEVE_SPS *sps, XEVE_PPS *pps) xeve_bsw_write_ue(bs, pps->cu_qp_delta_area - 6); } u32 t0 = 0; + xeve_bsw_write1(bs, 1); while(!XEVE_BSW_IS_BYTE_ALIGN(bs)) { xeve_bsw_write1(bs, t0); }