48 |
48 |
49 ret = XAPlayItfAdaptMMF_SetPlayState(&bCtx->baseObj, XA_PLAYSTATE_STOPPED); |
49 ret = XAPlayItfAdaptMMF_SetPlayState(&bCtx->baseObj, XA_PLAYSTATE_STOPPED); |
50 |
50 |
51 mmf_close(mCtx->mmfContext); |
51 mmf_close(mCtx->mmfContext); |
52 mCtx->xaSource = pDataSource; |
52 mCtx->xaSource = pDataSource; |
53 ret = mmf_set_player_uri(mCtx->mmfContext, (char *)(tempUri->URI), tempFormat->containerType); |
|
54 if(mCtx->xaVideoSink) |
53 if(mCtx->xaVideoSink) |
55 { |
54 { |
56 ret = mmf_setup_native_display(mCtx->mmfContext, mCtx->xaVideoSink); |
55 ret = mmf_setup_native_display(mCtx->mmfContext, mCtx->xaVideoSink); |
57 } |
56 } |
|
57 if (ret == XA_RESULT_SUCCESS) |
|
58 { |
|
59 ret = mmf_set_player_uri(mCtx->mmfContext, (char *)(tempUri->URI), tempFormat->containerType); |
|
60 } |
58 if(ret == XA_RESULT_SUCCESS) |
61 if(ret == XA_RESULT_SUCCESS) |
59 { |
62 { |
60 ret = XAPlayItfAdaptMMF_SetPlayState(&bCtx->baseObj, origstate); |
63 ret = XAPlayItfAdaptMMF_SetPlayState(&bCtx->baseObj, origstate); |
61 } |
64 } |
62 else |
65 else |
63 { |
66 { |
64 DEBUG_ERR("Set Play state failed"); |
67 DEBUG_ERR("Set Play state failed"); |
65 ret = XA_RESULT_INTERNAL_ERROR; |
68 ret = XA_RESULT_INTERNAL_ERROR; |
66 } |
69 } |
67 if(ret == XA_RESULT_SUCCESS) |
70 if((ret == XA_RESULT_SUCCESS) && (mCtx->mmfMetadataContext)) |
68 { |
71 { |
69 if(mCtx->mmfMetadataContext) |
72 ret = mmf_metadata_utility_parse_source(mCtx->mmfMetadataContext, (char *)(tempUri->URI)); |
70 { |
73 } |
71 ret = mmf_metadata_utility_parse_source(mCtx->mmfMetadataContext, (char *)(tempUri->URI)); |
|
72 } |
|
73 } |
|
74 } |
74 } |
75 else if(bCtx->baseObj.ctxId == XAMDAdaptation) |
75 else if(bCtx->baseObj.ctxId == XAMDAdaptation) |
76 { |
76 { |
77 |
77 |
78 XAMetadataAdaptationMMFCtx* mCtx = (XAMetadataAdaptationMMFCtx*) bCtx; |
78 XAMetadataAdaptationMMFCtx* mCtx = (XAMetadataAdaptationMMFCtx*) bCtx; |
79 if(mCtx->mmfContext) |
79 if(mCtx->mmfContext) |
80 { |
80 { |
81 mCtx->xaSource = pDataSource; |
81 mCtx->xaSource = pDataSource; |
82 ret = mmf_metadata_utility_parse_source(mCtx->mmfContext, (char *)(( (XADataLocator_URI*)(pDataSource->pLocator))->URI)); |
82 ret = mmf_metadata_utility_parse_source(mCtx->mmfContext, (char *)(( (XADataLocator_URI*)(pDataSource->pLocator))->URI)); |
83 } |
83 } |
84 } |
84 } |
85 DEBUG_API("<-XADynamicSourceItfAdaptMMF_SetSource"); |
85 DEBUG_API("<-XADynamicSourceItfAdaptMMF_SetSource"); |
86 return ret; |
86 return ret; |
87 } |
87 } |
88 |
88 |