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