khronosfws/openmax_al/src/engine/xaaudiodecodercapabilitiesitf.c
changeset 33 5e8b14bae8c3
parent 28 ebf79c79991a
child 36 73253677b50a
--- a/khronosfws/openmax_al/src/engine/xaaudiodecodercapabilitiesitf.c	Fri Jun 25 17:36:03 2010 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,221 +0,0 @@
-/*
- * Copyright (c) 2009 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 Encoder Capabilities Interface Implementation
- *
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <assert.h>
-#include <string.h>
-
-#include "xaglobals.h"
-#include "xaadptbasectx.h"
-#include "xaaudiodecodercapabilitiesitf.h"
-#include "xacapabilitiesmgr.h"
-/* XAAudioDecoderCapabilitiesItfImpl* GetImpl
- * Description: Validate interface pointer and cast it to implementation pointer.
- */
-static XAAudioDecoderCapabilitiesItfImpl* GetImpl(
-        XAAudioDecoderCapabilitiesItf self)
-    {
-    if (self)
-        {
-        XAAudioDecoderCapabilitiesItfImpl* impl =
-                (XAAudioDecoderCapabilitiesItfImpl*) (*self);
-        if (impl && (impl == impl->self))
-            {
-            return impl;
-            }
-        }
-    return NULL;
-    }
-
-/*****************************************************************************
- * Base interface XAAudioDecoderCapabilitiesItf implementation
- *****************************************************************************/
-
-/* XAresult XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoders
- * Description: Retrieves the available audio decoders.
- */
-XAresult XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoders(
-        XAAudioDecoderCapabilitiesItf self, XAuint32* pNumDecoders,
-        XAuint32* pDecoderIds)
-    {
-    XAAudioDecoderCapabilitiesItfImpl* impl = GetImpl(self);
-    XAresult res = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoders");
-
-    if (!impl || !pNumDecoders)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        res = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (pDecoderIds)
-            { /* query array of decoders */
-            if (*pNumDecoders < impl->numCodecs)
-                {
-                DEBUG_ERR("XA_RESULT_BUFFER_INSUFFICIENT");
-                res = XA_RESULT_BUFFER_INSUFFICIENT;
-                }
-            else
-                {
-
-                XAuint32 i = 0;
-                XACapabilities temp;
-                for (i = 0; i < impl->numCodecs; i++)
-                    {
-                    /* query decoder id from adaptation using index value */
-                    XACapabilitiesMgr_GetCapsByIdx(NULL,
-                            (XACapsType) (XACAP_DECODER | XACAP_AUDIO), i,
-                            &temp);
-                    pDecoderIds[i] = temp.xaid;
-                    }
-
-                }
-            }
-        /* return number of decoders */
-        *pNumDecoders = impl->numCodecs;
-        }DEBUG_API("<-XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoders");
-    return res;
-    }
-
-/* XAresult XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoderCapabilities
- * Description: Queries for the audio decoder�s capabilities.
- */
-XAresult XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoderCapabilities(
-        XAAudioDecoderCapabilitiesItf self, XAuint32 decoderId,
-        XAuint32* pIndex, XAAudioCodecDescriptor* pDescriptor)
-    {
-    XAAudioDecoderCapabilitiesItfImpl* impl = GetImpl(self);
-    XAresult res = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoderCapabilities");
-
-    if (!impl || !pIndex)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        res = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (!pDescriptor)
-            { /* query number of capa structures */
-            *pIndex = 1;
-            }
-        else
-            { /* query capabilities */
-            if (*pIndex >= 1)
-                {
-                DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-                res = XA_RESULT_PARAMETER_INVALID;
-                }
-            else
-                {
-
-                /* query capabilities from adaptation using codec id */
-                XACapabilities temp;
-                memset(pDescriptor, 0, sizeof(XAAudioCodecDescriptor));
-                res = XACapabilitiesMgr_GetCapsById(NULL,
-                        (XACapsType) (XACAP_DECODER | XACAP_AUDIO),
-                        decoderId, &temp);
-                if (res == XA_RESULT_SUCCESS)
-                    {
-                    XAAudioCodecDescriptor* desc =
-                            ((XAAudioCodecDescriptor*) (temp.pEntry));
-                    /* map applicable values to XAAudioCodecCapabilities */
-                    pDescriptor->maxChannels = desc->maxChannels;
-                    pDescriptor->minSampleRate = desc->minSampleRate; /* milliHz */
-                    if (desc->maxSampleRate < (0xFFFFFFFF))
-                        {
-                        pDescriptor->maxSampleRate = desc->maxSampleRate;
-                        }
-                    else
-                        {
-                        pDescriptor->maxSampleRate = 0xFFFFFFFF;
-                        }
-                    pDescriptor->minBitsPerSample = desc->minBitsPerSample;
-                    pDescriptor->maxBitsPerSample = desc->maxBitsPerSample;
-                    pDescriptor->isFreqRangeContinuous=desc->isFreqRangeContinuous;
-                    pDescriptor->minBitRate = desc->minBitRate;
-                    pDescriptor->maxBitRate = desc->maxBitRate;
-                    pDescriptor->numBitratesSupported
-                            = desc->numBitratesSupported;
-                    pDescriptor->isBitrateRangeContinuous=desc->isBitrateRangeContinuous;
-                    pDescriptor->profileSetting=desc->profileSetting;
-                    pDescriptor->modeSetting=desc->modeSetting; /* no chanmode for pcm defined */
-                    
-                    }
-                    else
-                        {
-                        /* do nothing */
-                        }
-                    /*other caps undefined*/
-                    }
-
-                }
-            }
-    
-
-    DEBUG_API("<-XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoderCapabilities");
-    return res;
-    }
-
-/*****************************************************************************
- * XAAudioDecoderCapabilitiesItfImpl -specific methods
- *****************************************************************************/
-
-/* XAAudioDecoderCapabilitiesItfImpl_Create
- * Description: Allocate and initialize XAAudioDecoderCapabilitiesItfImpl
- */
-XAAudioDecoderCapabilitiesItfImpl* XAAudioDecoderCapabilitiesItfImpl_Create()
-    {
-    XAAudioDecoderCapabilitiesItfImpl* self =
-            (XAAudioDecoderCapabilitiesItfImpl*) calloc(1,
-                    sizeof(XAAudioDecoderCapabilitiesItfImpl));
-
-    DEBUG_API("->XAAudioDecoderCapabilitiesItfImpl_Create");
-
-    if (self)
-        {
-        /* init itf default implementation */
-        self->itf.GetAudioDecoders
-                = XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoders;
-        self->itf.GetAudioDecoderCapabilities
-                = XAAudioDecoderCapabilitiesItfImpl_GetAudioDecoderCapabilities;
-
-        /* init variables */
-
-        assert( XACapabilitiesMgr_GetCapsCount(NULL, (XACapsType)(XACAP_DECODER|XACAP_AUDIO),
-                        &(self->numCodecs) ) == XA_RESULT_SUCCESS );
-
-        self->self = self;
-        }DEBUG_API("<-XAAudioDecoderCapabilitiesItfImpl_Create");
-    return self;
-    }
-
-/* void XAAudioDecoderCapabilitiesItfImpl_Free
- * Description: Free all resources reserved at XAAudioDecoderCapabilitiesItfImpl_Create
- */
-void XAAudioDecoderCapabilitiesItfImpl_Free(
-        XAAudioDecoderCapabilitiesItfImpl* self)
-    {
-    DEBUG_API("->XAAudioDecoderCapabilitiesItfImpl_Free");
-    assert(self==self->self);
-    free(self);
-    DEBUG_API("<-XAAudioDecoderCapabilitiesItfImpl_Free");
-    }