<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#ffffff">
Brian...<br>
<br>
You've been both polite and helpful. Thanks.<br>
<br>
I do understand the dimensional nature of images and sound, though I
admittedly glossed over the details while trying to draw attention
to time rather than spatial artifacts. What I was looking for was
confirmation that a properly designed application would decode FLAC
without temporal issues. I believe you've made that perfectly clear.<br>
<br>
Am I right in assuming that in order to deal with potential latency
issues, an application needs a sufficiently large FIFO buffer as
well as the proper decoder?<br>
<br>
Dennis...<br>
<hr width="100%" size="2"><br>
On 5/23/2011 11:57 AM, Brian Willoughby wrote:
<blockquote
cite="mid:8DA43BDF-D227-41B9-A944-1DF8BE5D8CBA@sounds.wa.com"
type="cite">
<br>
On May 23, 2011, at 11:35, Dennis Brunnenmeyer wrote:
<br>
<blockquote type="cite">I'm well aware how compression works. But
images and document files do not depend on the relative timing
of the data to reproduce themselves. They are in essence only
two-dimensional in space, whereas the data in a sound file is
time-dependent.
<br>
</blockquote>
Images are three-dimensional or maybe five-dimensional,
mathematically, because the pixel value at each two-dimension
point can have any value (monochrome) or color (three-dimensional
RGB).
<br>
<br>
Documents and sound files are two dimensional. You cannot change
the position or value of a character in a text file without losing
information.
<br>
<br>
The key point here is that the timing you refer to in a sound file
is not really so special. It is merely another dimension of the
data. It is preserved in FLAC. Of the various methods for
drawing sound files on the screen, they are all at least
two-dimensional, if not more, which should be a clue that sound
files are two-dimensional.
<br>
<br>
<br>
<blockquote type="cite">The question really has more to do with
the decoded FLAC stream output, which I presume is a linear PCM
file, e.g. WAV. If FLAC is lossless and created from an
original CBR WAV file, is is true that the decoded output is
also CBR when played?
<br>
<br>
That is, WAV in = WAV out, where both are CBR?
<br>
</blockquote>
Yes, an uncompressed sound file is CBR, unless you're talking
about LDPCM. FLAC is compressed, though, and thus it must be VBR
in its compressed form. The Variable in VBR ranges anywhere from
slightly above the CBR of uncompressed audio (including overhead)
to approximately half that rate (on average) or even sometimes
lower.
<br>
<br>
<br>
<blockquote type="cite">Thanks for any insights on this matter.
I've been told that because a FLAC stream from a server to an
application is VBR, that certain transients are not handled
correctly, like the ringing of bells. If this were true, FLAC
would not be lossless in this application.
<br>
</blockquote>
You have been told wrong. If such things happen with streamed
FLAC, then there is a flaw in the streaming software.
<br>
<br>
One thing to keep in mind is that a VBR format like FLAC requires
latency when streaming. If the streaming software is not designed
with adequate latency, then you could have artifacts when the data
does not appear in time. But that is not the fault of the format,
but rather that the playback is trying to get ahead of the format
- which is impossible.
<br>
<br>
Brian Willoughby
<br>
Sound Consulting
<br>
<br>
<br>
</blockquote>
<br>
<div class="moz-signature">-- <br>
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
<meta name="ProgId" content="Word.Document">
<meta name="Generator" content="Microsoft Word 11">
<meta name="Originator" content="Microsoft Word 11">
<link rel="File-List"
href="Cedar%20Ridge%20Systems_files/filelist.xml">
<title>Dennis Brunnenmeyer</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Dennis Brunnenmeyer</o:Author>
<o:LastAuthor>Dennis Brunnenmeyer</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>2</o:TotalTime>
<o:Created>2009-08-17T21:21:00Z</o:Created>
<o:LastSaved>2009-08-17T21:21:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>57</o:Words>
<o:Characters>260</o:Characters>
<o:Company>Cedar Ridge Systems</o:Company>
<o:Lines>4</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>316</o:CharactersWithSpaces>
<o:Version>11.9999</o:Version>
</o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:SpellingState>Clean</w:SpellingState>
<w:GrammarState>Clean</w:GrammarState>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" LatentStyleCount="156">
</w:LatentStyles>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:"Stone Informal";
        panose-1:0 0 0 0 0 0 0 0 0 0;
        mso-font-charset:0;
        mso-generic-font-family:roman;
        mso-font-format:other;
        mso-font-pitch:variable;
        mso-font-signature:3 0 0 0 1 0;}
@font-face
        {font-family:"Stone Sans";
        panose-1:0 0 0 0 0 0 0 0 0 0;
        mso-font-charset:0;
        mso-generic-font-family:swiss;
        mso-font-format:other;
        mso-font-pitch:variable;
        mso-font-signature:3 0 0 0 1 0;}
@font-face
        {font-family:"Stone Sans Bold";
        panose-1:0 0 0 0 0 0 0 0 0 0;
        mso-font-charset:0;
        mso-generic-font-family:swiss;
        mso-font-format:other;
        mso-font-pitch:variable;
        mso-font-signature:3 0 0 0 1 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {mso-style-parent:"";
        margin:0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:11.0pt;
        mso-bidi-font-size:10.0pt;
        font-family:"Stone Informal";
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:Arial;}
h1
        {mso-style-update:auto;
        mso-style-next:"Body Text";
        margin-top:0in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:.3in;
        text-indent:-.3in;
        page-break-before:always;
        mso-pagination:widow-orphan;
        page-break-after:avoid;
        mso-outline-level:1;
        mso-list:l0 level1 lfo2;
        tab-stops:.4in;
        mso-layout-grid-align:none;
        punctuation-wrap:simple;
        text-autospace:none;
        font-size:14.0pt;
        mso-bidi-font-size:10.0pt;
        font-family:Arial;
        mso-bidi-font-family:"Times New Roman";
        mso-font-kerning:0pt;
        mso-ansi-language:EN-GB;
        mso-fareast-language:DE;
        font-weight:bold;
        mso-bidi-font-weight:normal;}
h2
        {mso-style-update:auto;
        mso-style-next:Normal;
        margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:3.0pt;
        margin-left:.4in;
        text-indent:-.4in;
        mso-pagination:widow-orphan;
        page-break-after:avoid;
        mso-outline-level:2;
        mso-list:l0 level2 lfo2;
        tab-stops:0in;
        font-size:12.0pt;
        mso-bidi-font-size:14.0pt;
        font-family:Arial;
        mso-bidi-font-family:"Times New Roman";
        font-weight:bold;
        mso-bidi-font-weight:normal;
        font-style:italic;
        mso-bidi-font-style:normal;}
p.MsoEnvelopeAddress, li.MsoEnvelopeAddress, div.MsoEnvelopeAddress
        {margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:2.0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        mso-element:frame;
        mso-element-frame-width:5.5in;
        mso-element-frame-height:99.0pt;
        mso-element-frame-hspace:9.0pt;
        mso-element-wrap:auto;
        mso-element-anchor-horizontal:page;
        mso-element-left:center;
        mso-element-top:bottom;
        font-size:11.0pt;
        mso-bidi-font-size:10.0pt;
        font-family:"Stone Informal";
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:Arial;}
p.MsoEnvelopeReturn, li.MsoEnvelopeReturn, div.MsoEnvelopeReturn
        {margin:0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:11.0pt;
        mso-bidi-font-size:10.0pt;
        font-family:"Stone Informal";
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:Arial;}
p.MsoBodyText, li.MsoBodyText, div.MsoBodyText
        {margin-top:0in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:0in;
        mso-pagination:widow-orphan;
        font-size:11.0pt;
        mso-bidi-font-size:10.0pt;
        font-family:"Stone Informal";
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:Arial;}
a:link, span.MsoHyperlink
        {font-family:"Times New Roman";
        mso-ascii-font-family:"Times New Roman";
        mso-hansi-font-family:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";
        color:blue;
        text-decoration:underline;
        text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;
        text-underline:single;}
p
        {margin:0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:12.0pt;
        font-family:"Times New Roman";
        mso-fareast-font-family:"Times New Roman";}
p.Standard, li.Standard, div.Standard
        {mso-style-name:Standard;
        mso-style-parent:"";
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        text-indent:-.5in;
        mso-pagination:widow-orphan;
        tab-stops:.5in;
        font-size:10.0pt;
        font-family:"Times New Roman";
        mso-fareast-font-family:"Times New Roman";}
p.Style1, li.Style1, div.Style1
        {mso-style-name:Style1;
        mso-style-update:auto;
        mso-style-parent:"Heading 1";
        margin-top:0in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:.3in;
        text-indent:-.3in;
        page-break-before:always;
        mso-pagination:widow-orphan;
        page-break-after:avoid;
        mso-outline-level:1;
        mso-list:l0 level1 lfo2;
        tab-stops:.35in .4in;
        mso-layout-grid-align:none;
        punctuation-wrap:simple;
        text-autospace:none;
        font-size:11.0pt;
        font-family:"Stone Informal";
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";
        mso-ansi-language:EN-GB;
        mso-fareast-language:DE;
        font-weight:bold;}
p.D2BHeading, li.D2BHeading, div.D2BHeading
        {mso-style-name:"D2B Heading";
        mso-style-update:auto;
        mso-style-parent:"Normal \(Web\)";
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        mso-pagination:widow-orphan;
        tab-stops:1.25in;
        font-size:12.0pt;
        font-family:"Stone Sans";
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";
        font-weight:bold;
        mso-bidi-font-weight:normal;}
span.SpellE
        {mso-style-name:"";
        mso-spl-e:yes;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;
        mso-header-margin:.5in;
        mso-footer-margin:.5in;
        mso-paper-source:0;}
div.Section1
        {page:Section1;}
/* List Definitions */
@list l0
        {mso-list-id:-5;
        mso-list-template-ids:-680640780;}
@list l0:level1
        {mso-level-style-link:"Heading 1";
        mso-level-text:%1;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:.3in;
        mso-level-legacy-space:.25in;
        margin-left:.3in;
        text-indent:-.3in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level2
        {mso-level-style-link:"Heading 2";
        mso-level-text:"%1\.%2";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:.4in;
        mso-level-legacy-space:.25in;
        margin-left:.4in;
        text-indent:-.4in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level3
        {mso-level-text:"%1\.%2\.%3";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:.5in;
        mso-level-legacy-space:.25in;
        margin-left:.5in;
        text-indent:-.5in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level4
        {mso-level-text:"%1\.%2\.%3\.%4";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:.6in;
        mso-level-legacy-space:.25in;
        margin-left:.6in;
        text-indent:-.6in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level5
        {mso-level-text:"%1\.%2\.%3\.%4\.%5";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:.7in;
        mso-level-legacy-space:.25in;
        margin-left:.7in;
        text-indent:-.7in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level6
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:.8in;
        mso-level-legacy-space:.25in;
        margin-left:.8in;
        text-indent:-.8in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level7
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:.9in;
        mso-level-legacy-space:.25in;
        margin-left:.9in;
        text-indent:-.9in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level8
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:1.0in;
        mso-level-legacy-space:.25in;
        margin-left:1.0in;
        text-indent:-1.0in;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level9
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\.%9";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        mso-level-legacy:yes;
        mso-level-legacy-indent:1.1in;
        mso-level-legacy-space:.25in;
        margin-left:1.1in;
        text-indent:-1.1in;
        mso-bidi-font-family:"Times New Roman";}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
-->
</style><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
        {mso-style-name:"Table Normal";
        mso-tstyle-rowband-size:0;
        mso-tstyle-colband-size:0;
        mso-style-noshow:yes;
        mso-style-parent:"";
        mso-padding-alt:0in 5.4pt 0in 5.4pt;
        mso-para-margin:0in;
        mso-para-margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:10.0pt;
        font-family:"Times New Roman";
        mso-ansi-language:#0400;
        mso-fareast-language:#0400;
        mso-bidi-language:#0400;}
</style>
<![endif]--><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="3074"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
<div class="Section1">
<p class="MsoNormal">Dennis Brunnenmeyer<br>
Director of Engineering<br>
<span style="font-family: "Stone Sans Bold";">CEDAR
RIDGE SYSTEMS<br>
</span>15019 Rattlesnake Road<br>
Grass Valley, CA 95945-8710<br>
Office: 1 (530) 477-9015<br>
Mobile: 1 (530) 320-9025<br>
<span class="SpellE">eMail</span>: <span class="SpellE">dennisb</span>
/at/ <span class="SpellE">chronometrics</span> /dot/ com<br>
<span style="font-size: 12pt;"><a
href="http://www.chronometrics.com/crs/index.html"><span
style="font-size: 11pt;">http://www.chronometrics.com/crs/index.html</span></a><a
href="http://www.chronometrics.com/crs/index.html"><span
style="font-family: "Times New Roman";"><br>
</span></a></span></p>
</div>
</div>
</body>
</html>