mmserv/metadatautility/Src/3GPExtParser.h
branchRCL_3
changeset 19 095bea5f582e
parent 18 a36789189b53
child 20 0ac9a5310753
equal deleted inserted replaced
18:a36789189b53 19:095bea5f582e
    25 #include <mp4lib.h>
    25 #include <mp4lib.h>
    26 
    26 
    27 #include "MetaDataFieldContainer.h"
    27 #include "MetaDataFieldContainer.h"
    28 #include "MetaDataField.hrh"
    28 #include "MetaDataField.hrh"
    29 
    29 
       
    30 // CONSTANTS
       
    31 
       
    32 _LIT8 (K3GPExtMetaTitleFormat, "%cnam"); 
       
    33 _LIT8 (K3GPExtMetaArtistFormat, "%cART"); 
       
    34 _LIT8 (K3GPExtMetaComposerFormat, "%cwrt"); 
       
    35 _LIT8 (K3GPExtMetaAlbumFormat, "%calb"); 
       
    36 _LIT8 (K3GPExtMetaCommentFormat, "%ccmt"); 
       
    37 _LIT8 (K3GPExtMetaCustomGenreFormat, "%cgen");  // mapped to rating
       
    38 _LIT8 (K3GPExtMetaYearFormat, "%cday"); 
       
    39 _LIT8 (K3GPExtMetaGenre, "gnre");
       
    40 _LIT8 (K3GPExtMetaTrack, "trkn"); 
       
    41 _LIT8 (K3GPExtMetaJpeg, "covr"); 
       
    42 
    30 
    43 
    31 // CLASS DECLARATION
    44 // CLASS DECLARATION
    32 
    45 
    33 /**
    46 /**
    34 *  This class implements an 3GPExt metadata parser.
    47 *  This class implements an 3GPExt metadata parser.
    52         IMPORT_C virtual ~C3GPExtParser();
    65         IMPORT_C virtual ~C3GPExtParser();
    53         
    66         
    54         /**
    67         /**
    55 		* Extract meta data boxes from ilst
    68 		* Extract meta data boxes from ilst
    56 		* @since 3.0
    69 		* @since 3.0
       
    70 		* @param aBox wanted metadata box
    57         * @param aFieldId metadata field in 3GPExtParser
    71         * @param aFieldId metadata field in 3GPExtParser
    58 		* @return void
    72 		* @return void
    59 		*/
    73 		*/
    60 		IMPORT_C void GetilstBoxesL(TMetaDataFieldId aFieldId, HBufC** aBuf);
    74 		IMPORT_C void GetilstBoxesL(const TDesC8& aBox, TMetaDataFieldId aFieldId, HBufC** aBuf);
    61 		/**
    75 		/**
    62 		* Extract meta data boxes from ilst
    76 		* Extract meta data boxes from ilst
    63 		* 8-bit version to support international languages in string metadata
    77 		* 8-bit version to support international languages in string metadata
    64 		* @since 3.1
    78 		* @since 3.1
       
    79 		* @param aBox wanted metadata box
    65         * @param aFieldId metadata field in 3GPExtParser
    80         * @param aFieldId metadata field in 3GPExtParser
    66 		* @return void
    81 		* @return void
    67 		*/
    82 		*/
    68 		IMPORT_C void GetilstBoxesL(TMetaDataFieldId aFieldId, HBufC8** aBuf);
    83 		IMPORT_C void GetilstBoxesL(const TDesC8& aBox, TMetaDataFieldId aFieldId, HBufC8** aBuf);
    69 				
    84 				
    70 		/** 
    85 		/** 
    71 		* Checks if file has 3GPExt metadata
    86 		* Checks if file has 3GPExt metadata
    72 		*/ 
    87 		*/ 
    73 		IMPORT_C TBool Is3GPExtMetadataL();
    88 		IMPORT_C TBool Is3GPExtMetadataL();
   141  		TUint32 iGenreSize;
   156  		TUint32 iGenreSize;
   142  		TUint32 iTrackNumberOffset;
   157  		TUint32 iTrackNumberOffset;
   143  		TUint32 iTrackNumberSize;
   158  		TUint32 iTrackNumberSize;
   144  		TUint32 iCoverOffset;
   159  		TUint32 iCoverOffset;
   145  		TUint32 iCoverSize;
   160  		TUint32 iCoverSize;
   146  		
   161         TUint32 iAlbumArtistOffset;  
       
   162         TUint32 iAlbumArtistSize;
       
   163         
   147  	public:
   164  	public:
   148  				// constants
   165  				// constants
   149 		TBuf8<4> K3GPExtMetaTitle;
   166 		TBuf8<4> K3GPExtMetaTitle;
   150 		TBuf8<4> K3GPExtMetaArtist;
   167 		TBuf8<4> K3GPExtMetaArtist;
   151 		TBuf8<4> K3GPExtMetaComposer;
   168 		TBuf8<4> K3GPExtMetaComposer;