Mercurial > mplayer.hg
comparison TOOLS/countquant.pl @ 8464:85ebbeeb913b
scripts mentioned by DOCS/tech/encoding-tips.txt
written by Moritz Bunkus
author | arpi |
---|---|
date | Sun, 15 Dec 2002 18:44:24 +0000 |
parents | |
children | 32725ca88fed |
comparison
equal
deleted
inserted
replaced
8463:e421b4ab7815 | 8464:85ebbeeb913b |
---|---|
1 #!/usr/bin/perl -w | |
2 | |
3 sub display_quants { | |
4 $frames = 0; | |
5 foreach $key (sort(keys(%quants))) { | |
6 $frames += $quants{$key}; | |
7 } | |
8 foreach $key (sort({ $a <=> $b } keys(%quants))) { | |
9 printf("q=%d:\t% 6d, % 6.2f%%\n", $key, $quants{$key}, $quants{$key} * | |
10 100 / $frames); | |
11 } | |
12 print("$lines lines processed, $frames frames found\n"); | |
13 printf("average quant. is: %f\n", $quant_total/$frames); | |
14 } | |
15 | |
16 $lines = 0; | |
17 $thislines = 0; | |
18 $quant_total = 0; | |
19 | |
20 while (<STDIN>) { | |
21 $lines++; | |
22 $thislines++; | |
23 if (/ q:([0-9]+) /) { | |
24 $quants{$1}++; | |
25 } elsif (/ q:(([0-9]+)\.[0-9]+) /) { | |
26 $quants{$2}++; | |
27 $quant_total += $1; | |
28 } | |
29 if ((scalar(@ARGV) > 0) && ($thislines > $ARGV[0])) { | |
30 display_quants(); | |
31 $thislines = 0; | |
32 } | |
33 } | |
34 | |
35 display_quants(); | |
36 | |
37 |