Lines Matching refs:gb

34 static int pcx_rle_decode(GetByteContext *gb,
42 if (bytestream2_get_bytes_left(gb) < 1)
46 while (i < bytes_per_scanline && bytestream2_get_bytes_left(gb)>0) {
48 value = bytestream2_get_byte(gb);
49 if (value >= 0xc0 && bytestream2_get_bytes_left(gb)>0) {
51 value = bytestream2_get_byte(gb);
57 bytestream2_get_buffer(gb, dst, bytes_per_scanline);
62 static void pcx_palette(GetByteContext *gb, uint32_t *dst, int pallen)
66 pallen = FFMIN(pallen, bytestream2_get_bytes_left(gb) / 3);
68 *dst++ = 0xFF000000 | bytestream2_get_be24u(gb);
76 GetByteContext gb;
88 bytestream2_init(&gb, avpkt->data, avpkt->size);
90 if (bytestream2_get_byteu(&gb) != 0x0a || bytestream2_get_byteu(&gb) > 5) {
95 compressed = bytestream2_get_byteu(&gb);
96 bits_per_pixel = bytestream2_get_byteu(&gb);
97 xmin = bytestream2_get_le16u(&gb);
98 ymin = bytestream2_get_le16u(&gb);
99 xmax = bytestream2_get_le16u(&gb);
100 ymax = bytestream2_get_le16u(&gb);
101 avctx->sample_aspect_ratio.num = bytestream2_get_le16u(&gb);
102 avctx->sample_aspect_ratio.den = bytestream2_get_le16u(&gb);
112 bytestream2_skipu(&gb, 49);
113 nplanes = bytestream2_get_byteu(&gb);
114 bytes_per_line = bytestream2_get_le16u(&gb);
118 (!compressed && bytes_per_scanline > bytestream2_get_bytes_left(&gb) / h)) {
141 bytestream2_skipu(&gb, 60);
160 ret = pcx_rle_decode(&gb, scanline, bytes_per_scanline, compressed);
183 ret = pcx_rle_decode(&gb, scanline, bytes_per_scanline, compressed);
189 if (bytestream2_tell(&gb) != palstart) {
191 bytestream2_seek(&gb, palstart, SEEK_SET);
193 if (bytestream2_get_byte(&gb) != 12) {
205 ret = pcx_rle_decode(&gb, scanline, bytes_per_scanline, compressed);
217 ret = pcx_rle_decode(&gb, scanline, bytes_per_scanline, compressed);
233 ret = bytestream2_tell(&gb);
235 pcx_palette(&gb, (uint32_t *)p->data[1], 256);
241 bytestream2_seek(&gb, 16, SEEK_SET);
242 pcx_palette(&gb, (uint32_t *)p->data[1], 16);