20 |
* along with this program ; if not, write to the Free Software |
* along with this program ; if not, write to the Free Software |
21 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
22 |
* |
* |
23 |
* $Id: bitstream.c,v 1.55 2005-11-22 10:23:01 suxen_drol Exp $ |
* $Id: bitstream.c,v 1.56 2006-03-27 11:21:48 Skal Exp $ |
24 |
* |
* |
25 |
****************************************************************************/ |
****************************************************************************/ |
26 |
|
|
423 |
DPRINTF(XVID_DEBUG_STARTCODE, "</visual_object_sequence>\n"); |
DPRINTF(XVID_DEBUG_STARTCODE, "</visual_object_sequence>\n"); |
424 |
|
|
425 |
} else if (start_code == VISOBJ_START_CODE) { |
} else if (start_code == VISOBJ_START_CODE) { |
|
int visobj_ver_id; |
|
426 |
|
|
427 |
DPRINTF(XVID_DEBUG_STARTCODE, "<visual_object>\n"); |
DPRINTF(XVID_DEBUG_STARTCODE, "<visual_object>\n"); |
428 |
|
|
429 |
BitstreamSkip(bs, 32); /* visual_object_start_code */ |
BitstreamSkip(bs, 32); /* visual_object_start_code */ |
430 |
if (BitstreamGetBit(bs)) /* is_visual_object_identified */ |
if (BitstreamGetBit(bs)) /* is_visual_object_identified */ |
431 |
{ |
{ |
432 |
visobj_ver_id = BitstreamGetBits(bs, 4); /* visual_object_ver_id */ |
dec->ver_id = BitstreamGetBits(bs, 4); /* visual_object_ver_id */ |
433 |
DPRINTF(XVID_DEBUG_HEADER,"visobj_ver_id %i\n", visobj_ver_id); |
DPRINTF(XVID_DEBUG_HEADER,"visobj_ver_id %i\n", dec->ver_id); |
434 |
BitstreamSkip(bs, 3); /* visual_object_priority */ |
BitstreamSkip(bs, 3); /* visual_object_priority */ |
435 |
} else { |
} else { |
436 |
visobj_ver_id = 1; |
dec->ver_id = 1; |
437 |
} |
} |
438 |
|
|
439 |
if (BitstreamShowBits(bs, 4) != VISOBJ_TYPE_VIDEO) /* visual_object_type */ |
if (BitstreamShowBits(bs, 4) != VISOBJ_TYPE_VIDEO) /* visual_object_type */ |
482 |
DPRINTF(XVID_DEBUG_HEADER,"ver_id %i\n", vol_ver_id); |
DPRINTF(XVID_DEBUG_HEADER,"ver_id %i\n", vol_ver_id); |
483 |
BitstreamSkip(bs, 3); /* video_object_layer_priority */ |
BitstreamSkip(bs, 3); /* video_object_layer_priority */ |
484 |
} else { |
} else { |
485 |
vol_ver_id = 1; |
vol_ver_id = dec->ver_id; |
486 |
} |
} |
487 |
|
|
488 |
dec->aspect_ratio = BitstreamGetBits(bs, 4); |
dec->aspect_ratio = BitstreamGetBits(bs, 4); |