khronosfws/openmax_al/src/common/xavolumeitf.h
changeset 16 43d09473c595
parent 12 5a06f39ad45b
child 25 6f7ceef7b1d1
equal deleted inserted replaced
14:80975da52420 16:43d09473c595
    16 */
    16 */
    17 
    17 
    18 #ifndef XAVOLUMEITF_H
    18 #ifndef XAVOLUMEITF_H
    19 #define XAVOLUMEITF_H
    19 #define XAVOLUMEITF_H
    20 
    20 
    21 #include "openmaxalwrapper.h"
    21 #include "xaadptbasectx.h"
    22 #include "xaglobals.h"
    22 
    23 #ifdef _GSTREAMER_BACKEND_  
       
    24 #include "XAAdaptationContextBase.h"
       
    25 #endif
       
    26 /** MACROS **/
    23 /** MACROS **/
    27 
       
    28 /* Max volume level is implementation-dependent but must be at least 0mB
       
    29  * now used max volume 10 mB
       
    30  */
       
    31 #define MAX_VOLUME_LEVEL 10
       
    32 #define MAX_VOLUME_AT_LEAST 0
       
    33 /* Stereo position range is -1000 to 1000 permille. -1000 permille is fully left
       
    34  * and 1000 permille is fully right. 0 permille is center.
       
    35  */
       
    36 #define STEREO_POSITION_RIGHT 1000
       
    37 #define STEREO_POSITION_LEFT -1000
       
    38 #define STEREO_POSITION_CENTER 0
       
    39 
    24 
    40 /** TYPES **/
    25 /** TYPES **/
    41 
    26 
    42 /** ENUMERATIONS **/
    27 /** ENUMERATIONS **/
    43 
    28 
    52 
    37 
    53     XAmillibel volumeLevel;
    38     XAmillibel volumeLevel;
    54     XAboolean mute;
    39     XAboolean mute;
    55     XAboolean enableStereoPos;
    40     XAboolean enableStereoPos;
    56     XApermille stereoPosition;
    41     XApermille stereoPosition;
    57 #ifdef _GSTREAMER_BACKEND_  
       
    58     /*Adaptation variables*/
    42     /*Adaptation variables*/
    59     XAAdaptationBaseCtx *adapCtx;
    43     XAAdaptationBaseCtx *adapCtx;
    60 #endif
       
    61 } XAVolumeItfImpl;
    44 } XAVolumeItfImpl;
    62 
    45 
    63 /** METHODS **/
    46 /** METHODS **/
    64 
    47 
    65 /* Base interface XAVolumeItf implementation */
    48 /* Base interface XAVolumeItf implementation */
    79 
    62 
    80 XAresult XAVolumeItfImpl_SetStereoPosition(XAVolumeItf self, XApermille stereoPosition);
    63 XAresult XAVolumeItfImpl_SetStereoPosition(XAVolumeItf self, XApermille stereoPosition);
    81 
    64 
    82 XAresult XAVolumeItfImpl_GetStereoPosition(XAVolumeItf self, XApermille *pStereoPosition);
    65 XAresult XAVolumeItfImpl_GetStereoPosition(XAVolumeItf self, XApermille *pStereoPosition);
    83 
    66 
    84 #ifdef _GSTREAMER_BACKEND_  
    67  
    85 /* XAVolumeItfImpl -specific methods */
    68 /* XAVolumeItfImpl -specific methods */
    86 XAVolumeItfImpl* XAVolumeItfImpl_Create(XAAdaptationBaseCtx *adapCtx);
    69 XAVolumeItfImpl* XAVolumeItfImpl_Create(XAAdaptationBaseCtx *adapCtx);
    87 #endif
       
    88 void XAVolumeItfImpl_Free(XAVolumeItfImpl* self);
    70 void XAVolumeItfImpl_Free(XAVolumeItfImpl* self);
    89 
    71 
    90 #endif /* XAVOLUMEITF_H */
    72 #endif /* XAVOLUMEITF_H */