Haven't I already reviewed these?
Or is this a case of the mailing list delaying or
duplicating
your email?
Eric
> -----Original Message-----
> From: ribosome-dev-bounces helixcommunity.org
> [mailto:ribosome-dev-bounces helixcommunity.org] On
Behalf Of
> Ashish.As.Gupta nokia.com
> Sent: Monday, September 18, 2006 4:53 PM
> To: client-dev helixcommunity.org;
> common-dev helixcommunity.org;
> datatype-dev helixcommunity.org; ribosome-dev helixcommunity.org
> Subject: [Ribosome-dev] CR:metadata engine - part I
>
> Note: this part only contains the diff files.
>
> Metadata engine based on dtdriver
>
> "Nokia submits this code under the terms of a
commercial
> contribution agreement
> with RealNetworks, and I am authorized to contribute
this
> code under said agreement."
>
> Modified by: ashish.as.gupta nokia.com
>
> Reviewed by:
>
> Date: 09-13-2006.
>
> Error ID: Req Id: 102-4619
>
> Project: Helix plugin for Symbian
>
> Synopsis: Metadata engine based on dtdriver
>
> This CR includes following components/modules
>
> CHXMetadatautility: A simple utility to open a
datasource
> (file name, descriptor, RFile). API is defined in
> hxmetadatautil.h. It provides the simple API to read
the
> metadata. It is delivered as part of
hxmetadatautil.lib.
> CHXMetaDatautility is the only component that is
exported
> from the Helix.
>
> CHXMetaDataEngBase:: Base class for metadata engine. It
> interfaces with DTDRiver and implements
IHXSourceHandler interface.
>
> CHXMetaDataEng:: Derived from CHXMetaDataEngBase,
generic
> (non-symbian specific) metadata engine.
>
> CHXSymbianMetaDataEng:: Derived from
CHXMetaDataEngBase,
> symbian specific metadata engine.
>
> Changes to DTDriver:
> ----------------------------
>
> 1. Use of recognizer for the determining the mime type.
> Following new states are added.
> State_RecognizeFormat,
> State_RecognizeFormatDone,
> State_RecognizeFormatPending,
>
> 2. non const data removed from the dll.
>
> 3. All the calls to logging functions (e.g.
ReportError) are
> replaced with the corresponding newly added macros
(e.g.
> DT_REPORTERROR). A new config is added
>
> HELIX_CONFIG_DTDR_DISABLE_LOGGING. This compiles out
all the
> logging. Saves about 5KB image size.
>
> 4. An option FILERECOGNITION_OPTION_NAME is added. This
> triggers the call to recognition.
>
> 5. Minicntx allows prefs to be overridden.
>
> 6. Minicntx QIs for IHXRequestContext. If successful,
it QIs
> for requester object using
IHXRequestContext::GetRequester.
> This requester is passed to
>
> CHXRequest object in SetRequester call.
>
> 7. Other changes to compile minicntx, dtdriver on
symbian.
>
> Changes to common/fileio.
>
> 1. A datasource factory has been added to create the
> datasources (implements IHXMMFDataSource).
> CHXDataSourceMMFClip, CHXDataSourceCContent,
> CHXDataSourceDescriptor are the datasources defined.
> CHXDataSource implements the base class functionality.
>
> 2. CHXDataSourceCContent uses CAF for supporting the
DRM
> content. CHXDataSourceDescriptor provides the support
to read
> the media data from descriptors.
>
> 3. CHXMediaSource, a struct, passed to
CHXDataSourceFactory
> to create the desired data source object. This enables
the
> metadata APIs to be kept platform independent.
>
>
> Additions to IHXMMFDataSource API.
> ------------------------------------------------------
>
> Following new methods are added to IHXMMFDataSource API
to
> support DCF headers for protected contents.
>
> STDMETHOD(GetStringAttribute)(THIS_ UINT32 ulAttibute,
> CHXString &sValue) PURE;
> STDMETHOD(GetAttribute)(THIS_ INT32 ulAttribute,
> INT32 &ulValue) PURE;
>
> STDMETHOD(GetSize) (THIS_ UINT32 &ulSize) PURE;
>
> Changes to Symbian Recognizer:
> ----------------------------------------------
>
> Symbian recognizer has been changed so that it doesn't
call
> the system recognizer when it is used as part of the
metadata
> engine that could result
>
> in infinite loop when metadata engine itself is used
from the
> system recognizer.
>
> Metadata Engine.
> ------------------------
>
> Metadata engine depends on the dtdriver for reading the
> metadata. A symbian specific utility is provided to
read the
> metadata from the metadata engine.
>
> Metadata engine receives the file header and stream
headers
> from FFDriver and stores them in the m_MetadataList.
> CHXMetaDataEntry represents one single
>
> metadata entry. Entries can be read by the caller by
Calling
> CHXMetaDataEngBase::GetMetaDataAt.
>
> Symbian metadata engine performs setup that includes
global
> manager, symbian dll map, MiniCCF, Prefs, Global Access
Paths.
>
>
> Testing:
>
> Tests were performed on ARMV5 and CW for RFile,
filename and
> descriptor based metadata reading. Real and 3GPP
contents were used.
>
> DRM protected files have also been tested. TestRMPlayer
has
> been modified to include a new option for testing the
metadata.
>
> Memory leak testing has been done for MediaPlayer and
CW has
> been used to make sure that all the objects are
destroyed.
>
>
> Files Modified:
>
> datatype/tools/dtdriver/common/reporterror.cpp
> datatype/tools/dtdriver/common/pub/reporterror.h
> datatype/tools/dtdriver/engine/Umakefil
> datatype/tools/dtdriver/engine/csrchdlrstackfact.cpp
> datatype/tools/dtdriver/engine/ffdriver.cpp
> datatype/tools/dtdriver/engine/pub/ffdriver.h
> datatype/tools/minicntx/minicntx.cpp
> datatype/tools/minicntx/pub/minicntx.h
>
> common/fileio/symbian.pcf
> common/fileio/platform/symbian/hxdatasourcemmfclip.cpp
>
common/fileio/pub/platform/symbian/hxdatasourcemmfclip.h
>
> common/system/symbian.pcf
> common/system/pub/recognizer.h
> common/system/recognizer.cpp
> common/system/platform/symbian/symbianrecognizer.cpp
>
> build/umakepf/helix-client-s60-32-common.pfi
>
> client/build/BIF/hxclient_2_1_0_cayennes.bif
> common/build/BIF/helix.bif
>
> clientapps/symbianMmf/videocontroller/installMmf.pcf
>
> Files Added:
>
> common/fileio/pub/hxmediasource.h.
>
>
common/fileio/pub/platform/symbian/hxdatasource_factory.h
> common/fileio/pub/platform/symbian/hxdatasource.h
>
common/fileio/pub/platform/symbian/hxdatasource_descriptor.h
>
common/fileio/pub/platform/symbian/hxdatasource_ccontent.h
>
> common/fileio/platform/symbian/hxdatasource_factory.cpp
> common/fileio/platform/symbian/hxdatasource.cpp
>
common/fileio/platform/symbian/hxdatasource_descriptor.cpp
>
common/fileio/platform/symbian/hxdatasource_ccontent.cpp
>
> datatype/tools/metadataeng/engine/
> datatype/tools/metadataeng/Umakefil
> datatype/tools/metadataeng/engine/symbian.pcf
> datatype/tools/metadataeng/engine/dlliids.cpp
> datatype/tools/metadataeng/engine/hxdll.cpp
> datatype/tools/metadataeng/engine/hxmetadataeng.uid.cpp
> datatype/tools/metadataeng/engine/metadataeng.cpp
> datatype/tools/metadataeng/engine/metadataengbase.cpp
> datatype/tools/metadataeng/engine/hxdll.h
> datatype/tools/metadataeng/engine/metadataeng.h
> datatype/tools/metadataeng/engine/pub/metadataengbase.h
> datatype/tools/metadataeng/engine/pub/hxmetadatalog.h
>
datatype/tools/metadataeng/engine/pub/platform/symbian/symbi
an
> _metadataeng.h
>
datatype/tools/metadataeng/engine/platform/symbian/symbian_m
et
> adataeng.cpp
>
datatype/tools/metadataeng/engine/platform/symbian/hxmddefin
es.h
>
>
datatype/tools/metadataeng/engine/platform/symbian/hxmetadat
a_
> dlls.txt Dlls to be loaded by plugin manager.
> datatype/tools/metadataeng/common/pub/hxmetadata.h
> CHXMetaDataEntry.
> datatype/tools/metadataeng/common/pub/hxmetadatakeys.h
> enums for metadata.
> datatype/tools/metadataeng/utility/Umakefil
> datatype/tools/metadataeng/utility/symbian.pcf
>
datatype/tools/metadataeng/utility/platform/symbian/hxmetada
ta
> util.cpp
>
datatype/tools/metadataeng/utility/platform/symbian/hxmetada
tautil.h
>
>
> build/umakepf/helix-dtdr-local-reader.pfi
> build/umakepf/helix-s60-metadataengine.pfi
> build/umakepf/helix-s60-metadataengine.pf
>
> Files Exported:
>
> datatype/tools/metadataeng/common/pub/hxmetadatakeys.h
>
datatype/tools/metadataeng/utility/[target]/hxmetadatautil.l
ib
>
datatype/tools/metadataeng/utility/platform/symbian/hxmetada
tautil.h
>
>
> Image Size and Heap Use impact: Minor. No heap impact.
109KB
> metadata engine dll.
>
> Platforms and Profiles Build Verified:
> helix-client-s60-mmf-mdf-arm,
helix-client-s60-32-mmf-mdf-arm
>
> Platforms and Profiles Functionality verified: armv5,
winscw
>
> Branch: head, hxclient_2_1_0_cayennes
> <<client_core_diff.txt>>
<<client_build_BIF_diff.txt>>
> <<build_umakepf_diff.txt>>
> <<datatype_tools_minicntx_diff.txt>>
> <<datatype_tools_dtdriver_engine_diff.txt>>
> <<datatype_tools_dtdriver_common_diff.txt>>
> <<common_system_diff.txt>>
<<common_include_diff.txt>>
> <<common_fileio_diff.txt>>
<<common_build_BIF_diff.txt>>
>
>
>
_______________________________________________
Datatype-dev mailing list
Datatype-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/da
tatype-dev
|