Diffstat (limited to 'core/multimedia/opieplayer/mediaplayerstate.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | core/multimedia/opieplayer/mediaplayerstate.cpp | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/core/multimedia/opieplayer/mediaplayerstate.cpp b/core/multimedia/opieplayer/mediaplayerstate.cpp index 5bfb87e..b700cd1 100644 --- a/core/multimedia/opieplayer/mediaplayerstate.cpp +++ b/core/multimedia/opieplayer/mediaplayerstate.cpp | |||
@@ -8,40 +8,44 @@ | |||
8 | ** Foundation and appearing in the file LICENSE.GPL included in the | 8 | ** Foundation and appearing in the file LICENSE.GPL included in the |
9 | ** packaging of this file. | 9 | ** packaging of this file. |
10 | ** | 10 | ** |
11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | 11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE |
12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | 12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
13 | ** | 13 | ** |
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | #include <qpe/qpeapplication.h> | ||
21 | #include <qpe/qlibrary.h> | ||
22 | #include <qpe/config.h> | ||
23 | #include <qdir.h> | ||
24 | #include <qpe/mediaplayerplugininterface.h> | ||
25 | #include "mediaplayerstate.h" | ||
26 | |||
27 | |||
28 | 20 | ||
29 | #ifdef QT_NO_COMPONENT | 21 | #ifdef QT_NO_COMPONENT |
30 | // Plugins which are compiled in when no plugin architecture available | 22 | // Plugins which are compiled in when no plugin architecture available |
31 | #include "libmad/libmadpluginimpl.h" | 23 | #include "libmad/libmadpluginimpl.h" |
32 | #include "libmpeg3/libmpeg3pluginimpl.h" | 24 | #include "libmpeg3/libmpeg3pluginimpl.h" |
33 | #include "wavplugin/wavpluginimpl.h" | 25 | #include "wavplugin/wavpluginimpl.h" |
34 | #endif | 26 | #endif |
35 | 27 | ||
28 | #include "mediaplayerstate.h" | ||
29 | |||
30 | /* OPIE */ | ||
31 | #include <qpe/qpeapplication.h> | ||
32 | #include <qpe/qlibrary.h> | ||
33 | #include <qpe/config.h> | ||
34 | #include <qpe/mediaplayerplugininterface.h> | ||
35 | #include <opie2/odebug.h> | ||
36 | |||
37 | /* QT */ | ||
38 | #include <qdir.h> | ||
39 | |||
36 | 40 | ||
37 | //#define MediaPlayerDebug(x) qDebug x | 41 | //#define MediaPlayerDebug(x) qDebug x |
38 | #define MediaPlayerDebug(x) | 42 | #define MediaPlayerDebug(x) |
39 | 43 | ||
40 | 44 | ||
41 | MediaPlayerState::MediaPlayerState( QObject *parent, const char *name ) | 45 | MediaPlayerState::MediaPlayerState( QObject *parent, const char *name ) |
42 | : QObject( parent, name ), decoder( NULL ), libmpeg3decoder( NULL ) { | 46 | : QObject( parent, name ), decoder( NULL ), libmpeg3decoder( NULL ) { |
43 | Config cfg( "OpiePlayer" ); | 47 | Config cfg( "OpiePlayer" ); |
44 | readConfig( cfg ); | 48 | readConfig( cfg ); |
45 | loadPlugins(); | 49 | loadPlugins(); |
46 | } | 50 | } |
47 | 51 | ||
@@ -116,46 +120,46 @@ MediaPlayerDecoder *MediaPlayerState::curDecoder() { | |||
116 | 120 | ||
117 | // ### hack to get true sample count | 121 | // ### hack to get true sample count |
118 | MediaPlayerDecoder *MediaPlayerState::libMpeg3Decoder() { | 122 | MediaPlayerDecoder *MediaPlayerState::libMpeg3Decoder() { |
119 | return libmpeg3decoder; | 123 | return libmpeg3decoder; |
120 | } | 124 | } |
121 | 125 | ||
122 | // ### hack to get true sample count | 126 | // ### hack to get true sample count |
123 | // MediaPlayerDecoder *MediaPlayerState::libWavDecoder() { | 127 | // MediaPlayerDecoder *MediaPlayerState::libWavDecoder() { |
124 | // return libwavdecoder; | 128 | // return libwavdecoder; |
125 | // } | 129 | // } |
126 | 130 | ||
127 | void MediaPlayerState::loadPlugins() { | 131 | void MediaPlayerState::loadPlugins() { |
128 | // qDebug("load plugins"); | 132 | // odebug << "load plugins" << oendl; |
129 | #ifndef QT_NO_COMPONENT | 133 | #ifndef QT_NO_COMPONENT |
130 | QValueList<MediaPlayerPlugin>::Iterator mit; | 134 | QValueList<MediaPlayerPlugin>::Iterator mit; |
131 | for ( mit = pluginList.begin(); mit != pluginList.end(); ++mit ) { | 135 | for ( mit = pluginList.begin(); mit != pluginList.end(); ++mit ) { |
132 | (*mit).iface->release(); | 136 | (*mit).iface->release(); |
133 | (*mit).library->unload(); | 137 | (*mit).library->unload(); |
134 | delete (*mit).library; | 138 | delete (*mit).library; |
135 | } | 139 | } |
136 | pluginList.clear(); | 140 | pluginList.clear(); |
137 | 141 | ||
138 | QString path = QPEApplication::qpeDir() + "/plugins/codecs"; | 142 | QString path = QPEApplication::qpeDir() + "/plugins/codecs"; |
139 | QDir dir( path, "lib*.so" ); | 143 | QDir dir( path, "lib*.so" ); |
140 | QStringList list = dir.entryList(); | 144 | QStringList list = dir.entryList(); |
141 | QStringList::Iterator it; | 145 | QStringList::Iterator it; |
142 | for ( it = list.begin(); it != list.end(); ++it ) { | 146 | for ( it = list.begin(); it != list.end(); ++it ) { |
143 | MediaPlayerPluginInterface *iface = 0; | 147 | MediaPlayerPluginInterface *iface = 0; |
144 | QLibrary *lib = new QLibrary( path + "/" + *it ); | 148 | QLibrary *lib = new QLibrary( path + "/" + *it ); |
145 | // qDebug( "querying: %s", QString( path + "/" + *it ).latin1() ); | 149 | // odebug << "querying: " << QString( path + "/" + *it ) << "" << oendl; |
146 | 150 | ||
147 | if ( lib->queryInterface( IID_MediaPlayerPlugin, (QUnknownInterface**)&iface ) == QS_OK ) { | 151 | if ( lib->queryInterface( IID_MediaPlayerPlugin, (QUnknownInterface**)&iface ) == QS_OK ) { |
148 | 152 | ||
149 | // qDebug( "loading: %s", QString( path + "/" + *it ).latin1() ); | 153 | // odebug << "loading: " << QString( path + "/" + *it ) << "" << oendl; |
150 | 154 | ||
151 | MediaPlayerPlugin plugin; | 155 | MediaPlayerPlugin plugin; |
152 | plugin.library = lib; | 156 | plugin.library = lib; |
153 | plugin.iface = iface; | 157 | plugin.iface = iface; |
154 | plugin.decoder = plugin.iface->decoder(); | 158 | plugin.decoder = plugin.iface->decoder(); |
155 | plugin.encoder = plugin.iface->encoder(); | 159 | plugin.encoder = plugin.iface->encoder(); |
156 | pluginList.append( plugin ); | 160 | pluginList.append( plugin ); |
157 | 161 | ||
158 | // ### hack to get true sample count | 162 | // ### hack to get true sample count |
159 | if ( plugin.decoder->pluginName() == QString("LibMpeg3Plugin") ) | 163 | if ( plugin.decoder->pluginName() == QString("LibMpeg3Plugin") ) |
160 | libmpeg3decoder = plugin.decoder; | 164 | libmpeg3decoder = plugin.decoder; |
161 | 165 | ||