00001 00032 #include "linden_common.h" 00033 00034 #include "llmediamoviebase.h" 00035 #include "llmediaimplquicktime.h" 00036 #include "llmediaimplgstreamer.h" 00037 00038 LLMediaMovieBase::LLMediaMovieBase() 00039 { 00040 00041 } 00042 00044 // factory method based on explicit media type 00045 LLMediaMovieBase* LLMediaMovieBase::make( const MediaType mediaTypeIn, S32 width_pixels, S32 height_pixels ) 00046 { 00047 #if LL_QUICKTIME_ENABLED 00048 if ( mediaTypeIn == QuickTime ) 00049 { 00050 return new LLMediaImplQuickTime (); 00051 } 00052 else 00053 #endif 00054 #if LL_GSTREAMER_ENABLED 00055 if ( mediaTypeIn == QuickTime ) 00056 { 00057 return new LLMediaImplGStreamer (); 00058 } 00059 else 00060 #endif 00061 00062 return 0; 00063 } 00064 00066 // 00067 BOOL 00068 LLMediaMovieBase:: 00069 play () 00070 { 00071 // build event and emit it 00072 LLMediaEvent event ( 0, "" ); 00073 mMediaEventEmitter.update ( &LLMediaObserver::onPlay, event ); 00074 00075 return TRUE; 00076 } 00077 00079 // 00080 BOOL 00081 LLMediaMovieBase:: 00082 pause () 00083 { 00084 LLMediaEvent event ( 0, "" ); 00085 mMediaEventEmitter.update ( &LLMediaObserver::onPause, event ); 00086 00087 return TRUE; 00088 } 00089 00091 // 00092 BOOL 00093 LLMediaMovieBase:: 00094 stop () 00095 { 00096 LLMediaEvent event ( 0, "" ); 00097 mMediaEventEmitter.update ( &LLMediaObserver::onStop, event ); 00098 00099 return TRUE; 00100 } 00101 00103 // 00104 BOOL 00105 LLMediaMovieBase:: 00106 loop ( S32 howMany ) 00107 { 00108 return TRUE; 00109 }; 00110 00112 // 00113 void LLMediaMovieBase::setAutoScaled ( BOOL autoScaledIn ) 00114 { 00115 } 00116 00118 // 00119 BOOL 00120 LLMediaMovieBase:: 00121 setVolume ( F32 volumeIn ) 00122 { 00123 return TRUE; 00124 } 00125 00127 // 00128 F32 00129 LLMediaMovieBase:: 00130 getVolume () 00131 { 00132 return ( F32 ) 0.0f; 00133 } 00134 00136 // 00137 BOOL 00138 LLMediaMovieBase:: 00139 isIdle () const 00140 { 00141 return FALSE; 00142 } 00143 00145 // 00146 BOOL 00147 LLMediaMovieBase:: 00148 isBuffering () const 00149 { 00150 return FALSE; 00151 } 00152 00154 // 00155 BOOL 00156 LLMediaMovieBase:: 00157 isError () const 00158 { 00159 return FALSE; 00160 } 00161 00163 // 00164 BOOL 00165 LLMediaMovieBase:: 00166 isLoaded () const 00167 { 00168 return TRUE; 00169 } 00170 00172 // 00173 BOOL 00174 LLMediaMovieBase:: 00175 isStopped () const 00176 { 00177 return FALSE; 00178 } 00179 00181 // 00182 BOOL 00183 LLMediaMovieBase:: 00184 isPaused () const 00185 { 00186 return FALSE; 00187 } 00188 00190 // 00191 BOOL 00192 LLMediaMovieBase:: 00193 isPlaying () const 00194 { 00195 return TRUE; 00196 } 00197 00199 // 00200 BOOL 00201 LLMediaMovieBase:: 00202 isLooping () const 00203 { 00204 return FALSE; 00205 } 00206 00208 // 00209 BOOL 00210 LLMediaMovieBase:: 00211 seek ( F64 time ) 00212 { 00213 return TRUE; 00214 } 00215 00217 // 00218 F64 00219 LLMediaMovieBase:: 00220 getTime () const 00221 { 00222 F64 result = 0; 00223 return result; 00224 } 00225 00227 // 00228 F64 00229 LLMediaMovieBase:: 00230 getMediaDuration () const 00231 { 00232 F64 result = 0; 00233 return result; 00234 }