title: ffmpeg produced .wav reads only zeros with scipy.io.wavfile
body: <p>Hi everyone and thanks for reading.</p>
  
  <p>I wanted to do some analysis on a song using Python's <strong>scipy.io.wavfile</strong>. Since I only have the song as .mp3 I converted the file to .wav using <strong>ffmpeg</strong> the following way: </p>
  
  <pre><code>ffmpeg -i test.mp3 test.wav
  </code></pre>
  
  <p>The .wav file plays perfectly well with vlc player, but wavfile shows only zeroes when reading it:</p>
  
  <pre><code>from scipy.io import wavfile as wf
  
  data = wf.read("test.wav")
  C:\Program Files\Anaconda\lib\site-packages\scipy\io\wavfile.py:42: WavFileWarning: Unknown wave file format
    warnings.warn("Unknown wave file format", WavFileWarning)
  
  data
  (44100, array([[0, 0],
          [0, 0],
          [0, 0],
          ..., 
          [0, 0],
          [0, 0],
          [0, 0]], dtype=int16))
  </code></pre>
  
  <p>I tried getting the data with Python's built-in <strong>wave</strong> module before to the same effect (only zeros).
  I am using the 64bit version of ffmpeg (ffmpeg-20140218-git-61d5970-win64-static).</p>
  
  <p>Any help is appreciated :-)</p>
  
  <h2>Edit: Included .wav header and tried forcing ffmpeg output format</h2>
  
  <p>I guess the header information of the .wav file is included here:</p>
  
  <pre><code>ffmpeg -i .\test.wav
  Guessed Channel Layout for  Input Stream #0.0 : stereo
  Input #0, wav, from '.\test.wav':
    Metadata:
      artist          : Joe Cocker
      copyright       : (C) 1987 Capitol Records, Inc.
      date            : 1987
      genre           : Pop
      title           : Unchain My Heart
      album           : Unchain My Heart
      track           : 1/10
      encoder         : Lavf55.33.100
    Duration: 00:05:04.33, bitrate: 1411 kb/s
    Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, stereo, s16, 1411 kb/s
  </code></pre>
  
  <p>If I try to specify the ffmpeg output format explicitly for the .mp3 conversion:</p>
  
  <pre><code>ffmpeg -i .\test.mp3 -f s16le -ar 44100 -ac 2 test.wav
  Input #0, mp3, from '.\test.mp3':
    Metadata:
      title           : Unchain My Heart
      artist          : Joe Cocker
      album           : Unchain My Heart
      genre           : Pop
      composer        : Bobby Sharp
      track           : 1/10
      disc            : 1/1
      album_artist    : Joe Cocker
      copyright       : (C) 1987 Capitol Records, Inc.
      date            : 1987
    Duration: 00:05:04.35, start: 0.025056, bitrate: 240 kb/s
      Stream #0:0: Audio: mp3, 44100 Hz, stereo, s16p, 235 kb/s
      Stream #0:1: Video: mjpeg, yuvj420p(pc), 600x600 [SAR 1:1 DAR 1:1], 90k tbr, 90k tbn, 90k tbc
      Metadata:
        title           :
        comment         : Cover (front)
  Output #0, s16le, to 'test.wav':
    Metadata:
      title           : Unchain My Heart
      artist          : Joe Cocker
      album           : Unchain My Heart
      genre           : Pop
      composer        : Bobby Sharp
      track           : 1/10
      disc            : 1/1
      album_artist    : Joe Cocker
      copyright       : (C) 1987 Capitol Records, Inc.
      date            : 1987
      encoder         : Lavf55.33.100
      Stream #0:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
  Stream mapping:
    Stream #0:0 -&gt; #0:0 (mp3 -&gt; pcm_s16le)
  Press [q] to stop, [?] for help
  video:0kB audio:52425kB subtitle:0 data:0 global headers:0kB muxing overhead 0.000000%
  size=   52425kB time=00:05:04.32 bitrate=1411.2kbits/s
  </code></pre>
  
  <p>But in this case (forced format), both ffmpeg and wavfile are not able to read the file:</p>
  
  <pre><code>ffmpeg -i .\test.wav
  .\test.wav: Invalid data found when processing input
  </code></pre>
  
  <p>and</p>
  
  <pre><code>data = wf.read("test2.wav")
  ---------------------------------------------------------------------------
  ValueError                                Traceback (most recent call last)
  &lt;ipython-input-10-fbbd84cb966b&gt; in &lt;module&gt;()
  ----&gt; 1 data = wf.read("test2.wav")
  
  C:\Program Files\Anaconda\lib\site-packages\scipy\io\wavfile.pyc in read(filename, mmap)
      152 
      153     try:
  --&gt; 154         fsize = _read_riff_chunk(fid)
      155         noc = 1
      156         bits = 8
  
  C:\Program Files\Anaconda\lib\site-packages\scipy\io\wavfile.pyc in _read_riff_chunk(fid)
       98         _big_endian = True
       99     elif str1 != b'RIFF':
  --&gt; 100         raise ValueError("Not a WAV file.")
      101     if _big_endian:
      102         fmt = '&gt;I'
  
  ValueError: Not a WAV file.
  </code></pre>