Commit ce68167e authored by Christophe Massiot's avatar Christophe Massiot

suite du parseur.

parent 54f82a15
......@@ -105,6 +105,18 @@ typedef struct vpar_thread_s
#define SEQUENCE_END_CODE 0x1B7
#define GROUP_START_CODE 0x1B8
/* extension start code IDs */
#define SEQUENCE_EXTENSION_ID 1
#define SEQUENCE_DISPLAY_EXTENSION_ID 2
#define QUANT_MATRIX_EXTENSION_ID 3
#define COPYRIGHT_EXTENSION_ID 4
#define SEQUENCE_SCALABLE_EXTENSION_ID 5
#define PICTURE_DISPLAY_EXTENSION_ID 7
#define PICTURE_CODING_EXTENSION_ID 8
#define PICTURE_SPATIAL_SCALABLE_EXTENSION_ID 9
#define PICTURE_TEMPORAL_SCALABLE_EXTENSION_ID 10
/*******************************************************************************
* Prototypes
*******************************************************************************/
......
......@@ -383,7 +383,7 @@ static void SequenceHeader( vpar_thread_t * p_vpar )
*****************************************************************************/
static void GroupHeader( vpar_thread_t * p_vpar )
{
/* Nothing to do, we don't care */
/* Nothing to do, we don't care. */
DumpBits( &p_vpar->bit_stream, 27 );
ExtensionAndUserData( p_vpar );
}
......@@ -467,9 +467,57 @@ static void __inline__ ReferenceUpdate( vpar_thread_t * p_vpar,
*****************************************************************************/
static void ExtensionAndUserData( vpar_thread_t * p_vpar )
{
/* Nothing to do, we don't care. */
DumpBits( &p_vpar->bit_stream, 27 );
ExtensionAndUserData( p_vpar );
while( !p_vpar->b_die )
{
NextStartCode( p_vpar );
switch( ShowBits( &p_vpar->bit_stream, 32 ) )
{
case EXTENSION_START_CODE:
DumpBits32( &p_vpar->bit_stream );
switch( GetBits( &p_vpar->bit_stream, 4 ) )
{
case SEQUENCE_DISPLAY_EXTENSION_ID:
SequenceDisplayExtension( p_vpar );
break;
case QUANT_MATRIX_EXTENSION_ID:
QuantMatrixExtension( p_vpar );
break;
case SEQUENCE_SCALABLE_EXTENSION_ID:
SequenceScalableExtension( p_vpar );
break;
case PICTURE_DISPLAY_EXTENSION_ID:
PictureDisplayExtension( p_vpar );
break;
case PICTURE_SPATIAL_SCALABLE_EXTENSION_ID:
PictureSpatialScalableExtension( p_vpar );
break;
case PICTURE_TEMPORAL_SCALABLE_EXTENSION_ID:
PictureTemporalScalableExtension( p_vpar );
break;
case COPYRIGHT_EXTENSION_ID:
CopyrightExtension( p_vpar );
break;
default:
}
break;
case USER_DATA_START_CODE:
DumpBits32( &p_vpar->bit_stream );
/* Wait for the next start code */
break;
default:
return;
}
}
}
/*****************************************************************************
* SequenceDisplayExtension : Parse the sequence_display_extension structure
*****************************************************************************/
static void SequenceDisplayExtension( vpar_thread_t * p_vpar )
{
}
/*****************************************************************************
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment