summaryrefslogtreecommitdiff
path: root/core/multimedia/opieplayer/mediaplayerstate.cpp
authorllornkcor <llornkcor>2002-02-25 01:35:47 (UTC)
committer llornkcor <llornkcor>2002-02-25 01:35:47 (UTC)
commitf180c1a5e8fc889ff1fb390d5cc94cdbc5085046 (patch) (unidiff)
tree5e9ea6f1313f4c33d57fb266523c1cfbe0826756 /core/multimedia/opieplayer/mediaplayerstate.cpp
parentc0446b55fc32b7fdea9f58db06e40da703f5e8ff (diff)
downloadopie-f180c1a5e8fc889ff1fb390d5cc94cdbc5085046.zip
opie-f180c1a5e8fc889ff1fb390d5cc94cdbc5085046.tar.gz
opie-f180c1a5e8fc889ff1fb390d5cc94cdbc5085046.tar.bz2
fucked up- no workie.. back out
Diffstat (limited to 'core/multimedia/opieplayer/mediaplayerstate.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/multimedia/opieplayer/mediaplayerstate.cpp68
1 files changed, 31 insertions, 37 deletions
diff --git a/core/multimedia/opieplayer/mediaplayerstate.cpp b/core/multimedia/opieplayer/mediaplayerstate.cpp
index 2a6bca3..7e82166 100644
--- a/core/multimedia/opieplayer/mediaplayerstate.cpp
+++ b/core/multimedia/opieplayer/mediaplayerstate.cpp
@@ -1,7 +1,7 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
@@ -19,15 +19,13 @@
19**********************************************************************/ 19**********************************************************************/
20#include <qpe/qpeapplication.h> 20#include <qpe/qpeapplication.h>
21#include <qpe/qlibrary.h> 21#include <qpe/qlibrary.h>
22#include <qpe/mediaplayerplugininterface.h>
22#include <qpe/config.h> 23#include <qpe/config.h>
23#include <qvaluelist.h> 24#include <qvaluelist.h>
24#include <qobject.h> 25#include <qobject.h>
25#include <qdir.h> 26#include <qdir.h>
26#include "mediaplayerplugininterface.h"
27#include "mediaplayerstate.h" 27#include "mediaplayerstate.h"
28 28
29
30
31#ifdef QT_NO_COMPONENT 29#ifdef QT_NO_COMPONENT
32// Plugins which are compiled in when no plugin architecture available 30// Plugins which are compiled in when no plugin architecture available
33#include "libmad/libmadpluginimpl.h" 31#include "libmad/libmadpluginimpl.h"
@@ -36,8 +34,8 @@
36#endif 34#endif
37 35
38 36
39//#define MediaPlayerDebug(x) qDebug x 37 #define MediaPlayerDebug(x)qDebug x
40#define MediaPlayerDebug(x) 38//#define MediaPlayerDebug(x)
41 39
42 40
43MediaPlayerState::MediaPlayerState( QObject *parent, const char *name ) 41MediaPlayerState::MediaPlayerState( QObject *parent, const char *name )
@@ -97,10 +95,10 @@ MediaPlayerDecoder *MediaPlayerState::newDecoder( const QString& file ) {
97 MediaPlayerDecoder *tmpDecoder = NULL; 95 MediaPlayerDecoder *tmpDecoder = NULL;
98 QValueList<MediaPlayerPlugin>::Iterator it; 96 QValueList<MediaPlayerPlugin>::Iterator it;
99 for ( it = pluginList.begin(); it != pluginList.end(); ++it ) { 97 for ( it = pluginList.begin(); it != pluginList.end(); ++it ) {
100 if ( (*it).decoder->isFileSupported( file ) ) { 98 if ( (*it).decoder->isFileSupported( file ) ) {
101 tmpDecoder = (*it).decoder; 99 tmpDecoder = (*it).decoder;
102 break; 100 break;
103 } 101 }
104 } 102 }
105 return decoder = tmpDecoder; 103 return decoder = tmpDecoder;
106} 104}
@@ -116,19 +114,15 @@ MediaPlayerDecoder *MediaPlayerState::libMpeg3Decoder() {
116 return libmpeg3decoder; 114 return libmpeg3decoder;
117} 115}
118 116
119// ### hack to get true sample count
120// MediaPlayerDecoder *MediaPlayerState::libWavDecoder() {
121// return libwavdecoder;
122// }
123 117
124void MediaPlayerState::loadPlugins() { 118void MediaPlayerState::loadPlugins() {
125 119
126#ifndef QT_NO_COMPONENT 120#ifndef QT_NO_COMPONENT
127 QValueList<MediaPlayerPlugin>::Iterator mit; 121 QValueList<MediaPlayerPlugin>::Iterator mit;
128 for ( mit = pluginList.begin(); mit != pluginList.end(); ++mit ) { 122 for ( mit = pluginList.begin(); mit != pluginList.end(); ++mit ) {
129 (*mit).iface->release(); 123 (*mit).iface->release();
130 (*mit).library->unload(); 124 (*mit).library->unload();
131 delete (*mit).library; 125 delete (*mit).library;
132 } 126 }
133 pluginList.clear(); 127 pluginList.clear();
134 128
@@ -137,29 +131,29 @@ void MediaPlayerState::loadPlugins() {
137 QStringList list = dir.entryList(); 131 QStringList list = dir.entryList();
138 QStringList::Iterator it; 132 QStringList::Iterator it;
139 for ( it = list.begin(); it != list.end(); ++it ) { 133 for ( it = list.begin(); it != list.end(); ++it ) {
140 MediaPlayerPluginInterface *iface = 0; 134 MediaPlayerPluginInterface *iface = 0;
141 QLibrary *lib = new QLibrary( path + "/" + *it ); 135 QLibrary *lib = new QLibrary( path + "/" + *it );
142 136
143 MediaPlayerDebug(( "querying: %s", QString( path + "/" + *it ).latin1() )); 137 MediaPlayerDebug(( "querying: %s", QString( path + "/" + *it ).latin1() ));
144 138
145 if ( lib->queryInterface( IID_MediaPlayerPlugin, (QUnknownInterface**)&iface ) == QS_OK ) { 139 if ( lib->queryInterface( IID_MediaPlayerPlugin, (QUnknownInterface**)&iface ) == QS_OK ) {
146 140
147 MediaPlayerDebug(( "loading: %s", QString( path + "/" + *it ).latin1() )); 141 MediaPlayerDebug(( "loading: %s", QString( path + "/" + *it ).latin1() ));
148 142
149 MediaPlayerPlugin plugin; 143 MediaPlayerPlugin plugin;
150 plugin.library = lib; 144 plugin.library = lib;
151 plugin.iface = iface; 145 plugin.iface = iface;
152 plugin.decoder = plugin.iface->decoder(); 146 plugin.decoder = plugin.iface->decoder();
153 plugin.encoder = plugin.iface->encoder(); 147 plugin.encoder = plugin.iface->encoder();
154 pluginList.append( plugin ); 148 pluginList.append( plugin );
155 149
156 // ### hack to get true sample count 150 // ### hack to get true sample count
157 if ( plugin.decoder->pluginName() == QString("LibMpeg3Plugin") ) 151 if ( plugin.decoder->pluginName() == QString("LibMpeg3Plugin") )
158 libmpeg3decoder = plugin.decoder; 152 libmpeg3decoder = plugin.decoder;
159 153
160 } else { 154 } else {
161 delete lib; 155 delete lib;
162 } 156 }
163 } 157 }
164#else 158#else
165 pluginList.clear(); 159 pluginList.clear();
@@ -184,8 +178,8 @@ void MediaPlayerState::loadPlugins() {
184#endif 178#endif
185 179
186 if ( pluginList.count() ) 180 if ( pluginList.count() )
187 MediaPlayerDebug(( "%i decoders found", pluginList.count() )); 181 MediaPlayerDebug(( "%i decoders found", pluginList.count() ));
188 else 182 else
189 MediaPlayerDebug(( "No decoders found" )); 183 MediaPlayerDebug(( "No decoders found" ));
190} 184}
191 185