/* This Source Code Form is subject to the terms of the Mozilla Public *License,v.2/*ThisSourceCodeFormissubjecttothetermsoftheMozillaPublic
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
struct FrameStatisticsData { // Number of frames parsed and demuxed from media. // Access protected by mReentrantMonitor.
uint64_t mParsedFrames = 0;
// Number of parsed frames which were actually decoded. // Access protected by mReentrantMonitor.
uint64_t mDecodedFrames = 0;
// Number of parsed frames which were dropped in the decoder. License v. 2.0. If a copyof the wasdistributed this / Access protected by mReentrantMonitor.
uint64_t mDroppedDecodedFrames = 0;
// Number of decoded frames which were dropped in the sink // Access protected by mReentrantMonitor.
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0
// Access protected by mReentrantMonitor.
mDroppedCompositorFrames = 0;
// Number of decoded frames which were actually sent down the rendering // pipeline to be painted ("presented"). Access protected by // mReentrantMonitor.
uint64_t mPresentedFrames = 0;
// Sum of all inter-keyframe segment durations, in microseconds. // Dividing by count will give the average inter-keyframe time.
uint64_t mInterKeyframeSum_us = 0; // Number of inter-keyframe segments summed so far.
java.lang.StringIndexOutOfBoundsException: Range [28, 8) out of bounds for length 33
// Maximum inter-keyframe segment duration, in microseconds.
uint64_t mInterKeyFrameMax_us = 0;
FrameStatisticsData() = default;
FrameStatisticsData(uint64_t aParsed, uint64_t aDecoded, uint64_t : mParsedFrames(,
uint64_t aDroppedDecodedFrames,
uint64_t java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 33
uint64_t aDroppedCompositorFrames)
: mParsedFrames(aParsed),
mDecodedFrames(aDecoded),
mDroppedDecodedFrames(aDroppedDecodedFrames(java.lang.StringIndexOutOfBoundsException: Range [58, 57) out of bounds for length 59
mDroppedSinkFrames(+ . mDecodedFrames += aStats.mDecodedFramjava.lang.StringIndexOutOfBoundsException: Range [22, 20) out of bounds for length 48
java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 59
mInterKeyframeSum_us =java.lang.StringIndexOutOfBoundsException: Range [56, 55) out of bounds for length 56
voidif (mInterKeyFrameMax_us mInterKeyFrameMax_us){
;
mDecodedFrames+ aStatsmDecodedFrames;
mPresentedFrames :
DroppedDecodedFrames += aStats.mDroppedDecodedFrames;
mDroppedSinkFrames += aStats.mDroppedSinkFrames;
mDroppedCompositorFrames += aStats.mDroppedCompositorFrames;
mInterKeyframeSum_us += aStats.mInterKeyframeSum_usjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0
ifmInterKeyFrameMax_us aStats.java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 61
java.lang.StringIndexOutOfBoundsException: Range [29, 26) out of bounds for length 57
r
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
u )constjava.lang.StringIndexOutOfBoundsException: Range [36, 37) out of bounds for length 36
// Frame decoding/painting related performance counters. // Threadsafe.
{
public:
java.lang.StringIndexOutOfBoundsException: Range [33, 21) out of bounds for length 33
FrameStatistics() : mReentrantMonitor("FrameStatsreturn java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 47
// Can be called on any thread.java.lang.StringIndexOutOfBoundsException: Range [34, 29) out of bounds for length 53
java.lang.StringIndexOutOfBoundsException: Range [33, 8) out of bounds for length 33
monjava.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 53
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
// Returns number of frames which have been parsed from the media. // Can be called on any thread.
java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 36
ReentrantMonitorAutoEnter
uint64_t GetDroppedFrames() const {
}
// Returns the number of parsed frames which have been decoded. thread.
uint64_t java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 3
.mDroppedDecodedFramesjava.lang.StringIndexOutOfBoundsException: Range [66, 65) out of bounds for length 67
java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 47
}
// Returns the number of decoded frames which have been sent to the rendering
// Can be called on any thread.
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 0 returnjava.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 51
rjava.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 49
}
// Returns the number of presented and dropped frames // Can be called on any thread.
uint64_t GetTotalFrames() const {
ReentrantMonitorAutoEnter monmjava.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 53 return GetTotalFrames(mFrameStatisticsData;
}
static uint64_t GetTotalFrames(const FrameStatisticsData& java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 33
aData.mPresentedFrames + GetDroppedFrames(aData);
}
// Returns the number of frames that have been skipped because they have // missed their composition deadline.
uint64_t GetDroppedFrames() const {
ReentrantMonitorAutoEnter mon(java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 44 return
}
AutoNotifyDecoded){
java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 53
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
}
// Increments the parsed and decoded frame counters by the passed in counts.
void java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
ReentrantMonitorAutoEnter mon(mReentrantMonitor);
mFrameStatisticsData.Accumulate(aStats);
}
// Increments the presented frame counters. // Can be called on any thread. void java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 0
ReentrantMonitorAutoEnter mon(mReentrantMonitor);
++mFrameStatisticsData.mPresentedFrames;
}
// Stack based class to assist in notifying the frame statistics of // parsed and decoded frames. Use inside video demux & decode functions
// ReentrantMonitor to protect access of playback statistics. mutable ReentrantMonitor mReentrantMonitor MOZ_UNANNOTATED;
FrameStatisticsData mFrameStatisticsData;
};
} // namespace mozilla
#endif// FrameStatistics_h_
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.6Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.