static int decode_studiovisualobject(Mpeg4DecContext *ctx, GetBitContext *gb)
{
- uint32_t startcode;
MpegEncContext *s = &ctx->m;
int visual_object_type, width, height;
- startcode = get_bits_long(gb, 32);
-
- /* StudioVisualObject() */
- if (startcode == VISUAL_OBJ_STARTCODE) {
skip_bits(gb, 4); /* visual_object_verid */
visual_object_type = get_bits(gb, 4);
next_start_code_studio(gb);
extension_and_user_data(s, gb, 2);
}
- }
return 0;
}
s->studio_profile = 1;
next_start_code_studio(gb);
extension_and_user_data(s, gb, 0);
-
+ }
+ } else if (startcode == VISUAL_OBJ_STARTCODE) {
+ if (s->studio_profile) {
if ((ret = decode_studiovisualobject(ctx, gb)) < 0)
return ret;
break;
- }
- } else if (startcode == VISUAL_OBJ_STARTCODE) {
- mpeg4_decode_visual_object(s, gb);
+ } else
+ mpeg4_decode_visual_object(s, gb);
} else if (startcode == VOP_STARTCODE) {
break;
}