[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdelibs/arts/kde
From: Matthias Welwarsky <matze () stud ! fbi ! fh-darmstadt ! de>
Date: 2002-12-08 10:46:08
[Download RAW message or body]
CVS commit by welwarsky:
fix for BR50183, BR51398
M +8 -4 kioinputstream_impl.cpp 1.26
M +1 -0 kioinputstream_impl.h 1.19
M +10 -4 kplayobjectcreator.cc 1.3
M +1 -0 kplayobjectcreator.h 1.2
--- kdelibs/arts/kde/kplayobjectcreator.cc 1.3:
@@ -92,7 +92,13 @@ void KDE::PlayObjectCreator::slotMimeTyp
emit playObjectCreated(Arts::PlayObject::null());
- emit playObjectCreated (
- m_server.createPlayObjectForStream(
- m_instream, std::string(mimetype_copy.latin1()), m_createBUS)
- );
+ playObject = m_server.createPlayObjectForStream(
+ m_instream,
+ std::string( mimetype_copy.latin1() ),
+ m_createBUS );
+ if ( playObject.isNull() ) {
+ m_instream.streamEnd();
+ emit playObjectCreated( Arts::PlayObject::null() );
+ return;
+ }
+ emit playObjectCreated( playObject );
}
--- kdelibs/arts/kde/kplayobjectcreator.h 1.2:
@@ -48,4 +48,5 @@ private:
Arts::SoundServerV2 m_server;
Arts::KIOInputStream m_instream;
+ Arts::PlayObject playObject;
bool m_createBUS;
};
--- kdelibs/arts/kde/kioinputstream_impl.cpp 1.26:
@@ -42,7 +42,7 @@
using namespace Arts;
-const unsigned int KIOInputStream_impl::PACKET_COUNT = 5;
+const unsigned int KIOInputStream_impl::PACKET_COUNT = 10;
-KIOInputStream_impl::KIOInputStream_impl() : m_packetSize(1024)
+KIOInputStream_impl::KIOInputStream_impl() : m_packetSize(2048)
{
m_job = 0;
@@ -53,4 +53,5 @@ KIOInputStream_impl::KIOInputStream_impl
m_streamStarted = false;
m_streamSuspended = false;
+ m_streamPulled = false;
}
@@ -102,9 +103,11 @@ void KIOInputStream_impl::streamEnd()
this, SLOT(slotScanMimeType(KIO::Job *, const \
QString &)));
+ if ( m_streamPulled )
+ outdata.endPull();
+
m_job->kill();
m_job = 0;
}
- outdata.endPull();
m_streamStarted = false;
}
@@ -187,8 +190,9 @@ void KIOInputStream_impl::processQueue()
if (!m_firstBuffer) {
if(m_data.size() < (m_packetBuffer * m_packetSize * 2) ) {
- kdDebug() << "STREAMING: Buffering in progress... (Needed \
bytes before it starts to play: " << ((m_packetBuffer * m_packetSize) - \
m_data.size()) << ")" << endl; + kdDebug() << "STREAMING: \
Buffering in progress... (Needed bytes before it starts to play: " << \
((m_packetBuffer * m_packetSize * 2) - m_data.size()) << ")" << endl; return;
} else {
m_firstBuffer = true;
+ m_streamPulled = true;
outdata.setPull(PACKET_COUNT, m_packetSize);
}
--- kdelibs/arts/kde/kioinputstream_impl.h 1.19:
@@ -75,4 +75,5 @@ private:
bool m_streamStarted;
bool m_streamSuspended;
+ bool m_streamPulled;
unsigned int m_packetBuffer;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic