--- a/khronosfws/openmax_al/src/mediaplayer/xaplaybackrateitf.c Mon May 03 12:59:52 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xaplaybackrateitf.c Fri May 14 16:22:35 2010 +0300
@@ -19,9 +19,9 @@
#include <stdlib.h>
#include <assert.h>
#include "xaplaybackrateitf.h"
-#ifdef _GSTREAMER_BACKEND_
-#include "XAPlaybackRateItfAdaptation.h"
-#endif
+
+#include "xaplaybackrateitfadaptation.h"
+
#include "xathreadsafety.h"
static XAPlaybackRateItfImpl* GetImpl(XAPlaybackRateItf self)
@@ -56,9 +56,16 @@
return XA_RESULT_PARAMETER_INVALID;
}
-#ifdef _GSTREAMER_BACKEND_
- res = XAPlaybackRateItfAdapt_SetRate(impl->adaptCtx, rate);
-#endif
+ if(impl->adaptCtx->fwtype == FWMgrFWGST)
+ {
+ res = XAPlaybackRateItfAdapt_SetRate((XAAdaptationGstCtx*)impl->adaptCtx, rate);
+ }
+ else
+ {
+ DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
+ res = XA_RESULT_FEATURE_UNSUPPORTED;
+ }
+
if(res == XA_RESULT_SUCCESS)
{
impl->currentRate = rate;
@@ -81,7 +88,15 @@
DEBUG_API("<-XAPlaybackRateItfImpl_GetRate");
return XA_RESULT_PARAMETER_INVALID;
}
- *pRate = impl->currentRate;
+ if(impl->adaptCtx->fwtype == FWMgrFWGST)
+ {
+ *pRate = impl->currentRate;
+ }
+ else
+ {
+ DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
+ res = XA_RESULT_FEATURE_UNSUPPORTED;
+ }
DEBUG_API("<-XAPlaybackRateItfImpl_GetRate");
return res;
@@ -103,10 +118,17 @@
return XA_RESULT_PARAMETER_INVALID;
}
-#ifdef _GSTREAMER_BACKEND_
- /* set to adaptation */
- res = XAPlaybackRateItfAdapt_SetPropertyConstraints(impl->adaptCtx, constraints);
-#endif
+ if(impl->adaptCtx->fwtype == FWMgrFWGST)
+ {
+ /* set to adaptation */
+ res = XAPlaybackRateItfAdapt_SetPropertyConstraints((XAAdaptationGstCtx*)impl->adaptCtx, constraints);
+ }
+ else
+ {
+ DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
+ res = XA_RESULT_FEATURE_UNSUPPORTED;
+ }
+
XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaPlayer );
DEBUG_API("<-XAPlaybackRateItfImpl_SetPropertyConstraints");
return res;
@@ -126,10 +148,17 @@
return XA_RESULT_PARAMETER_INVALID;
}
-#ifdef _GSTREAMER_BACKEND_
- /* needs to be queried from adaptation */
- res = XAPlaybackRateItfAdapt_GetProperties(impl->adaptCtx, pProperties);
-#endif
+ if(impl->adaptCtx->fwtype == FWMgrFWGST)
+ {
+ /* needs to be queried from adaptation */
+ res = XAPlaybackRateItfAdapt_GetProperties((XAAdaptationGstCtx*)impl->adaptCtx, pProperties);
+ }
+ else
+ {
+ DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
+ res = XA_RESULT_FEATURE_UNSUPPORTED;
+ }
+
DEBUG_API("<-XAPlaybackRateItfImpl_GetProperties");
return res;
}
@@ -152,10 +181,17 @@
return XA_RESULT_PARAMETER_INVALID;
}
-#ifdef _GSTREAMER_BACKEND_
- /* needs to be queried from adaptation */
- res = XAPlaybackRateItfAdapt_GetCapabilitiesOfRate(impl->adaptCtx, rate, pCapabilities);
-#endif
+ if(impl->adaptCtx->fwtype == FWMgrFWGST)
+ {
+ /* needs to be queried from adaptation */
+ res = XAPlaybackRateItfAdapt_GetCapabilitiesOfRate((XAAdaptationGstCtx*)impl->adaptCtx, rate, pCapabilities);
+ }
+ else
+ {
+ DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
+ res = XA_RESULT_FEATURE_UNSUPPORTED;
+ }
+
XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaPlayer );
DEBUG_API("<-XAPlaybackRateItfImpl_GetCapabilitiesOfRate");
return res;
@@ -180,12 +216,18 @@
DEBUG_API("<-XAPlaybackRateItfImpl_GetRateRange");
return XA_RESULT_PARAMETER_INVALID;
}
+ if(impl->adaptCtx->fwtype == FWMgrFWGST)
+ {
+ /* needs to be queried from adaptation */
+ res = XAPlaybackRateItfAdapt_GetRateRange((XAAdaptationGstCtx*)impl->adaptCtx, index, pMinRate,
+ pMaxRate,pStepSize, pCapabilities);
+ }
+ else
+ {
+ DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
+ res = XA_RESULT_FEATURE_UNSUPPORTED;
+ }
-#ifdef _GSTREAMER_BACKEND_
- /* needs to be queried from adaptation */
- res = XAPlaybackRateItfAdapt_GetRateRange(impl->adaptCtx, index, pMinRate,
- pMaxRate,pStepSize, pCapabilities);
-#endif
XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaPlayer );
DEBUG_API("<-XAPlaybackRateItfImpl_GetRateRange");
return res;
@@ -194,13 +236,11 @@
/**
* XAPlaybackRateItfImpl -specific methods
**/
-#ifdef _GSTREAMER_BACKEND_
-
/**
* XAPlaybackRateItfImpl* XAPlaybackRateItfImpl_Create();
* @return XAPlaybackRateItfImpl* - Pointer to PlaybackRateItf interface implementation
**/
-XAPlaybackRateItfImpl* XAPlaybackRateItfImpl_Create( XAAdaptationBaseCtx *adaptCtx )
+XAPlaybackRateItfImpl* XAPlaybackRateItfImpl_Create( XAMediaPlayerImpl *impl )
{
XAPlaybackRateItfImpl *self = (XAPlaybackRateItfImpl*)
calloc(1,sizeof(XAPlaybackRateItfImpl));
@@ -217,7 +257,7 @@
self->itf.SetRate = XAPlaybackRateItfImpl_SetRate;
/* init variables */
- self->adaptCtx = adaptCtx;
+ self->adaptCtx = impl->curAdaptCtx;
self->currentRate = 1000;
self->self = self;
}
@@ -225,7 +265,7 @@
DEBUG_API("<-XAPlaybackRateItfImpl_Create");
return self;
}
-#endif
+
/**
* void XAPlaybackRateItfImpl_Free(XAPlaybackRateItfImpl* self);
* @param XAPlaybackRateItfImpl* self -