summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/ScreenSharing/OutgoingScreenSharing.cpp')
-rw-r--r--Swiften/ScreenSharing/OutgoingScreenSharing.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/Swiften/ScreenSharing/OutgoingScreenSharing.cpp b/Swiften/ScreenSharing/OutgoingScreenSharing.cpp
index 6700a32..1abf0ac 100644
--- a/Swiften/ScreenSharing/OutgoingScreenSharing.cpp
+++ b/Swiften/ScreenSharing/OutgoingScreenSharing.cpp
@@ -23,8 +23,8 @@
namespace Swift {
-OutgoingScreenSharing::OutgoingScreenSharing(boost::shared_ptr<JingleSession> session, UDPSocketFactory* udpSocketFactory, TimerFactory* timerFactory, const JID &toJID)
- : ScreenSharing(session, udpSocketFactory),
+OutgoingScreenSharing::OutgoingScreenSharing(boost::shared_ptr<JingleSession> session, UDPSocketFactory* udpSocketFactory, ConnectivityManager* connectivityManager, TimerFactory* timerFactory, const JID &toJID)
+ : ScreenSharing(session, udpSocketFactory, connectivityManager),
timerFactory(timerFactory), recipient(toJID), contentID(JingleContentID(idGenerator.generateID(), JingleContentPayload::InitiatorCreator)),
canceled(false), sessionAccepted(false), socketConnected(false), encoder(0), packetizer(0)
{
@@ -73,6 +73,7 @@ void OutgoingScreenSharing::start(unsigned int width, unsigned int height)
void OutgoingScreenSharing::addImage(const Image &image)
{
+ rtpSession->poll();
encoder->encodeImage(image);
}
@@ -137,6 +138,7 @@ void OutgoingScreenSharing::startRTPSession()
encoder = new VP8Encoder(packetizer, width, height);
packetizer->onNewPayloadReady.connect(boost::bind(&OutgoingScreenSharing::handleNewPayloadReady, this, _1, _2));
rtpSession->onRPSIFeedback.connect(boost::bind(&VP8Encoder::handleRPSIFeedback, static_cast<VP8Encoder*>(encoder), _1));
+ rtpSession->onSLIFeedback.connect(boost::bind(&VP8Encoder::handleSLIFeedback, static_cast<VP8Encoder*>(encoder), _1));
onReady();
onStateChange(ScreenSharing::BroadCasting);
}