Lines Matching defs:rps
120 ShortTermRPS *rps, const HEVCSPS *sps, int is_slice_header)
128 if (rps != sps->st_rps && sps->nb_st_rps)
147 rps->rps_idx_num_delta_pocs = rps_ridx->num_delta_pocs;
149 rps_ridx = &sps->st_rps[rps - sps->st_rps - 1];
161 int used = rps->used[k] = get_bits1(gb);
171 rps->delta_poc[k] = delta_poc;
178 if (k >= FF_ARRAY_ELEMS(rps->used)) {
184 rps->num_delta_pocs = k;
185 rps->num_negative_pics = k0;
187 if (rps->num_delta_pocs != 0) {
189 for (i = 1; i < rps->num_delta_pocs; i++) {
190 delta_poc = rps->delta_poc[i];
191 used = rps->used[i];
193 tmp = rps->delta_poc[k];
195 rps->delta_poc[k + 1] = tmp;
196 rps->used[k + 1] = rps->used[k];
197 rps->delta_poc[k] = delta_poc;
198 rps->used[k] = used;
203 if ((rps->num_negative_pics >> 1) != 0) {
205 k = rps->num_negative_pics - 1;
207 for (i = 0; i < rps->num_negative_pics >> 1; i++) {
208 delta_poc = rps->delta_poc[i];
209 used = rps->used[i];
210 rps->delta_poc[i] = rps->delta_poc[k];
211 rps->used[i] = rps->used[k];
212 rps->delta_poc[k] = delta_poc;
213 rps->used[k] = used;
219 rps->num_negative_pics = get_ue_golomb_long(gb);
222 if (rps->num_negative_pics >= HEVC_MAX_REFS ||
228 rps->num_delta_pocs = rps->num_negative_pics + nb_positive_pics;
229 if (rps->num_delta_pocs) {
231 for (i = 0; i < rps->num_negative_pics; i++) {
240 rps->delta_poc[i] = prev;
241 rps->used[i] = get_bits1(gb);
253 rps->delta_poc[rps->num_negative_pics + i] = prev;
254 rps->used[rps->num_negative_pics + i] = get_bits1(gb);