author | chicken <chicken> | 2003-11-17 19:28:21 (UTC) |
---|---|---|
committer | chicken <chicken> | 2003-11-17 19:28:21 (UTC) |
commit | 56f2b27abab0cbae7548b43be4509965b37e3a92 (patch) (side-by-side diff) | |
tree | 210dc84c5dbb1a93aaa5ae358a38a3de3510f493 /noncore | |
parent | 8515000ba00ec666ee5e68fdd3c2786186093b93 (diff) | |
download | opie-56f2b27abab0cbae7548b43be4509965b37e3a92.zip opie-56f2b27abab0cbae7548b43be4509965b37e3a92.tar.gz opie-56f2b27abab0cbae7548b43be4509965b37e3a92.tar.bz2 |
merge branch with head
-rw-r--r-- | noncore/multimedia/opieplayer2/config.in | 4 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/lib.cpp | 6 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/main.cpp | 9 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/mediaplayer.cpp | 1 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/mediawidget.cpp | 2 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/opie-mediaplayer2.control | 4 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/opieplayer2.pro | 9 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 69 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.h | 7 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidgetgui.cpp | 10 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidgetgui.h | 4 |
11 files changed, 67 insertions, 58 deletions
diff --git a/noncore/multimedia/opieplayer2/config.in b/noncore/multimedia/opieplayer2/config.in index 27142a8..2272a9b 100644 --- a/noncore/multimedia/opieplayer2/config.in +++ b/noncore/multimedia/opieplayer2/config.in @@ -1,6 +1,4 @@ config OPIEPLAYER2 - boolean "opie-mediaplayer2 (streaming capable media player for mp3, mpeg, wav, ogg, quicktime, divx and more)" + boolean "opieplayer2" default "n" depends ( LIBQPE || LIBQPE-X11 ) && LIBOPIE - comment "opie-mediaplayer2-skin-default-landscape automatically selected" - depends OPIEPLAYER2 diff --git a/noncore/multimedia/opieplayer2/lib.cpp b/noncore/multimedia/opieplayer2/lib.cpp index 11ad745..00cfa33 100644 --- a/noncore/multimedia/opieplayer2/lib.cpp +++ b/noncore/multimedia/opieplayer2/lib.cpp @@ -1,5 +1,5 @@ - /* +/* This file is part of the Opie Project Copyright (c) 2002 Max Reiss <harlekin@handhelds.org> Copyright (c) 2002 LJP <> @@ -86,9 +86,9 @@ Lib::Lib( InitializationMode initMode, XineVideoWidget* widget ) ts << "misc.memcpy_method:glibc\n"; ts << "# uncomment if you experience double speed audio \n #audio.oss_sync_method:softsync\n"; ts << "codec.ffmpeg_pp_quality:3\n"; ts << "audio.num_buffers:50\n"; - ts << "audio.size_buffers:4160\n"; + ts << "audio.size_buffers:4096\n"; ts << "video.num_buffers:20\n"; ts << "video.size_buffers:4096\n"; ts << "audio.out_num_audio_buf:16\n"; ts << "audio.out_size_audio_buf:8096\n"; @@ -269,9 +269,9 @@ int Lib::length() const { int pos, time, length; /* dilb: patch to solve the wrong stream length reported to the GUI*/ int iRetVal=0, iTestLoop=0; - + do { iRetVal = xine_get_pos_length( m_stream, &pos, &time, &length ); if (iRetVal) diff --git a/noncore/multimedia/opieplayer2/main.cpp b/noncore/multimedia/opieplayer2/main.cpp index f87cee8..b0a22b2 100644 --- a/noncore/multimedia/opieplayer2/main.cpp +++ b/noncore/multimedia/opieplayer2/main.cpp @@ -3,8 +3,15 @@ #include "mediaplayerstate.h" #include "playlistwidget.h" #include "mediaplayer.h" + + +#include <opie/oapplicationfactory.h> + +OPIE_EXPORT_APP( OApplicationFactory<PlayListWidget> ) + +#if 0 int main(int argc, char **argv) { QPEApplication a(argc,argv); MediaPlayerState st( 0, "mediaPlayerState" ); @@ -17,6 +24,6 @@ int main(int argc, char **argv) { a.showMainDocumentWidget(&pl); return a.exec(); } - +#endif diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp index 4c9afca..9f51006 100644 --- a/noncore/multimedia/opieplayer2/mediaplayer.cpp +++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp @@ -282,9 +282,8 @@ void MediaPlayer::timerEvent( QTimerEvent * ) { } void MediaPlayer::blank( bool b ) { -// ### FIXME use ODevice::inst()->setDisplayStatus( b ); fd=open("/dev/fb0",O_RDWR); #ifdef QT_QWS_SL5XXX fl= open( "/dev/fl", O_RDWR ); #endif diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp index b1f88c9..f193001 100644 --- a/noncore/multimedia/opieplayer2/mediawidget.cpp +++ b/noncore/multimedia/opieplayer2/mediawidget.cpp @@ -25,10 +25,8 @@ #include "mediawidget.h" #include "playlistwidget.h" #include "skin.h" -#include <assert.h> - MediaWidget::MediaWidget( PlayListWidget &_playList, MediaPlayerState &_mediaPlayerState, QWidget *parent, const char *name ) : QWidget( parent, name ), mediaPlayerState( _mediaPlayerState ), playList( _playList ) { connect( &mediaPlayerState, SIGNAL( displayTypeChanged( MediaPlayerState::DisplayType ) ), diff --git a/noncore/multimedia/opieplayer2/opie-mediaplayer2.control b/noncore/multimedia/opieplayer2/opie-mediaplayer2.control index 8e68c57..3e3e856 100644 --- a/noncore/multimedia/opieplayer2/opie-mediaplayer2.control +++ b/noncore/multimedia/opieplayer2/opie-mediaplayer2.control @@ -3,9 +3,9 @@ Files: plugins/application/libopieplayer2.so* bin/opieplayer2 apps/Applications Priority: optional Section: opie/applications Maintainer: L.J.Potter <ljp@llornkcor.com>, Maximilian Reiss <harlekin@handhelds.org> Architecture: arm -Depends: task-opie-minimal, libopie1, zlib1g, opie-mediaplayer2-skin-default | opie-mediaplayer2-skin-default-landscape , libxine1 | opie-mediaplayer2-codecs -Description: The Opie media player II +Depends: task-opie-minimal, libopie1, zlib1g, libstdc++2.10-glibc2.2, opie-mediaplayer2-skin-default | opie-mediaplayer2-skin-default-landscape , libxine1 | opie-mediaplayer2-codecs +Description: The Opie media player The mediaplayer for Opie. It plays mp3, mpeg, wav, ogg, quicktime, divx and more. Also it is streaming capable. Version: $QPE_VERSION$EXTRAVERSION diff --git a/noncore/multimedia/opieplayer2/opieplayer2.pro b/noncore/multimedia/opieplayer2/opieplayer2.pro index 5dabbab..46e14a0 100644 --- a/noncore/multimedia/opieplayer2/opieplayer2.pro +++ b/noncore/multimedia/opieplayer2/opieplayer2.pro @@ -1,7 +1,5 @@ -TEMPLATE = app -CONFIG = qt warn_on release -DESTDIR = $(OPIEDIR)/bin +CONFIG = qt warn_on release quick-app HEADERS = playlistselection.h mediaplayerstate.h xinecontrol.h \ videowidget.h audiowidget.h playlistwidget.h om3u.h mediaplayer.h inputDialog.h \ frame.h lib.h xinevideowidget.h volumecontrol.h playlistwidgetgui.h\ alphablend.h yuv2rgb.h threadutil.h mediawidget.h playlistview.h playlistfileview.h \ @@ -20,13 +18,8 @@ DEPENDPATH += $(OPIEDIR)/include LIBS += -lqpe -lpthread -lopie -lxine -lstdc++ MOC_DIR = qpeobj OBJECTS_DIR = qpeobj -#INCLUDEPATH += $(OPIEDIR)/include -#DEPENDPATH += $(OPIEDIR)/include - - - TRANSLATIONS = ../../../i18n/de/opieplayer2.ts \ ../../../i18n/nl/opieplayer2.ts \ ../../../i18n/da/opieplayer2.ts \ ../../../i18n/xx/opieplayer2.ts \ diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index a1a1016..9a9e1ec 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp @@ -38,19 +38,24 @@ #include <qmessagebox.h> #include "playlistselection.h" #include "playlistwidget.h" +#include "mediaplayer.h" #include "mediaplayerstate.h" #include "inputDialog.h" #include "om3u.h" #include "playlistfileview.h" //only needed for the random play #include <assert.h> -PlayListWidget::PlayListWidget( MediaPlayerState &mediaPlayerState, QWidget* parent, const char* name ) - : PlayListWidgetGui( mediaPlayerState, parent, name ) , currentFileListView( 0 ) +PlayListWidget::PlayListWidget(QWidget* parent, const char* name, WFlags fl ) + : PlayListWidgetGui( parent, "playList" ) , currentFileListView( 0 ) { + mediaPlayerState = new MediaPlayerState(0, "mediaPlayerState" ); + m_mp = new MediaPlayer(*this, *mediaPlayerState, 0, "mediaPlayer"); + + d->tbAddToList = new ToolButton( bar, tr( "Add to Playlist" ), "opieplayer2/add_to_playlist", this , SLOT(addSelected() ) ); @@ -59,11 +64,11 @@ PlayListWidget::PlayListWidget( MediaPlayerState &mediaPlayerState, QWidget* par this , SLOT(removeSelected() ) ); d->tbPlay = new ToolButton( bar, tr( "Play" ), "opieplayer2/play", this , SLOT( btnPlay( bool) ), TRUE ); d->tbShuffle = new ToolButton( bar, tr( "Randomize" ),"opieplayer2/shuffle", - &mediaPlayerState, SLOT( setShuffled( bool ) ), TRUE ); + mediaPlayerState, SLOT( setShuffled( bool ) ), TRUE ); d->tbLoop = new ToolButton( bar, tr( "Loop" ), "opieplayer2/loop", - &mediaPlayerState, SLOT( setLooping( bool ) ), TRUE ); + mediaPlayerState, SLOT( setLooping( bool ) ), TRUE ); (void)new MenuItem( pmPlayList, tr( "Clear List" ), this, SLOT( clearList() ) ); (void)new MenuItem( pmPlayList, tr( "Add all audio files" ), this, SLOT( addAllMusicToList() ) ); @@ -85,13 +90,13 @@ PlayListWidget::PlayListWidget( MediaPlayerState &mediaPlayerState, QWidget* par (void)new MenuItem( pmPlayList, tr( "Rescan for Video Files" ), videoView, SLOT( scanFiles() ) ); pmView->insertItem( Resource::loadPixmap("fullscreen") , tr( "Full Screen"), - &mediaPlayerState, SLOT( toggleFullscreen() ) ); + mediaPlayerState, SLOT( toggleFullscreen() ) ); Config cfg( "OpiePlayer" ); bool b= cfg.readBoolEntry("FullScreen", 0); - mediaPlayerState.setFullscreen( b ); + mediaPlayerState->setFullscreen( b ); pmView->setItemChecked( -16, b ); (void)new ToolButton( vbox1, tr( "Move Up" ), "opieplayer2/up", d->selectedFiles, SLOT(moveSelectedUp() ) ); @@ -124,18 +129,21 @@ PlayListWidget::PlayListWidget( MediaPlayerState &mediaPlayerState, QWidget* par connect( playLists, SIGNAL( fileSelected( const DocLnk &) ), this, SLOT( loadList( const DocLnk & ) ) ); connect( tabWidget, SIGNAL ( currentChanged(QWidget*) ), this, SLOT( tabChanged( QWidget* ) ) ); - connect( &mediaPlayerState, SIGNAL( playingToggled( bool ) ), + connect( mediaPlayerState, SIGNAL( playingToggled( bool ) ), d->tbPlay, SLOT( setOn( bool ) ) ); - connect( &mediaPlayerState, SIGNAL( loopingToggled( bool ) ), + connect( mediaPlayerState, SIGNAL( loopingToggled( bool ) ), d->tbLoop, SLOT( setOn( bool ) ) ); - connect( &mediaPlayerState, SIGNAL( shuffledToggled( bool ) ), + connect( mediaPlayerState, SIGNAL( shuffledToggled( bool ) ), d->tbShuffle, SLOT( setOn( bool ) ) ); connect( d->selectedFiles, SIGNAL( doubleClicked( QListViewItem *) ), this, SLOT( playIt( QListViewItem *) ) ); connect ( gammaSlider, SIGNAL( valueChanged( int ) ), - &mediaPlayerState, SLOT( setVideoGamma( int ) ) ); + mediaPlayerState, SLOT( setVideoGamma( int ) ) ); + + connect( this, SIGNAL(skinSelected() ), + m_mp, SLOT( reloadSkins() ) ); // see which skins are installed populateSkinsMenu(); initializeStates(); @@ -154,15 +162,16 @@ PlayListWidget::PlayListWidget( MediaPlayerState &mediaPlayerState, QWidget* par PlayListWidget::~PlayListWidget() { delete d; + delete m_mp; } void PlayListWidget::initializeStates() { - d->tbPlay->setOn( mediaPlayerState.isPlaying() ); - d->tbLoop->setOn( mediaPlayerState.isLooping() ); - d->tbShuffle->setOn( mediaPlayerState.isShuffled() ); + d->tbPlay->setOn( mediaPlayerState->isPlaying() ); + d->tbLoop->setOn( mediaPlayerState->isLooping() ); + d->tbShuffle->setOn( mediaPlayerState->isShuffled() ); d->playListFrame->show(); } void PlayListWidget::writeDefaultPlaylist() { @@ -340,10 +349,10 @@ void PlayListWidget::setDocument( const QString& fileref ) { addToSelection( lnk ); writeCurrentM3u(); d->setDocumentUsed = TRUE; - mediaPlayerState.setPlaying( FALSE ); - mediaPlayerState.setPlaying( TRUE ); + mediaPlayerState->setPlaying( FALSE ); + mediaPlayerState->setPlaying( TRUE ); } } @@ -365,9 +374,9 @@ const DocLnk *PlayListWidget::current() const { // this is fugly } bool PlayListWidget::prev() { - if ( mediaPlayerState.isShuffled() ) { + if ( mediaPlayerState->isShuffled() ) { const DocLnk *cur = current(); int j = 1 + (int)(97.0 * rand() / (RAND_MAX + 1.0)); for ( int i = 0; i < j; i++ ) { if ( !d->selectedFiles->next() ) @@ -379,9 +388,9 @@ bool PlayListWidget::prev() { } return TRUE; } else { if ( !d->selectedFiles->prev() ) { - if ( mediaPlayerState.isLooping() ) { + if ( mediaPlayerState->isLooping() ) { return d->selectedFiles->last(); } else { return FALSE; } @@ -392,13 +401,13 @@ bool PlayListWidget::prev() { bool PlayListWidget::next() { //qDebug("<<<<<<<<<<<<next()"); - if ( mediaPlayerState.isShuffled() ) { + if ( mediaPlayerState->isShuffled() ) { return prev(); } else { if ( !d->selectedFiles->next() ) { - if ( mediaPlayerState.isLooping() ) { + if ( mediaPlayerState->isLooping() ) { return d->selectedFiles->first(); } else { return FALSE; } @@ -462,10 +471,10 @@ void PlayListWidget::removeSelected() { void PlayListWidget::playIt( QListViewItem *it) { if(!it) return; - mediaPlayerState.setPlaying(FALSE); - mediaPlayerState.setPlaying(TRUE); + mediaPlayerState->setPlaying(FALSE); + mediaPlayerState->setPlaying(TRUE); d->selectedFiles->unSelect(); } @@ -564,9 +573,9 @@ void PlayListWidget::tabChanged(QWidget *) { void PlayListWidget::btnPlay(bool b) { // mediaPlayerState->setPlaying(false); - mediaPlayerState.setPlaying(b); + mediaPlayerState->setPlaying(b); insanityBool=FALSE; } void PlayListWidget::deletePlaylist() { @@ -908,10 +917,10 @@ void PlayListWidget::pmViewActivated(int index) { // qDebug("%d", index); switch(index) { case -16: { - mediaPlayerState.toggleFullscreen(); - bool b=mediaPlayerState.isFullscreen(); + mediaPlayerState->toggleFullscreen(); + bool b=mediaPlayerState->isFullscreen(); pmView->setItemChecked( index, b); Config cfg( "OpiePlayer" ); cfg.writeEntry( "FullScreen", b ); } @@ -995,19 +1004,19 @@ void PlayListWidget::qcopReceive(const QCString &msg, const QByteArray &data) { QDataStream stream ( data, IO_ReadOnly ); if ( msg == "play()" ) { //plays current selection btnPlay( true); } else if ( msg == "stop()" ) { - mediaPlayerState.setPlaying( false); + mediaPlayerState->setPlaying( false); } else if ( msg == "togglePause()" ) { - mediaPlayerState.togglePaused(); + mediaPlayerState->togglePaused(); } else if ( msg == "next()" ) { //select next in list - mediaPlayerState.setNext(); + mediaPlayerState->setNext(); } else if ( msg == "prev()" ) { //select previous in list - mediaPlayerState.setPrev(); + mediaPlayerState->setPrev(); } else if ( msg == "toggleLooping()" ) { //loop or not loop - mediaPlayerState.toggleLooping(); + mediaPlayerState->toggleLooping(); } else if ( msg == "toggleShuffled()" ) { //shuffled or not shuffled - mediaPlayerState.toggleShuffled(); + mediaPlayerState->toggleShuffled(); } else if ( msg == "volUp()" ) { //volume more // emit moreClicked(); // emit moreReleased(); } else if ( msg == "volDown()" ) { //volume less diff --git a/noncore/multimedia/opieplayer2/playlistwidget.h b/noncore/multimedia/opieplayer2/playlistwidget.h index fc305cd..29f3e8d 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.h +++ b/noncore/multimedia/opieplayer2/playlistwidget.h @@ -46,8 +46,10 @@ class QListViewItem; class QListView; class QPoint; class QAction; class QLabel; +class MediaPlayerState; +class MediaPlayer; class PlayListWidget : public PlayListWidgetGui { Q_OBJECT public: @@ -64,9 +66,10 @@ public: QString name; QString file; }; - PlayListWidget( MediaPlayerState &mediaPlayerState, QWidget* parent=0, const char* name=0 ); + static QString appName() { return QString::fromLatin1("opieplayer2"); } + PlayListWidget( QWidget* parent=0, const char* name=0, WFlags = 0 ); ~PlayListWidget(); // retrieve the current playlist entry (media file link) const DocLnk *current() const; @@ -131,8 +134,10 @@ private: bool insanityBool; QString setDocFileRef, currentPlayList; int selected; QListView *currentFileListView; + + MediaPlayer *m_mp; }; #endif // PLAY_LIST_WIDGET_H diff --git a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp index 293bf45..fec91ea 100644 --- a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp @@ -45,10 +45,10 @@ #include "playlistfileview.h" #include "mediaplayerstate.h" -PlayListWidgetGui::PlayListWidgetGui( MediaPlayerState &_mediaPlayerState, QWidget* parent, const char* name ) - : QMainWindow( parent, name ), mediaPlayerState( _mediaPlayerState ) { +PlayListWidgetGui::PlayListWidgetGui(QWidget* parent, const char* name ) + : QMainWindow( parent, name ) { d = new PlayListWidgetPrivate; d->setDocumentUsed = FALSE; @@ -185,10 +185,10 @@ void PlayListWidgetGui::setView( char view ) { void PlayListWidgetGui::setActiveWindow() { // qDebug("SETTING active window"); // When we get raised we need to ensure that it switches views - MediaPlayerState::DisplayType origDisplayType = mediaPlayerState.displayType(); - mediaPlayerState.setDisplayType( MediaPlayerState::MediaSelection ); // invalidate - mediaPlayerState.setDisplayType( origDisplayType ); // now switch back + MediaPlayerState::DisplayType origDisplayType = mediaPlayerState->displayType(); + mediaPlayerState->setDisplayType( MediaPlayerState::MediaSelection ); // invalidate + mediaPlayerState->setDisplayType( origDisplayType ); // now switch back } diff --git a/noncore/multimedia/opieplayer2/playlistwidgetgui.h b/noncore/multimedia/opieplayer2/playlistwidgetgui.h index c0cd37a..5706d14 100644 --- a/noncore/multimedia/opieplayer2/playlistwidgetgui.h +++ b/noncore/multimedia/opieplayer2/playlistwidgetgui.h @@ -92,9 +92,9 @@ public: class PlayListWidgetGui : public QMainWindow { Q_OBJECT public: - PlayListWidgetGui( MediaPlayerState &_mediaPlayerState, QWidget* parent=0, const char* name=0 ); + PlayListWidgetGui( QWidget* parent=0, const char* name=0 ); ~PlayListWidgetGui(); protected: QTabWidget * tabWidget; @@ -121,9 +121,9 @@ protected: QWidget *playListTab; void setActiveWindow(); // need to handle this to show the right view void setView( char ); - MediaPlayerState &mediaPlayerState; + MediaPlayerState *mediaPlayerState; }; #endif |