• Home
  • Raw
  • Download

Lines Matching refs:region

224 delete_region_display_list (DvbSub * dvb_sub, DVBSubRegion * region)  in delete_region_display_list()  argument
230 while (region->display_list) { in delete_region_display_list()
231 display = region->display_list; in delete_region_display_list()
264 region->display_list = display->region_list_next; in delete_region_display_list()
273 DVBSubRegion *region; in delete_state() local
276 region = dvb_sub->region_list; in delete_state()
278 dvb_sub->region_list = region->next; in delete_state()
280 delete_region_display_list (dvb_sub, region); in delete_state()
281 g_free (region->pbuf); in delete_state()
283 g_slice_free (DVBSubRegion, region); in delete_state()
448 DVBSubRegion *region; in _dvb_sub_parse_region_segment() local
458 region = get_region (dvb_sub, region_id); in _dvb_sub_parse_region_segment()
460 if (!region) { /* Create a new region */ in _dvb_sub_parse_region_segment()
461 region = g_slice_new0 (DVBSubRegion); in _dvb_sub_parse_region_segment()
462 region->id = region_id; in _dvb_sub_parse_region_segment()
463 region->next = dvb_sub->region_list; in _dvb_sub_parse_region_segment()
464 dvb_sub->region_list = region; in _dvb_sub_parse_region_segment()
469 region->width = GST_READ_UINT16_BE (buf); in _dvb_sub_parse_region_segment()
471 region->height = GST_READ_UINT16_BE (buf); in _dvb_sub_parse_region_segment()
474 …if (region->width * region->height != region->buf_size) { /* FIXME: Read closer from spec what… in _dvb_sub_parse_region_segment()
475 g_free (region->pbuf); in _dvb_sub_parse_region_segment()
477 region->buf_size = region->width * region->height; in _dvb_sub_parse_region_segment()
479region->pbuf = g_malloc (region->buf_size); /* TODO: We can probably use GSlice here if careful ab… in _dvb_sub_parse_region_segment()
484 region->depth = 1 << (((*buf++) >> 2) & 7); in _dvb_sub_parse_region_segment()
485 if (region->depth < 2 || region->depth > 8) { in _dvb_sub_parse_region_segment()
486 GST_WARNING ("region depth %d is invalid", region->depth); in _dvb_sub_parse_region_segment()
487 region->depth = 4; /* FIXME: Check from spec this is the default? */ in _dvb_sub_parse_region_segment()
490 region->clut = *buf++; in _dvb_sub_parse_region_segment()
492 if (region->depth == 8) { in _dvb_sub_parse_region_segment()
493 region->bgcolor = *buf++; in _dvb_sub_parse_region_segment()
498 if (region->depth == 4) in _dvb_sub_parse_region_segment()
499 region->bgcolor = (((*buf++) >> 4) & 15); in _dvb_sub_parse_region_segment()
501 region->bgcolor = (((*buf++) >> 2) & 3); in _dvb_sub_parse_region_segment()
504 GST_DEBUG ("REGION: id = %u, (%ux%u)@%u-bit", region_id, region->width, in _dvb_sub_parse_region_segment()
505 region->height, region->depth); in _dvb_sub_parse_region_segment()
508 memset (region->pbuf, region->bgcolor, region->buf_size); in _dvb_sub_parse_region_segment()
509 GST_DEBUG ("REGION: filling region (%u) with bgcolor = %u", region->id, in _dvb_sub_parse_region_segment()
510 region->bgcolor); in _dvb_sub_parse_region_segment()
513 …delete_region_display_list (dvb_sub, region); /* Delete the region display list for current region… in _dvb_sub_parse_region_segment()
547 object_display->region_list_next = region->display_list; in _dvb_sub_parse_region_segment()
548 region->display_list = object_display; in _dvb_sub_parse_region_segment()
554 "obj_type = %u", object->id, region->id, object_display->x_pos, in _dvb_sub_parse_region_segment()
914 DVBSubRegion *region = get_region (dvb_sub, display->region_id); in _dvb_sub_parse_pixel_data_block() local
933 if (region == NULL) { in _dvb_sub_parse_pixel_data_block()
938 pbuf = region->pbuf; in _dvb_sub_parse_pixel_data_block()
950 region->id, region->width, region->height, x_pos, y_pos); in _dvb_sub_parse_pixel_data_block()
957 if (y_pos >= region->height) { in _dvb_sub_parse_pixel_data_block()
972 if (region->depth == 8) in _dvb_sub_parse_pixel_data_block()
974 else if (region->depth == 4) in _dvb_sub_parse_pixel_data_block()
982 _dvb_sub_read_2bit_string (pbuf + (y_pos * region->width) + x_pos, in _dvb_sub_parse_pixel_data_block()
983 region->width - x_pos, &buf, buf_end - buf, non_mod, map_table); in _dvb_sub_parse_pixel_data_block()
995 if (region->depth < 4) { in _dvb_sub_parse_pixel_data_block()
996 GST_WARNING ("4-bit pixel string in %d-bit region!", region->depth); in _dvb_sub_parse_pixel_data_block()
1000 if (region->depth == 8) in _dvb_sub_parse_pixel_data_block()
1010 _dvb_sub_read_4bit_string (pbuf + (y_pos * region->width) + x_pos, in _dvb_sub_parse_pixel_data_block()
1011 region->width - x_pos, &buf, buf_end - buf, non_mod, map_table); in _dvb_sub_parse_pixel_data_block()
1024 if (region->depth < 8) { in _dvb_sub_parse_pixel_data_block()
1025 GST_WARNING ("8-bit pixel string in %d-bit region!", region->depth); in _dvb_sub_parse_pixel_data_block()
1031 _dvb_sub_read_8bit_string (pbuf + (y_pos * region->width) + x_pos, in _dvb_sub_parse_pixel_data_block()
1032 region->width - x_pos, &buf, buf_end - buf, non_mod, NULL); in _dvb_sub_parse_pixel_data_block()
1216 DVBSubRegion *region; in _dvb_sub_parse_end_of_display_set() local
1218 region = get_region (dvb_sub, display->region_id); in _dvb_sub_parse_end_of_display_set()
1220 if (!region) in _dvb_sub_parse_end_of_display_set()
1226 rect->w = region->width; in _dvb_sub_parse_end_of_display_set()
1227 rect->h = region->height; in _dvb_sub_parse_end_of_display_set()
1234 rect->pict.rowstride = region->width; in _dvb_sub_parse_end_of_display_set()
1235 rect->pict.palette_bits_count = region->depth; in _dvb_sub_parse_end_of_display_set()
1237 clut = get_clut (dvb_sub, region->clut); in _dvb_sub_parse_end_of_display_set()
1242 switch (region->depth) { in _dvb_sub_parse_end_of_display_set()
1257 …rect->pict.palette = g_malloc ((1 << region->depth) * sizeof (guint32)); /* FIXME: Can we use G… in _dvb_sub_parse_end_of_display_set()
1259 (1 << region->depth) * sizeof (guint32)); in _dvb_sub_parse_end_of_display_set()
1262 (guint8 *) rect->pict.palette, (1 << region->depth) * sizeof (guint32)); in _dvb_sub_parse_end_of_display_set()
1264 rect->pict.data = g_malloc (region->buf_size); /* FIXME: Can we use GSlice here? */ in _dvb_sub_parse_end_of_display_set()
1265 memcpy (rect->pict.data, region->pbuf, region->buf_size); in _dvb_sub_parse_end_of_display_set()
1270 GST_MEMDUMP ("rect->pict.data content", rect->pict.data, region->buf_size); in _dvb_sub_parse_end_of_display_set()