/* * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. * * Use of this source code is governed by a BSD-style license * that can be found in the LICENSE file in the root of the source * tree. */ 'use strict'; function isBlackFrame(data, length) { var accumulatedLuma = 0; var nonBlackPixelLumaThreshold = 20; for (var i = 4; i < length; i += 4) { // Use Luma as in Rec. 709: Y′709 = 0.21R + 0.72G + 0.07B; accumulatedLuma += (0.21 * data[i] + 0.72 * data[i + 1] + 0.07 * data[i + 2]); // Early termination if the average Luma so far is bright enough. if (accumulatedLuma > (nonBlackPixelLumaThreshold * i / 4)) { return false; } } return true; }