mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-09 19:01:14 +02:00
have partial elements set a stop reason of DIDNT_FIT to fix partial encoding issues
This commit is contained in:
parent
f8f0da189f
commit
a3bb8b1239
3 changed files with 30 additions and 3 deletions
|
@ -489,12 +489,18 @@ qDebug() << "OctreeSendThread::packetDistributor()... line:" << __LINE__;
|
||||||
qDebug() << " _packetData.getTargetSize()=" << _packetData.getTargetSize();
|
qDebug() << " _packetData.getTargetSize()=" << _packetData.getTargetSize();
|
||||||
qDebug() << " MAX_OCTREE_PACKET_DATA_SIZE=" << MAX_OCTREE_PACKET_DATA_SIZE;
|
qDebug() << " MAX_OCTREE_PACKET_DATA_SIZE=" << MAX_OCTREE_PACKET_DATA_SIZE;
|
||||||
qDebug() << " _packetData.hasContent()=" << _packetData.hasContent();
|
qDebug() << " _packetData.hasContent()=" << _packetData.hasContent();
|
||||||
|
qDebug() << " _packetData.getUncompressedSize()=" << _packetData.getUncompressedSize();
|
||||||
|
qDebug() << " _packetData.getFinalizedSize()=" << _packetData.getFinalizedSize();
|
||||||
|
qDebug() << " _packetData.isCompressed()=" << _packetData.isCompressed();
|
||||||
qDebug() << " bytesWritten=" << bytesWritten;
|
qDebug() << " bytesWritten=" << bytesWritten;
|
||||||
|
qDebug() << " extraPackingAttempts=" << extraPackingAttempts;
|
||||||
|
qDebug() << " REASONABLE_NUMBER_OF_PACKING_ATTEMPTS=" << REASONABLE_NUMBER_OF_PACKING_ATTEMPTS;
|
||||||
|
|
||||||
|
|
||||||
if (params.stopReason == EncodeBitstreamParams::DIDNT_FIT) {
|
if (params.stopReason == EncodeBitstreamParams::DIDNT_FIT) {
|
||||||
qDebug() << " params.stopReason == EncodeBitstreamParams::DIDNT_FIT";
|
qDebug() << " params.stopReason == EncodeBitstreamParams::DIDNT_FIT";
|
||||||
} else {
|
} else {
|
||||||
qDebug() << " params.stopReason == ???";
|
qDebug() << " params.stopReason=" << params.getStopReason();
|
||||||
params.displayStopReason();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// if we're trying to fill a full size packet, then we use this logic to determine if we have a DIDNT_FIT case.
|
// if we're trying to fill a full size packet, then we use this logic to determine if we have a DIDNT_FIT case.
|
||||||
|
|
|
@ -1472,6 +1472,8 @@ qDebug() << " childAppendState=" << childAppendState;
|
||||||
if (childAppendState == OctreeElement::PARTIAL) {
|
if (childAppendState == OctreeElement::PARTIAL) {
|
||||||
elementAppendState = OctreeElement::PARTIAL;
|
elementAppendState = OctreeElement::PARTIAL;
|
||||||
qDebug() << " childAppendState == OctreeElement::PARTIAL ... so elementAppendState = OctreeElement::PARTIAL";
|
qDebug() << " childAppendState == OctreeElement::PARTIAL ... so elementAppendState = OctreeElement::PARTIAL";
|
||||||
|
qDebug() << " also set params.stopReason = EncodeBitstreamParams::DIDNT_FIT";
|
||||||
|
params.stopReason = EncodeBitstreamParams::DIDNT_FIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
int bytesAfterChild = packetData->getUncompressedSize();
|
int bytesAfterChild = packetData->getUncompressedSize();
|
||||||
|
@ -1753,7 +1755,9 @@ qDebug() << " line:" << __LINE__ << "elementAppendState == OctreeElement::PAR
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
qDebug() << " LEAVING... line:" << __LINE__ << "bytesAtThisLevel=" << bytesAtThisLevel;
|
qDebug() << "LEAVING... line:" << __LINE__;
|
||||||
|
qDebug() << " bytesAtThisLevel=" << bytesAtThisLevel;
|
||||||
|
qDebug() << " params.stopReason=" << params.getStopReason();
|
||||||
return bytesAtThisLevel;
|
return bytesAtThisLevel;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -156,6 +156,23 @@ public:
|
||||||
case OCCLUDED: qDebug("OCCLUDED"); break;
|
case OCCLUDED: qDebug("OCCLUDED"); break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString getStopReason() {
|
||||||
|
switch (stopReason) {
|
||||||
|
default:
|
||||||
|
case UNKNOWN: return QString("UNKNOWN"); break;
|
||||||
|
|
||||||
|
case DIDNT_FIT: return QString("DIDNT_FIT"); break;
|
||||||
|
case NULL_NODE: return QString("NULL_NODE"); break;
|
||||||
|
case TOO_DEEP: return QString("TOO_DEEP"); break;
|
||||||
|
case OUT_OF_JURISDICTION: return QString("OUT_OF_JURISDICTION"); break;
|
||||||
|
case LOD_SKIP: return QString("LOD_SKIP"); break;
|
||||||
|
case OUT_OF_VIEW: return QString("OUT_OF_VIEW"); break;
|
||||||
|
case WAS_IN_VIEW: return QString("WAS_IN_VIEW"); break;
|
||||||
|
case NO_CHANGE: return QString("NO_CHANGE"); break;
|
||||||
|
case OCCLUDED: return QString("OCCLUDED"); break;
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class ReadElementBufferToTreeArgs {
|
class ReadElementBufferToTreeArgs {
|
||||||
|
|
Loading…
Reference in a new issue