your code included:

[...] # read one byte read($fh, $buffer, 1); if(defined($buffer)) { # get an unsigned char my $v = unpack("C", $buffer); # sum the squared distance from the theoretical mean $sse += ($v-127.5)**2; $cnt++; } else { print "No byte here\n"; } [...]

The ELSE condition does not show up a single time:

OUTPUT: root@node:/srv/perl# ./dba2.pl dbFSrms: -20.9475641203622, dba: 89.0524358796378 dbFSrms: -21.662467195052, dba: 88.337532804948 dbFSrms: -21.5176778028847, dba: 88.4823221971153 dbFSrms: -24.4135001203418, dba: 85.5864998796582 dbFSrms: -23.0140885363105, dba: 86.9859114636895 dbFSrms: -18.5448040737999, dba: 91.4551959262001 dbFSrms: -21.636493545482, dba: 88.363506454518 dbFSrms: -20.3636900956917, dba: 89.6363099043083 dbFSrms: -21.3307953726968, dba: 88.6692046273032 dbFSrms: -22.1928440805489, dba: 87.8071559194511 [...]

If there is nothing to read, the read command seems to for something to read.... this seems to be a special behavior of the read command on devices (at least on /dev/dsp1). If there is something to read it will do the calculation as 8000 values were reached (which is 8000 values per second == 8KHz...


In reply to Re^6: Measuring the sound level (dB(A)) with PERL by John-Robie
in thread Measuring the sound level (dB(A)) with PERL by John-Robie

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.