Bug 855130 - Implement HTMLVideoElement's VideoPlaybackQuality (from Media Source Extensions spec). r=roc
--- content/html/content/public/HTMLVideoElement.h | 4 ++ content/html/content/src/HTMLVideoElement.cpp | 27 ++++++++++ content/media/MediaDecoder.h | 17 +++++++ content/media/MediaDecoderStateMachine.cpp | 6 ++- content/media/VideoPlaybackQuality.cpp | 53 ++++++++++++++++++++ content/media/VideoPlaybackQuality.h | 68 ++++++++++++++++++++++++++ content/media/moz.build | 2 + dom/base/moz.build | 2 + dom/bindings/Bindings.conf | 4 ++ dom/webidl/HTMLVideoElement.webidl | 6 +++ dom/webidl/VideoPlaybackQuality.webidl | 20 ++++++++ dom/webidl/WebIDL.mk | 1 + 12 files changed, 209 insertions(+), 1 deletion(-) create mode 100644 content/media/VideoPlaybackQuality.cpp create mode 100644 content/media/VideoPlaybackQuality.h create mode 100644 dom/webidl/VideoPlaybackQuality.webidl
This commit is contained in:
@@ -2535,8 +2535,12 @@ void MediaDecoderStateMachine::AdvanceFrame()
|
||||
ScheduleStateMachine();
|
||||
return;
|
||||
}
|
||||
mDecoder->GetFrameStatistics().NotifyPresentedFrame();
|
||||
MediaDecoder::FrameStatistics& frameStats = mDecoder->GetFrameStatistics();
|
||||
frameStats.NotifyPresentedFrame();
|
||||
remainingTime = currentFrame->mEndTime - clock_time;
|
||||
int64_t frameDuration = currentFrame->mEndTime - currentFrame->mTime;
|
||||
double displayError = fabs(double(frameDuration - remainingTime) / USECS_PER_S);
|
||||
frameStats.NotifyPlaybackJitter(displayError);
|
||||
currentFrame = nullptr;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user