<p dir="auto">Hello everybody,</p>
<p dir="auto">I have downloaded a wav file from the web, this is the link:</p>
<p dir="auto"><a href="http://freesound.org/people/RHumphries/sounds/980/" rel="nofollow">http://freesound.org/people/RHumphries/sounds/980/</a></p>
<p dir="auto">Since I have not found out how to attach this file to the bug report anybody who tries to reproduce the problem will have to download the sound. If I am trying to read this file using the function 'scipy.io.wavfile.read' I get an error message. Here is the minimal code example:</p>
<p dir="auto">In [1]: import scipy.io.wavfile as wav<br>
In [2]: rate,f=wav.read('980__rhumphries__rbh-glass-break-04.wav')</p>
<p dir="auto">This gives me the following error: "ValueError: string size must be a multiple of element size"</p>
<p dir="auto">Since the function is working fine with all the other wav files that I have I suspect that this is a bug.</p>
<p dir="auto"><em>Original ticket <a href="http://projects.scipy.org/scipy/ticket/881" rel="nofollow">http://projects.scipy.org/scipy/ticket/881</a> on 2009-03-06 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pv/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pv">@pv</a>, assigned to unknown.</em></p>
<p dir="auto"><code class="notranslate">scipy.interpolate</code> contains two sets of functions for making and representing splines:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="&gt;&gt;&gt; from scipy import arange, interpolate, float_
&gt;&gt;&gt; x = arange(6).astype(float_)
&gt;&gt;&gt; spl1 = interpolate.splmake(x, x, order=2)
&gt;&gt;&gt; interpolate.spleval(spl1, x)
array([ -4.99600361e-16,   1.00000000e-00,   2.00000000e+00,
         3.00000000e+00,   4.00000000e+00,   5.00000000e+00])
&gt;&gt;&gt; spl2 = interpolate.splrep(x, x, k=2)
&gt;&gt;&gt; interpolate.splev(x, spl2)
array([ -6.89645379e-18,   1.00000000e+00,   2.00000000e+00,
         3.00000000e+00,   4.00000000e+00,   5.00000000e+00])"><pre class="notranslate"><code class="notranslate">&gt;&gt;&gt; from scipy import arange, interpolate, float_
&gt;&gt;&gt; x = arange(6).astype(float_)
&gt;&gt;&gt; spl1 = interpolate.splmake(x, x, order=2)
&gt;&gt;&gt; interpolate.spleval(spl1, x)
array([ -4.99600361e-16,   1.00000000e-00,   2.00000000e+00,
         3.00000000e+00,   4.00000000e+00,   5.00000000e+00])
&gt;&gt;&gt; spl2 = interpolate.splrep(x, x, k=2)
&gt;&gt;&gt; interpolate.splev(x, spl2)
array([ -6.89645379e-18,   1.00000000e+00,   2.00000000e+00,
         3.00000000e+00,   4.00000000e+00,   5.00000000e+00])
</code></pre></div>
<p dir="auto">But these are not interoperable and using them wrong can silently give bogus results!</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="&gt;&gt;&gt; interpolate.splev(x, spl1)
array([ -2.00000000e+00,  -1.00000000e+00,  -4.99600361e-16,
         1.00000000e-00,   2.00000000e+00,   3.00000000e+00])
&gt;&gt;&gt; interpolate.spleval(spl2, x)
Traceback (most recent call last):
  File &quot;&lt;ipython console&gt;&quot;, line 1, in &lt;module&gt;
  File &quot;.../scipy/interpolate/interpolate.py&quot;, line 772, in spleval
    res[sl] = _fitpack._bspleval(xx,xj,cvals[sl],k,deriv)
ValueError: too few coefficients (have 9 need at least 10)"><pre class="notranslate"><code class="notranslate">&gt;&gt;&gt; interpolate.splev(x, spl1)
array([ -2.00000000e+00,  -1.00000000e+00,  -4.99600361e-16,
         1.00000000e-00,   2.00000000e+00,   3.00000000e+00])
&gt;&gt;&gt; interpolate.spleval(spl2, x)
Traceback (most recent call last):
  File "&lt;ipython console&gt;", line 1, in &lt;module&gt;
  File ".../scipy/interpolate/interpolate.py", line 772, in spleval
    res[sl] = _fitpack._bspleval(xx,xj,cvals[sl],k,deriv)
ValueError: too few coefficients (have 9 need at least 10)
</code></pre></div>
<p dir="auto">Some cleanup seems to be required. The current situation is confusing, especially as the documentation is lacking, too.</p>
<p dir="auto">Also, if the two sets of spline functions are functionally equivalent, one of them should be scrapped, or at least removed from scipy.interpolate namespace.</p>