| OLD | NEW |
| 1 # Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. | 1 # Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. |
| 2 # | 2 # |
| 3 # Use of this source code is governed by a BSD-style license | 3 # Use of this source code is governed by a BSD-style license |
| 4 # that can be found in the LICENSE file in the root of the source | 4 # that can be found in the LICENSE file in the root of the source |
| 5 # tree. An additional intellectual property rights grant can be found | 5 # tree. An additional intellectual property rights grant can be found |
| 6 # in the file PATENTS. All contributing project authors may | 6 # in the file PATENTS. All contributing project authors may |
| 7 # be found in the AUTHORS file in the root of the source tree. | 7 # be found in the AUTHORS file in the root of the source tree. |
| 8 | 8 |
| 9 """Plots statistics from WebRTC integration test logs. | 9 """Plots statistics from WebRTC integration test logs. |
| 10 | 10 |
| 11 Usage: $ python plot_webrtc_test_logs.py filename.txt | 11 Usage: $ python plot_webrtc_test_logs.py filename.txt |
| 12 """ | 12 """ |
| 13 | 13 |
| 14 import numpy | 14 import numpy |
| 15 import sys | 15 import sys |
| 16 import re | 16 import re |
| 17 | 17 |
| 18 import matplotlib.pyplot as plt | 18 import matplotlib.pyplot as plt |
| 19 | 19 |
| 20 # Log events. | 20 # Log events. |
| 21 EVENT_START = 'RUN ] CodecSettings/PlotVideoProcessorIntegrationTest.' | 21 EVENT_START = 'RUN ] CodecSettings/PlotVideoProcessorIntegrationTest.' |
| 22 EVENT_END = 'OK ] CodecSettings/PlotVideoProcessorIntegrationTest.' | 22 EVENT_END = 'OK ] CodecSettings/PlotVideoProcessorIntegrationTest.' |
| 23 | 23 |
| 24 # Metrics to plot, tuple: (name to parse in file, label to use when plotting). | 24 # Metrics to plot, tuple: (name to parse in file, label to use when plotting). |
| 25 BITRATE = ('Target Bitrate', 'target bitrate (kbps)') | 25 BITRATE = ('Target bitrate', 'target bitrate (kbps)') |
| 26 WIDTH = ('Width', 'width') | 26 WIDTH = ('Width', 'width') |
| 27 HEIGHT = ('Height', 'height') | 27 HEIGHT = ('Height', 'height') |
| 28 FILENAME = ('Filename', 'clip') | 28 FILENAME = ('Filename', 'clip') |
| 29 CODEC_TYPE = ('Codec type', 'Codec') | 29 CODEC_TYPE = ('Codec type', 'Codec') |
| 30 ENCODER_IMPLEMENTATION_NAME = ('Encoder implementation name', 'enc name') | 30 ENCODER_IMPLEMENTATION_NAME = ('Encoder implementation name', 'enc name') |
| 31 DECODER_IMPLEMENTATION_NAME = ('Decoder implementation name', 'dec name') | 31 DECODER_IMPLEMENTATION_NAME = ('Decoder implementation name', 'dec name') |
| 32 CODEC_IMPLEMENTATION_NAME = ('Codec implementation name', 'codec name') | 32 CODEC_IMPLEMENTATION_NAME = ('Codec implementation name', 'codec name') |
| 33 CORES = ('#CPU cores used', 'CPU cores used') | 33 CORES = ('# CPU cores used', 'CPU cores used') |
| 34 DENOISING = ('Denoising', 'denoising') | 34 DENOISING = ('Denoising', 'denoising') |
| 35 RESILIENCE = ('Resilience', 'resilience') | 35 RESILIENCE = ('Resilience', 'resilience') |
| 36 ERROR_CONCEALMENT = ('Error concealment', 'error concealment') | 36 ERROR_CONCEALMENT = ('Error concealment', 'error concealment') |
| 37 QP = ('Average QP', 'avg QP') | 37 QP = ('Average QP', 'avg QP') |
| 38 PSNR = ('PSNR avg', 'PSNR (dB)') | 38 PSNR = ('PSNR avg', 'PSNR (dB)') |
| 39 SSIM = ('SSIM avg', 'SSIM') | 39 SSIM = ('SSIM avg', 'SSIM') |
| 40 ENC_BITRATE = ('Encoding bitrate', 'encoded bitrate (kbps)') | 40 ENC_BITRATE = ('Encoded bitrate', 'encoded bitrate (kbps)') |
| 41 FRAMERATE = ('Frame rate', 'fps') | 41 FRAMERATE = ('Frame rate', 'fps') |
| 42 NUM_FRAMES = ('Number of processed frames', 'num frames') | 42 NUM_FRAMES = ('# processed frames', 'num frames') |
| 43 NUM_DROPPED_FRAMES = ('Number of dropped frames', 'num dropped frames') | 43 NUM_DROPPED_FRAMES = ('# dropped frames', 'num dropped frames') |
| 44 NUM_FRAMES_TO_TARGET = ('Number of frames to approach target rate', | 44 NUM_FRAMES_TO_TARGET = ('# frames to convergence', |
| 45 'frames to reach target rate') | 45 'frames to reach target rate') |
| 46 ENCODE_TIME = ('Encoding time', 'encode time (us)') | 46 ENCODE_TIME = ('Encoding time', 'encode time (us)') |
| 47 ENCODE_TIME_AVG = ('Encoding time', 'encode time (us) avg') | 47 ENCODE_TIME_AVG = ('Encoding time', 'encode time (us) avg') |
| 48 DECODE_TIME = ('Decoding time', 'decode time (us)') | 48 DECODE_TIME = ('Decoding time', 'decode time (us)') |
| 49 DECODE_TIME_AVG = ('Decoding time', 'decode time (us) avg') | 49 DECODE_TIME_AVG = ('Decoding time', 'decode time (us) avg') |
| 50 FRAME_SIZE = ('Frame sizes', 'frame size (bytes)') | 50 FRAME_SIZE = ('Frame sizes', 'frame size (bytes)') |
| 51 FRAME_SIZE_AVG = ('Frame sizes', 'frame size (bytes) avg') | 51 FRAME_SIZE_AVG = ('Frame sizes', 'frame size (bytes) avg') |
| 52 AVG_KEY_FRAME_SIZE = ('Average key frame size', 'avg key frame size (bytes)') | 52 AVG_KEY_FRAME_SIZE = ('Average key frame size', 'avg key frame size (bytes)') |
| 53 AVG_NON_KEY_FRAME_SIZE = ('Average non-key frame size', | 53 AVG_NON_KEY_FRAME_SIZE = ('Average non-key frame size', |
| 54 'avg non-key frame size (bytes)') | 54 'avg non-key frame size (bytes)') |
| (...skipping 387 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 442 plt.rcParams["figure.figsize"] = figsize | 442 plt.rcParams["figure.figsize"] = figsize |
| 443 | 443 |
| 444 PlotFigure(sub_keys, y_metrics, x_metric, metrics, | 444 PlotFigure(sub_keys, y_metrics, x_metric, metrics, |
| 445 GetTitle(filename, setting2)) | 445 GetTitle(filename, setting2)) |
| 446 | 446 |
| 447 plt.show() | 447 plt.show() |
| 448 | 448 |
| 449 | 449 |
| 450 if __name__ == '__main__': | 450 if __name__ == '__main__': |
| 451 main() | 451 main() |
| OLD | NEW |