Exemplo n.º 1
0
 void ProcessMetadataVorbisComment( int len, PrimitiveReader reader )
 {
     int bytesRead = 0;
     reader.BigEndian = false;
     while( bytesRead < len ) {
         int vendorLength = reader.ReadInt32();
         string vendor = reader.ReadUTF8String( vendorLength );
         bytesRead += 4 + vendorLength;
         uint commentsCount = reader.ReadUInt32();
         bytesRead += 4;
         for( uint i = 0; i < commentsCount; i++ ) {
             int commentLength = reader.ReadInt32();
             string comment = reader.ReadUTF8String( commentLength );
             bytesRead += 4 + commentLength;
         }
     }
     reader.BigEndian = true;
 }
Exemplo n.º 2
0
 void ProcessMetadataPicture( int len, PrimitiveReader reader )
 {
     uint type = reader.ReadUInt32();
     PictureType pictureType = (PictureType)type;
     int mimeTypeLength = reader.ReadInt32();
     string mimeType = reader.ReadASCIIString( mimeTypeLength );
     int descriptionLength = reader.ReadInt32();
     string description = reader.ReadUTF8String( descriptionLength );
     int width = reader.ReadInt32();
     int height = reader.ReadInt32();
     int colourDepth = reader.ReadInt32(); // Bits per pixel.
     int indexedColoursUsed = reader.ReadInt32();
     int picturelength = reader.ReadInt32();
     byte[] data = reader.ReadBytes( picturelength );
 }