Loading media/libstagefright/wifi-display/ANetworkSession.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -565,7 +565,7 @@ status_t ANetworkSession::Session::writeMore() { mSawSendFailure = true; } #if 1 #if 0 int numBytesQueued; int res = ioctl(mSocket, SIOCOUTQ, &numBytesQueued); if (res == 0 && numBytesQueued > 50 * 1024) { Loading @@ -576,7 +576,7 @@ status_t ANetworkSession::Session::writeMore() { int64_t nowUs = ALooper::GetNowUs(); if (mLastStallReportUs < 0ll || nowUs > mLastStallReportUs + 500000ll) { || nowUs > mLastStallReportUs + 100000ll) { sp<AMessage> msg = mNotify->dup(); msg->setInt32("sessionID", mSessionID); msg->setInt32("reason", kWhatNetworkStall); Loading media/libstagefright/wifi-display/MediaReceiver.cpp +7 −7 Original line number Diff line number Diff line Loading @@ -47,7 +47,8 @@ MediaReceiver::~MediaReceiver() { } ssize_t MediaReceiver::addTrack( RTPReceiver::TransportMode transportMode, RTPReceiver::TransportMode rtpMode, RTPReceiver::TransportMode rtcpMode, int32_t *localRTPPort) { if (mMode != MODE_UNDEFINED) { return INVALID_OPERATION; Loading @@ -74,10 +75,8 @@ ssize_t MediaReceiver::addTrack( 97, RTPReceiver::PACKETIZATION_H264); status_t err = info.mReceiver->initAsync( transportMode, // rtpMode transportMode == RTPReceiver::TRANSPORT_UDP ? transportMode : RTPReceiver::TRANSPORT_NONE, // rtcpMode rtpMode, rtcpMode, localRTPPort); if (err != OK) { Loading Loading @@ -314,13 +313,14 @@ void MediaReceiver::postAccessUnit( notify->post(); } status_t MediaReceiver::notifyLateness(size_t trackIndex, int64_t latenessUs) { status_t MediaReceiver::informSender( size_t trackIndex, const sp<AMessage> ¶ms) { if (trackIndex >= mTrackInfos.size()) { return -ERANGE; } TrackInfo *info = &mTrackInfos.editItemAt(trackIndex); return info->mReceiver->notifyLateness(latenessUs); return info->mReceiver->informSender(params); } } // namespace android Loading media/libstagefright/wifi-display/MediaReceiver.h +3 −2 Original line number Diff line number Diff line Loading @@ -43,7 +43,8 @@ struct MediaReceiver : public AHandler { const sp<AMessage> ¬ify); ssize_t addTrack( RTPReceiver::TransportMode transportMode, RTPReceiver::TransportMode rtpMode, RTPReceiver::TransportMode rtcpMode, int32_t *localRTPPort); status_t connectTrack( Loading @@ -60,7 +61,7 @@ struct MediaReceiver : public AHandler { }; status_t initAsync(Mode mode); status_t notifyLateness(size_t trackIndex, int64_t latenessUs); status_t informSender(size_t trackIndex, const sp<AMessage> ¶ms); protected: virtual void onMessageReceived(const sp<AMessage> &msg); Loading media/libstagefright/wifi-display/MediaSender.cpp +22 −10 Original line number Diff line number Diff line Loading @@ -85,10 +85,11 @@ ssize_t MediaSender::addTrack(const sp<AMessage> &format, uint32_t flags) { status_t MediaSender::initAsync( ssize_t trackIndex, RTPSender::TransportMode transportMode, const char *remoteHost, int32_t remoteRTPPort, RTPSender::TransportMode rtpMode, int32_t remoteRTCPPort, RTPSender::TransportMode rtcpMode, int32_t *localRTPPort) { if (trackIndex < 0) { if (mMode != MODE_UNDEFINED) { Loading Loading @@ -126,12 +127,9 @@ status_t MediaSender::initAsync( err = mTSSender->initAsync( remoteHost, remoteRTPPort, transportMode, // rtpMode rtpMode, remoteRTCPPort, (transportMode == RTPSender::TRANSPORT_UDP && remoteRTCPPort >= 0) ? transportMode : RTPSender::TRANSPORT_NONE, // rtcpMode rtcpMode, localRTPPort); if (err != OK) { Loading Loading @@ -180,11 +178,9 @@ status_t MediaSender::initAsync( status_t err = info->mSender->initAsync( remoteHost, remoteRTPPort, transportMode, // rtpMode rtpMode, remoteRTCPPort, (transportMode == RTPSender::TRANSPORT_UDP && remoteRTCPPort >= 0) ? transportMode : RTPSender::TRANSPORT_NONE, // rtcpMode rtcpMode, localRTPPort); if (err != OK) { Loading Loading @@ -345,6 +341,22 @@ void MediaSender::onSenderNotify(const sp<AMessage> &msg) { break; } case kWhatInformSender: { int64_t avgLatencyUs; CHECK(msg->findInt64("avgLatencyUs", &avgLatencyUs)); int64_t maxLatencyUs; CHECK(msg->findInt64("maxLatencyUs", &maxLatencyUs)); sp<AMessage> notify = mNotify->dup(); notify->setInt32("what", kWhatInformSender); notify->setInt64("avgLatencyUs", avgLatencyUs); notify->setInt64("maxLatencyUs", maxLatencyUs); notify->post(); break; } default: TRESPASS(); } Loading media/libstagefright/wifi-display/MediaSender.h +3 −1 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ struct MediaSender : public AHandler { kWhatInitDone, kWhatError, kWhatNetworkStall, kWhatInformSender, }; MediaSender( Loading @@ -59,10 +60,11 @@ struct MediaSender : public AHandler { // If trackIndex == -1, initialize for transport stream muxing. status_t initAsync( ssize_t trackIndex, RTPSender::TransportMode transportMode, const char *remoteHost, int32_t remoteRTPPort, RTPSender::TransportMode rtpMode, int32_t remoteRTCPPort, RTPSender::TransportMode rtcpMode, int32_t *localRTPPort); status_t queueAccessUnit( Loading Loading
media/libstagefright/wifi-display/ANetworkSession.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -565,7 +565,7 @@ status_t ANetworkSession::Session::writeMore() { mSawSendFailure = true; } #if 1 #if 0 int numBytesQueued; int res = ioctl(mSocket, SIOCOUTQ, &numBytesQueued); if (res == 0 && numBytesQueued > 50 * 1024) { Loading @@ -576,7 +576,7 @@ status_t ANetworkSession::Session::writeMore() { int64_t nowUs = ALooper::GetNowUs(); if (mLastStallReportUs < 0ll || nowUs > mLastStallReportUs + 500000ll) { || nowUs > mLastStallReportUs + 100000ll) { sp<AMessage> msg = mNotify->dup(); msg->setInt32("sessionID", mSessionID); msg->setInt32("reason", kWhatNetworkStall); Loading
media/libstagefright/wifi-display/MediaReceiver.cpp +7 −7 Original line number Diff line number Diff line Loading @@ -47,7 +47,8 @@ MediaReceiver::~MediaReceiver() { } ssize_t MediaReceiver::addTrack( RTPReceiver::TransportMode transportMode, RTPReceiver::TransportMode rtpMode, RTPReceiver::TransportMode rtcpMode, int32_t *localRTPPort) { if (mMode != MODE_UNDEFINED) { return INVALID_OPERATION; Loading @@ -74,10 +75,8 @@ ssize_t MediaReceiver::addTrack( 97, RTPReceiver::PACKETIZATION_H264); status_t err = info.mReceiver->initAsync( transportMode, // rtpMode transportMode == RTPReceiver::TRANSPORT_UDP ? transportMode : RTPReceiver::TRANSPORT_NONE, // rtcpMode rtpMode, rtcpMode, localRTPPort); if (err != OK) { Loading Loading @@ -314,13 +313,14 @@ void MediaReceiver::postAccessUnit( notify->post(); } status_t MediaReceiver::notifyLateness(size_t trackIndex, int64_t latenessUs) { status_t MediaReceiver::informSender( size_t trackIndex, const sp<AMessage> ¶ms) { if (trackIndex >= mTrackInfos.size()) { return -ERANGE; } TrackInfo *info = &mTrackInfos.editItemAt(trackIndex); return info->mReceiver->notifyLateness(latenessUs); return info->mReceiver->informSender(params); } } // namespace android Loading
media/libstagefright/wifi-display/MediaReceiver.h +3 −2 Original line number Diff line number Diff line Loading @@ -43,7 +43,8 @@ struct MediaReceiver : public AHandler { const sp<AMessage> ¬ify); ssize_t addTrack( RTPReceiver::TransportMode transportMode, RTPReceiver::TransportMode rtpMode, RTPReceiver::TransportMode rtcpMode, int32_t *localRTPPort); status_t connectTrack( Loading @@ -60,7 +61,7 @@ struct MediaReceiver : public AHandler { }; status_t initAsync(Mode mode); status_t notifyLateness(size_t trackIndex, int64_t latenessUs); status_t informSender(size_t trackIndex, const sp<AMessage> ¶ms); protected: virtual void onMessageReceived(const sp<AMessage> &msg); Loading
media/libstagefright/wifi-display/MediaSender.cpp +22 −10 Original line number Diff line number Diff line Loading @@ -85,10 +85,11 @@ ssize_t MediaSender::addTrack(const sp<AMessage> &format, uint32_t flags) { status_t MediaSender::initAsync( ssize_t trackIndex, RTPSender::TransportMode transportMode, const char *remoteHost, int32_t remoteRTPPort, RTPSender::TransportMode rtpMode, int32_t remoteRTCPPort, RTPSender::TransportMode rtcpMode, int32_t *localRTPPort) { if (trackIndex < 0) { if (mMode != MODE_UNDEFINED) { Loading Loading @@ -126,12 +127,9 @@ status_t MediaSender::initAsync( err = mTSSender->initAsync( remoteHost, remoteRTPPort, transportMode, // rtpMode rtpMode, remoteRTCPPort, (transportMode == RTPSender::TRANSPORT_UDP && remoteRTCPPort >= 0) ? transportMode : RTPSender::TRANSPORT_NONE, // rtcpMode rtcpMode, localRTPPort); if (err != OK) { Loading Loading @@ -180,11 +178,9 @@ status_t MediaSender::initAsync( status_t err = info->mSender->initAsync( remoteHost, remoteRTPPort, transportMode, // rtpMode rtpMode, remoteRTCPPort, (transportMode == RTPSender::TRANSPORT_UDP && remoteRTCPPort >= 0) ? transportMode : RTPSender::TRANSPORT_NONE, // rtcpMode rtcpMode, localRTPPort); if (err != OK) { Loading Loading @@ -345,6 +341,22 @@ void MediaSender::onSenderNotify(const sp<AMessage> &msg) { break; } case kWhatInformSender: { int64_t avgLatencyUs; CHECK(msg->findInt64("avgLatencyUs", &avgLatencyUs)); int64_t maxLatencyUs; CHECK(msg->findInt64("maxLatencyUs", &maxLatencyUs)); sp<AMessage> notify = mNotify->dup(); notify->setInt32("what", kWhatInformSender); notify->setInt64("avgLatencyUs", avgLatencyUs); notify->setInt64("maxLatencyUs", maxLatencyUs); notify->post(); break; } default: TRESPASS(); } Loading
media/libstagefright/wifi-display/MediaSender.h +3 −1 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ struct MediaSender : public AHandler { kWhatInitDone, kWhatError, kWhatNetworkStall, kWhatInformSender, }; MediaSender( Loading @@ -59,10 +60,11 @@ struct MediaSender : public AHandler { // If trackIndex == -1, initialize for transport stream muxing. status_t initAsync( ssize_t trackIndex, RTPSender::TransportMode transportMode, const char *remoteHost, int32_t remoteRTPPort, RTPSender::TransportMode rtpMode, int32_t remoteRTCPPort, RTPSender::TransportMode rtcpMode, int32_t *localRTPPort); status_t queueAccessUnit( Loading