[svn] / trunk / xvidcore / src / bitstream / bitstream.c Repository:
ViewVC logotype

Diff of /trunk/xvidcore/src/bitstream/bitstream.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1097, Mon Jul 28 12:29:07 2003 UTC revision 1098, Mon Jul 28 12:39:32 2003 UTC
# Line 1159  Line 1159 
1159          BitstreamPad(bs);          BitstreamPad(bs);
1160          BitstreamPutBits(bs, VISOBJ_START_CODE, 32);          BitstreamPutBits(bs, VISOBJ_START_CODE, 32);
1161          BitstreamPutBits(bs, 0, 1);             // is_visual_object_identifier          BitstreamPutBits(bs, 0, 1);             // is_visual_object_identifier
1162    
1163            /* Video type */
1164          BitstreamPutBits(bs, VISOBJ_TYPE_VIDEO, 4);             // visual_object_type          BitstreamPutBits(bs, VISOBJ_TYPE_VIDEO, 4);             // visual_object_type
1165            BitstreamPutBit(bs, 0); /* video_signal_type */
1166    
1167          // video object_start_code & vo_id          // video object_start_code & vo_id
1168          BitstreamPad(bs);          BitstreamPadAlways(bs); // next_start_code()
1169          BitstreamPutBits(bs, VIDOBJ_START_CODE|(vo_id&0x5), 32);          BitstreamPutBits(bs, VIDOBJ_START_CODE|(vo_id&0x5), 32);
1170    
1171          // video_object_layer_start_code & vol_id          // video_object_layer_start_code & vol_id
# Line 1180  Line 1183 
1183          {          {
1184                  BitstreamPutBit(bs, 1);         // is_object_layer_identified                  BitstreamPutBit(bs, 1);         // is_object_layer_identified
1185                  BitstreamPutBits(bs, vol_ver_id, 4);    // vol_ver_id == 2                  BitstreamPutBits(bs, vol_ver_id, 4);    // vol_ver_id == 2
1186                  BitstreamPutBits(bs, 4, 3); // vol_ver_priority (1==lowest, 7==highest) ??                  BitstreamPutBits(bs, 4, 3); // vol_ver_priority (1==highest, 7==lowest)
1187          }          }
1188    
1189          BitstreamPutBits(bs, 1, 4);     // aspect_ratio_info (1=1:1)          BitstreamPutBits(bs, 1, 4);     // aspect_ratio_info (1=1:1)
# Line 1276  Line 1279 
1279    
1280          BitstreamPutBit(bs, 0);         // scalability          BitstreamPutBit(bs, 0);         // scalability
1281    
1282            BitstreamPadAlways(bs); // next_start_code()
1283    
1284          /* fake divx5 id, to ensure compatibility with divx5 decoder */          /* fake divx5 id, to ensure compatibility with divx5 decoder */
1285  #define DIVX5_ID "DivX501b481p"  #define DIVX5_ID "DivX501b481p"
1286          if (pParam->max_bframes > 0 && (pParam->global & XVID_GLOBAL_PACKED)) {          if (pParam->max_bframes > 0 && (pParam->global & XVID_GLOBAL_PACKED)) {
# Line 1327  Line 1332 
1332    
1333          if (!vop_coded) {          if (!vop_coded) {
1334                  BitstreamPutBits(bs, 0, 1);                  BitstreamPutBits(bs, 0, 1);
1335    #if 0
1336                    BitstreamPadAlways(bs); /*  next_start_code() */
1337    #endif
1338                    /* NB: It's up to the function caller to write the next_start_code().
1339                     * At the moment encoder.c respects that requisite because a VOP
1340                     * always ends with a next_start_code either if it's coded or not
1341                     * and encoder.c terminates a frame with a next_start_code in whatever
1342                     * case */
1343                  return;                  return;
1344          }          }
1345    

Legend:
Removed from v.1097  
changed lines
  Added in v.1098

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4