Lines Matching refs:ctx
22 MPP_RET mpp_writer_status(MppWriteCtx *ctx) in mpp_writer_status() argument
24 if (ctx->byte_cnt > ctx->size) { in mpp_writer_status()
25 ctx->overflow = 1; in mpp_writer_status()
32 MPP_RET mpp_writer_reset(MppWriteCtx *ctx) in mpp_writer_reset() argument
34 ctx->stream = ctx->buffer; in mpp_writer_reset()
35 ctx->byte_cnt = 0; in mpp_writer_reset()
36 ctx->byte_buffer = 0; in mpp_writer_reset()
37 ctx->buffered_bits = 0; in mpp_writer_reset()
38 ctx->zero_bytes = 0; in mpp_writer_reset()
39 ctx->overflow = 0; in mpp_writer_reset()
40 ctx->emul_cnt = 0; in mpp_writer_reset()
45 MPP_RET mpp_writer_init(MppWriteCtx *ctx, void *p, RK_S32 size) in mpp_writer_init() argument
49 ctx->buffer = p; in mpp_writer_init()
50 ctx->stream = p; in mpp_writer_init()
51 ctx->size = size; in mpp_writer_init()
52 ctx->byte_cnt = 0; in mpp_writer_init()
53 ctx->overflow = 0; in mpp_writer_init()
54 ctx->byte_buffer = 0; in mpp_writer_init()
55 ctx->buffered_bits = 0; in mpp_writer_init()
56 ctx->zero_bytes = 0; in mpp_writer_init()
57 ctx->emul_cnt = 0; in mpp_writer_init()
59 ret = mpp_writer_status(ctx); in mpp_writer_init()
66 void mpp_writer_put_raw_bits(MppWriteCtx *ctx, RK_S32 val, RK_S32 len) in mpp_writer_put_raw_bits() argument
69 RK_U32 byte_buffer = ctx->byte_buffer; in mpp_writer_put_raw_bits()
70 RK_U8*stream = ctx->stream; in mpp_writer_put_raw_bits()
72 if (mpp_writer_status(ctx)) in mpp_writer_put_raw_bits()
78 bits = len + ctx->buffered_bits; in mpp_writer_put_raw_bits()
88 ctx->byte_cnt++; in mpp_writer_put_raw_bits()
91 ctx->byte_buffer = byte_buffer; in mpp_writer_put_raw_bits()
92 ctx->buffered_bits = (RK_U8)bits; in mpp_writer_put_raw_bits()
93 ctx->stream = stream; in mpp_writer_put_raw_bits()
98 void mpp_writer_flush(MppWriteCtx *ctx) in mpp_writer_flush() argument
100 RK_U32 byte_buffer = ctx->byte_buffer; in mpp_writer_flush()
101 RK_U8*stream = ctx->stream; in mpp_writer_flush()
103 if (mpp_writer_status(ctx)) in mpp_writer_flush()
106 if (ctx->buffered_bits) in mpp_writer_flush()
112 void mpp_writer_put_bits(MppWriteCtx * ctx, RK_S32 val, RK_S32 len) in mpp_writer_put_bits() argument
115 RK_U8 *stream = ctx->stream; in mpp_writer_put_bits()
116 RK_U32 byte_buffer = ctx->byte_buffer; in mpp_writer_put_bits()
122 bits = len + ctx->buffered_bits; in mpp_writer_put_bits()
127 RK_S32 zeroBytes = ctx->zero_bytes; in mpp_writer_put_bits()
128 RK_S32 byteCnt = ctx->byte_cnt; in mpp_writer_put_bits()
130 if (mpp_writer_status(ctx)) in mpp_writer_put_bits()
141 ctx->emul_cnt++; in mpp_writer_put_bits()
152 ctx->zero_bytes = zeroBytes; in mpp_writer_put_bits()
153 ctx->byte_cnt = byteCnt; in mpp_writer_put_bits()
154 ctx->stream = stream; in mpp_writer_put_bits()
157 ctx->buffered_bits = (RK_U8) bits; in mpp_writer_put_bits()
158 ctx->byte_buffer = byte_buffer; in mpp_writer_put_bits()
161 void mpp_writer_align_zero(MppWriteCtx *ctx) in mpp_writer_align_zero() argument
163 if (ctx->buffered_bits) in mpp_writer_align_zero()
164 mpp_writer_put_raw_bits(ctx, 0, 8 - ctx->buffered_bits); in mpp_writer_align_zero()
167 void mpp_writer_align_one(MppWriteCtx *ctx) in mpp_writer_align_one() argument
169 if (ctx->buffered_bits) { in mpp_writer_align_one()
170 RK_S32 len = 8 - ctx->buffered_bits; in mpp_writer_align_one()
172 mpp_writer_put_raw_bits(ctx, (1 << len) - 1, len); in mpp_writer_align_one()
176 void mpp_writer_trailing(MppWriteCtx *ctx) in mpp_writer_trailing() argument
178 mpp_writer_put_bits(ctx, 1, 1); in mpp_writer_trailing()
179 if (ctx->buffered_bits) in mpp_writer_trailing()
180 mpp_writer_put_bits(ctx, 0, 8 - ctx->buffered_bits); in mpp_writer_trailing()
183 void mpp_writer_put_ue(MppWriteCtx *ctx, RK_U32 val) in mpp_writer_put_ue() argument
197 mpp_writer_put_bits(ctx, 0, 24); in mpp_writer_put_ue()
200 mpp_writer_put_bits(ctx, 0, tmp); in mpp_writer_put_ue()
204 mpp_writer_put_bits(ctx, val >> num_bits, 24); in mpp_writer_put_ue()
208 mpp_writer_put_bits(ctx, val, num_bits); in mpp_writer_put_ue()
210 mpp_writer_put_bits(ctx, val, 2 * num_bits - 1); in mpp_writer_put_ue()
214 void mpp_writer_put_se(MppWriteCtx *ctx, RK_S32 val) in mpp_writer_put_se() argument
223 mpp_writer_put_ue(ctx, tmp); in mpp_writer_put_se()
226 RK_S32 mpp_writer_bytes(MppWriteCtx *ctx) in mpp_writer_bytes() argument
228 return ctx->byte_cnt + (ctx->buffered_bits > 0); in mpp_writer_bytes()
231 RK_S32 mpp_writer_bits(MppWriteCtx *ctx) in mpp_writer_bits() argument
233 return ctx->byte_cnt * 8 + ctx->buffered_bits; in mpp_writer_bits()