author | llornkcor <llornkcor> | 2002-02-24 21:51:51 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-02-24 21:51:51 (UTC) |
commit | 36b768c465c6ecddceb57ff1d7a5087e9848c897 (patch) (unidiff) | |
tree | 4ddde589e2393ca136e24cda4fc456612149ae72 /core/multimedia/opieplayer/mediaplayerstate.cpp | |
parent | ade25ac278169f0e0c9ee0771e754adb46cf7ce2 (diff) | |
download | opie-36b768c465c6ecddceb57ff1d7a5087e9848c897.zip opie-36b768c465c6ecddceb57ff1d7a5087e9848c897.tar.gz opie-36b768c465c6ecddceb57ff1d7a5087e9848c897.tar.bz2 |
changed mediaplayerplugininterface.h location
Diffstat (limited to 'core/multimedia/opieplayer/mediaplayerstate.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/multimedia/opieplayer/mediaplayerstate.cpp | 60 |
1 files changed, 33 insertions, 27 deletions
diff --git a/core/multimedia/opieplayer/mediaplayerstate.cpp b/core/multimedia/opieplayer/mediaplayerstate.cpp index 9b9d133..2a6bca3 100644 --- a/core/multimedia/opieplayer/mediaplayerstate.cpp +++ b/core/multimedia/opieplayer/mediaplayerstate.cpp | |||
@@ -21,25 +21,27 @@ | |||
21 | #include <qpe/qlibrary.h> | 21 | #include <qpe/qlibrary.h> |
22 | #include <qpe/config.h> | 22 | #include <qpe/config.h> |
23 | #include <qvaluelist.h> | 23 | #include <qvaluelist.h> |
24 | #include <qobject.h> | 24 | #include <qobject.h> |
25 | #include <qdir.h> | 25 | #include <qdir.h> |
26 | #include "mediaplayerplugininterface.h" | 26 | #include "mediaplayerplugininterface.h" |
27 | #include "mediaplayerstate.h" | 27 | #include "mediaplayerstate.h" |
28 | 28 | ||
29 | |||
30 | |||
29 | #ifdef QT_NO_COMPONENT | 31 | #ifdef QT_NO_COMPONENT |
30 | // Plugins which are compiled in when no plugin architecture available | 32 | // Plugins which are compiled in when no plugin architecture available |
31 | #include "libmad/libmadpluginimpl.h" | 33 | #include "libmad/libmadpluginimpl.h" |
32 | #include "libmpeg3/libmpeg3pluginimpl.h" | 34 | #include "libmpeg3/libmpeg3pluginimpl.h" |
33 | #include "wavplugin/wavpluginimpl.h" | 35 | #include "wavplugin/wavpluginimpl.h" |
34 | #endif | 36 | #endif |
35 | 37 | ||
36 | 38 | ||
37 | //#define MediaPlayerDebug(x)qDebug x | 39 | //#define MediaPlayerDebug(x) qDebug x |
38 | #define MediaPlayerDebug(x) | 40 | #define MediaPlayerDebug(x) |
39 | 41 | ||
40 | 42 | ||
41 | MediaPlayerState::MediaPlayerState( QObject *parent, const char *name ) | 43 | MediaPlayerState::MediaPlayerState( QObject *parent, const char *name ) |
42 | : QObject( parent, name ), decoder( NULL ), libmpeg3decoder( NULL ) { | 44 | : QObject( parent, name ), decoder( NULL ), libmpeg3decoder( NULL ) { |
43 | Config cfg( "MediaPlayer" ); | 45 | Config cfg( "MediaPlayer" ); |
44 | readConfig( cfg ); | 46 | readConfig( cfg ); |
45 | loadPlugins(); | 47 | loadPlugins(); |
@@ -90,75 +92,79 @@ struct MediaPlayerPlugin { | |||
90 | static QValueList<MediaPlayerPlugin> pluginList; | 92 | static QValueList<MediaPlayerPlugin> pluginList; |
91 | 93 | ||
92 | 94 | ||
93 | // Find the first decoder which supports this type of file | 95 | // Find the first decoder which supports this type of file |
94 | MediaPlayerDecoder *MediaPlayerState::newDecoder( const QString& file ) { | 96 | MediaPlayerDecoder *MediaPlayerState::newDecoder( const QString& file ) { |
95 | MediaPlayerDecoder *tmpDecoder = NULL; | 97 | MediaPlayerDecoder *tmpDecoder = NULL; |
96 | QValueList<MediaPlayerPlugin>::Iterator it; | 98 | QValueList<MediaPlayerPlugin>::Iterator it; |
97 | for ( it = pluginList.begin(); it != pluginList.end(); ++it ) { | 99 | for ( it = pluginList.begin(); it != pluginList.end(); ++it ) { |
98 | if ( (*it).decoder->isFileSupported( file ) ) { | 100 | if ( (*it).decoder->isFileSupported( file ) ) { |
99 | tmpDecoder = (*it).decoder; | 101 | tmpDecoder = (*it).decoder; |
100 | break; | 102 | break; |
101 | } | 103 | } |
102 | } | 104 | } |
103 | return decoder = tmpDecoder; | 105 | return decoder = tmpDecoder; |
104 | } | 106 | } |
105 | 107 | ||
106 | 108 | ||
107 | MediaPlayerDecoder *MediaPlayerState::curDecoder() { | 109 | MediaPlayerDecoder *MediaPlayerState::curDecoder() { |
108 | return decoder; | 110 | return decoder; |
109 | } | 111 | } |
110 | 112 | ||
111 | 113 | ||
112 | // ### hack to get true sample count | 114 | // ### hack to get true sample count |
113 | MediaPlayerDecoder *MediaPlayerState::libMpeg3Decoder() { | 115 | MediaPlayerDecoder *MediaPlayerState::libMpeg3Decoder() { |
114 | return libmpeg3decoder; | 116 | return libmpeg3decoder; |
115 | } | 117 | } |
116 | 118 | ||
119 | // ### hack to get true sample count | ||
120 | // MediaPlayerDecoder *MediaPlayerState::libWavDecoder() { | ||
121 | // return libwavdecoder; | ||
122 | // } | ||
117 | 123 | ||
118 | void MediaPlayerState::loadPlugins() { | 124 | void MediaPlayerState::loadPlugins() { |
119 | 125 | ||
120 | #ifndef QT_NO_COMPONENT | 126 | #ifndef QT_NO_COMPONENT |
121 | QValueList<MediaPlayerPlugin>::Iterator mit; | 127 | QValueList<MediaPlayerPlugin>::Iterator mit; |
122 | for ( mit = pluginList.begin(); mit != pluginList.end(); ++mit ) { | 128 | for ( mit = pluginList.begin(); mit != pluginList.end(); ++mit ) { |
123 | (*mit).iface->release(); | 129 | (*mit).iface->release(); |
124 | (*mit).library->unload(); | 130 | (*mit).library->unload(); |
125 | delete (*mit).library; | 131 | delete (*mit).library; |
126 | } | 132 | } |
127 | pluginList.clear(); | 133 | pluginList.clear(); |
128 | 134 | ||
129 | QString path = QPEApplication::qpeDir() + "/plugins/codecs"; | 135 | QString path = QPEApplication::qpeDir() + "/plugins/codecs"; |
130 | QDir dir( path, "lib*.so" ); | 136 | QDir dir( path, "lib*.so" ); |
131 | QStringList list = dir.entryList(); | 137 | QStringList list = dir.entryList(); |
132 | QStringList::Iterator it; | 138 | QStringList::Iterator it; |
133 | for ( it = list.begin(); it != list.end(); ++it ) { | 139 | for ( it = list.begin(); it != list.end(); ++it ) { |
134 | MediaPlayerPluginInterface *iface = 0; | 140 | MediaPlayerPluginInterface *iface = 0; |
135 | QLibrary *lib = new QLibrary( path + "/" + *it ); | 141 | QLibrary *lib = new QLibrary( path + "/" + *it ); |
136 | 142 | ||
137 | MediaPlayerDebug(( "querying: %s", QString( path + "/" + *it ).latin1() )); | 143 | MediaPlayerDebug(( "querying: %s", QString( path + "/" + *it ).latin1() )); |
138 | 144 | ||
139 | if ( lib->queryInterface( IID_MediaPlayerPlugin, (QUnknownInterface**)&iface ) == QS_OK ) { | 145 | if ( lib->queryInterface( IID_MediaPlayerPlugin, (QUnknownInterface**)&iface ) == QS_OK ) { |
140 | 146 | ||
141 | MediaPlayerDebug(( "loading: %s", QString( path + "/" + *it ).latin1() )); | 147 | MediaPlayerDebug(( "loading: %s", QString( path + "/" + *it ).latin1() )); |
142 | 148 | ||
143 | MediaPlayerPlugin plugin; | 149 | MediaPlayerPlugin plugin; |
144 | plugin.library = lib; | 150 | plugin.library = lib; |
145 | plugin.iface = iface; | 151 | plugin.iface = iface; |
146 | plugin.decoder = plugin.iface->decoder(); | 152 | plugin.decoder = plugin.iface->decoder(); |
147 | plugin.encoder = plugin.iface->encoder(); | 153 | plugin.encoder = plugin.iface->encoder(); |
148 | pluginList.append( plugin ); | 154 | pluginList.append( plugin ); |
149 | 155 | ||
150 | // ### hack to get true sample count | 156 | // ### hack to get true sample count |
151 | if ( plugin.decoder->pluginName() == QString("LibMpeg3Plugin") ) | 157 | if ( plugin.decoder->pluginName() == QString("LibMpeg3Plugin") ) |
152 | libmpeg3decoder = plugin.decoder; | 158 | libmpeg3decoder = plugin.decoder; |
153 | 159 | ||
154 | } else { | 160 | } else { |
155 | delete lib; | 161 | delete lib; |
156 | } | 162 | } |
157 | } | 163 | } |
158 | #else | 164 | #else |
159 | pluginList.clear(); | 165 | pluginList.clear(); |
160 | 166 | ||
161 | MediaPlayerPlugin plugin0; | 167 | MediaPlayerPlugin plugin0; |
162 | plugin0.iface = new LibMpeg3PluginImpl; | 168 | plugin0.iface = new LibMpeg3PluginImpl; |
163 | plugin0.decoder = plugin0.iface->decoder(); | 169 | plugin0.decoder = plugin0.iface->decoder(); |
164 | plugin0.encoder = plugin0.iface->encoder(); | 170 | plugin0.encoder = plugin0.iface->encoder(); |
@@ -173,13 +179,13 @@ void MediaPlayerState::loadPlugins() { | |||
173 | MediaPlayerPlugin plugin2; | 179 | MediaPlayerPlugin plugin2; |
174 | plugin2.iface = new WavPluginImpl; | 180 | plugin2.iface = new WavPluginImpl; |
175 | plugin2.decoder = plugin2.iface->decoder(); | 181 | plugin2.decoder = plugin2.iface->decoder(); |
176 | plugin2.encoder = plugin2.iface->encoder(); | 182 | plugin2.encoder = plugin2.iface->encoder(); |
177 | pluginList.append( plugin2 ); | 183 | pluginList.append( plugin2 ); |
178 | #endif | 184 | #endif |
179 | 185 | ||
180 | if ( pluginList.count() ) | 186 | if ( pluginList.count() ) |
181 | MediaPlayerDebug(( "%i decoders found", pluginList.count() )); | 187 | MediaPlayerDebug(( "%i decoders found", pluginList.count() )); |
182 | else | 188 | else |
183 | MediaPlayerDebug(( "No decoders found" )); | 189 | MediaPlayerDebug(( "No decoders found" )); |
184 | } | 190 | } |
185 | 191 | ||