inc/AudioConfigurationPrivateCRKeys.h
changeset 0 71ca22bcf22a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/inc/AudioConfigurationPrivateCRKeys.h	Tue Feb 02 01:08:46 2010 +0200
@@ -0,0 +1,90 @@
+/*
+* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Audio Configuration internal Central Repository keys for
+*                specifying buffering mode during progressive download.
+*
+*/
+
+
+#ifndef AUDIOCONFIGURATIONINTERNALCRKEYS_H
+#define AUDIOCONFIGURATIONINTERNALCRKEYS_H
+
+// INCLUDES
+#include <e32def.h>
+
+// CONSTANTS
+
+/**
+* Audio Configuration CR UID.
+*/
+const TUid KCRUidAudioConfiguration = {0x10207B74};
+
+/**
+* This key is required for the Enhanced Media Client to determine the "buffering mode"
+* when the source runs out of data. When it happens, the source will start sending
+* buffer to underlying framework when buffering condition is met.
+*
+* Possible integer values:
+* 0 = "None". No buffering is done, as and when data is downloaded, it will be given
+*     to underlying framework.
+* 1 = "Fixed Size". Fixed size buffering. The source waits until the data accumulated
+*     reaches the limit (in bytes) specified by KPDLPrimaryBufferingAmount.
+* 2 = "Fixed duration". Fixed duration buffering. The source waits until the data
+*     accumulated reaches the limit (calculated dynamically). When playback begins,
+*     it is guarenteed to continue playback for KPDLPrimaryBufferingAmount duration
+*     before it may underflow again. (Note: The playback may stop due to other reasons
+*     but insufficient data).
+* 3 = "Dynamic duration". Dynamic duration buffering. The source waits until the data
+*     accumulated reaches the limit (in bytes) specified by KPDLPrimaryBufferingAmount
+*     plus a constant. The limit determined is the best possible approximation.
+*     When the playback begins it is may never underflow until the clip is played
+*     back completely. This assuming that data transfer rate and the bit rate of the
+*     clip remains constant until the download is complete.
+      (Note: The playback may stop due to other reasons but insufficient data).
+*/
+const TUint32 KPDLPrimaryBufferingType  = 0x00000001;
+
+/**
+* Size/Duration value associated with primary buffering type.
+*/
+const TUint32 KPDLPrimaryBufferingAmount = 0x00000002;
+
+/**
+* This key is used if primary configuration cannot be used.
+* This may happen when the component does not know all the variables needed to
+* to determine the buffering limit.
+*
+* If the buffering type specified is still invalid at runtime(for e.g. the customer may have
+* configured both primary and secondary to fixed duration and the bit rate may
+* not be known in the begining of playback). The component will default to no
+* buffering and will send data to framework as and when it is received. The playback
+* may include breaks in this case. To avoid this, this should be configured to fixed
+* size. 
+*/
+const TUint32 KPDLSecondaryBufferingType = 0x00000003;
+
+/**
+* Size/Duration value associated with secondary buffering type.
+*/
+const TUint32 KPDLSecondaryBufferingAmount = 0x00000004;
+
+/**
+* Initial Percentage of File download before starting playback.
+*/
+const TUint32 KPDLInitialBufferingPercentage = 0x00000005;
+
+
+#endif      // AUDIOCONFIGURATIONINTERNALCRKEYS_H
+
+// End of file