Diffstat (limited to 'core/multimedia/opieplayer/loopcontrol_threaded.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/multimedia/opieplayer/loopcontrol_threaded.cpp | 33 |
1 files changed, 16 insertions, 17 deletions
diff --git a/core/multimedia/opieplayer/loopcontrol_threaded.cpp b/core/multimedia/opieplayer/loopcontrol_threaded.cpp index 364e77b..3796549 100644 --- a/core/multimedia/opieplayer/loopcontrol_threaded.cpp +++ b/core/multimedia/opieplayer/loopcontrol_threaded.cpp @@ -19,11 +19,12 @@ **********************************************************************/ #define _REENTRANT #include <qpe/qpeapplication.h> +#include <qpe/custom.h> #include <qimage.h> #include <qpainter.h> -#ifdef Q_WS_QWS +#if !defined(QT_NO_COP) #include <qpe/qcopenvelope_qws.h> #endif #include "mediaplayerplugininterface.h" #include <stdio.h> @@ -38,11 +39,9 @@ #include "audiowidget.h" #include "mediaplayerstate.h" -#if defined(QT_QWS_SL5XXX) || defined(QT_QWS_IPAQ) || defined(QT_QWS_RAMSES) -#define USE_REALTIME_AUDIO_THREAD -#endif + extern VideoWidget *videoUI; // now only needed to tell it to play a frame extern MediaPlayerState *mediaPlayerState; @@ -255,9 +254,9 @@ void LoopControl::startVideo() { /* videoMutex->lock(); current_frame = int( (double)playtime.elapsed() * (double)framerate / 1000.0 ); //current_frame = ( clock() - begin ) * (double)framerate / CLOCKS_PER_SEC; - + // Sync to Audio // current_frame = (long)((double)(audioSampleCounter - 1000) * framerate / (double)freq); long mSecsToNextFrame = 0; @@ -311,27 +310,27 @@ void LoopControl::startVideo() { // qDebug("skipped a frame"); mediaPlayerState->curDecoder()->videoSetFrame( current_frame, stream ); } prev_frame = current_frame; - if ( moreVideo = videoUI->playVideo() ) + if ( moreVideo = videoUI->playVideo() ) emitChangePos = TRUE; videoMutex->unlock(); } - } else + } else moreVideo = FALSE; } - if ( !moreVideo && !moreAudio ) + if ( !moreVideo && !moreAudio ) emitPlayFinished = TRUE; pthread_exit(NULL); } void LoopControl::startAudio() { moreAudio = TRUE; - + while ( moreAudio ) { if ( !isMuted && mediaPlayerState->curDecoder() && hasAudioChannel ) { @@ -403,9 +402,9 @@ void LoopControl::startAudio() { } // qDebug( "End of file" ); - if ( !moreVideo && !moreAudio ) + if ( !moreVideo && !moreAudio ) emitPlayFinished = TRUE; pthread_exit(NULL); } @@ -483,9 +482,9 @@ void LoopControl::setPaused( bool pause ) { void LoopControl::stop( bool willPlayAgainShortly ) { #if defined(Q_WS_QWS) && !defined(QT_NO_COP) if ( !willPlayAgainShortly && disabledSuspendScreenSaver ) { - disabledSuspendScreenSaver = FALSE; + disabledSuspendScreenSaver = FALSE; // Re-enable the suspend mode QCopEnvelope("QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable; } #endif @@ -511,11 +510,11 @@ bool LoopControl::init( const QString& filename ) { stop(); fileName = filename; stream = 0; // only play stream 0 for now current_frame = total_video_frames = total_audio_samples = 0; - + // qDebug( "Using the %s decoder", mediaPlayerState->curDecoder()->pluginName() ); - + // ### Hack to use libmpeg3plugin to get the number of audio samples if we are using the libmad plugin if ( mediaPlayerState->curDecoder()->pluginName() == QString("LibMadPlugin") ) { if ( mediaPlayerState->libMpeg3Decoder() && mediaPlayerState->libMpeg3Decoder()->open( filename ) ) { total_audio_samples = mediaPlayerState->libMpeg3Decoder()->audioSamples( 0 ); @@ -533,14 +532,14 @@ bool LoopControl::init( const QString& filename ) { int astream = 0; channels = mediaPlayerState->curDecoder()->audioChannels( astream ); DecodeLoopDebug(( "channels = %d\n", channels )); - + if ( !total_audio_samples ) total_audio_samples = mediaPlayerState->curDecoder()->audioSamples( astream ); mediaPlayerState->setLength( total_audio_samples ); - + freq = mediaPlayerState->curDecoder()->audioFrequency( astream ); DecodeLoopDebug(( "frequency = %d\n", freq )); audioSampleCounter = 0; @@ -593,11 +592,11 @@ bool LoopControl::init( const QString& filename ) { void LoopControl::play() { #if defined(Q_WS_QWS) && !defined(QT_NO_COP) if ( !disabledSuspendScreenSaver ) { - disabledSuspendScreenSaver = TRUE; + disabledSuspendScreenSaver = TRUE; // Stop the screen from blanking and power saving state - QCopEnvelope("QPE/System", "setScreenSaverMode(int)" ) + QCopEnvelope("QPE/System", "setScreenSaverMode(int)" ) << ( hasVideoChannel ? QPEApplication::Disable : QPEApplication::DisableSuspend ); } #endif |