python-project/python-3.7.4-docs-html/library/wave.html
Caleb Fontenot 335515d331 add files
2019-07-15 09:16:41 -07:00

438 lines
30 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>wave — Read and write WAV files &#8212; Python 3.7.4 documentation</title>
<link rel="stylesheet" href="../_static/pydoctheme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<script type="text/javascript" src="../_static/language_data.js"></script>
<script type="text/javascript" src="../_static/sidebar.js"></script>
<link rel="search" type="application/opensearchdescription+xml"
title="Search within Python 3.7.4 documentation"
href="../_static/opensearch.xml"/>
<link rel="author" title="About these documents" href="../about.html" />
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="copyright" title="Copyright" href="../copyright.html" />
<link rel="next" title="chunk — Read IFF chunked data" href="chunk.html" />
<link rel="prev" title="sunau — Read and write Sun AU files" href="sunau.html" />
<link rel="shortcut icon" type="image/png" href="../_static/py.png" />
<link rel="canonical" href="https://docs.python.org/3/library/wave.html" />
<script type="text/javascript" src="../_static/copybutton.js"></script>
<script type="text/javascript" src="../_static/switchers.js"></script>
<style>
@media only screen {
table.full-width-table {
width: 100%;
}
}
</style>
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="chunk.html" title="chunk — Read IFF chunked data"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="sunau.html" title="sunau — Read and write Sun AU files"
accesskey="P">previous</a> |</li>
<li><img src="../_static/py.png" alt=""
style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> &#187;</li>
<li>
<span class="language_switcher_placeholder">en</span>
<span class="version_switcher_placeholder">3.7.4</span>
<a href="../index.html">Documentation </a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="mm.html" accesskey="U">Multimedia Services</a> &#187;</li>
<li class="right">
<div class="inline-search" style="display: none" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="Quick search" type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('.inline-search').show(0);</script>
|
</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="module-wave">
<span id="wave-read-and-write-wav-files"></span><h1><a class="reference internal" href="#module-wave" title="wave: Provide an interface to the WAV sound format."><code class="xref py py-mod docutils literal notranslate"><span class="pre">wave</span></code></a> — Read and write WAV files<a class="headerlink" href="#module-wave" title="Permalink to this headline"></a></h1>
<p><strong>Source code:</strong> <a class="reference external" href="https://github.com/python/cpython/tree/3.7/Lib/wave.py">Lib/wave.py</a></p>
<hr class="docutils" />
<p>The <a class="reference internal" href="#module-wave" title="wave: Provide an interface to the WAV sound format."><code class="xref py py-mod docutils literal notranslate"><span class="pre">wave</span></code></a> module provides a convenient interface to the WAV sound format.
It does not support compression/decompression, but it does support mono/stereo.</p>
<p>The <a class="reference internal" href="#module-wave" title="wave: Provide an interface to the WAV sound format."><code class="xref py py-mod docutils literal notranslate"><span class="pre">wave</span></code></a> module defines the following function and exception:</p>
<dl class="function">
<dt id="wave.open">
<code class="descclassname">wave.</code><code class="descname">open</code><span class="sig-paren">(</span><em>file</em>, <em>mode=None</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.open" title="Permalink to this definition"></a></dt>
<dd><p>If <em>file</em> is a string, open the file by that name, otherwise treat it as a
file-like object. <em>mode</em> can be:</p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">'rb'</span></code></dt><dd><p>Read only mode.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">'wb'</span></code></dt><dd><p>Write only mode.</p>
</dd>
</dl>
<p>Note that it does not allow read/write WAV files.</p>
<p>A <em>mode</em> of <code class="docutils literal notranslate"><span class="pre">'rb'</span></code> returns a <code class="xref py py-class docutils literal notranslate"><span class="pre">Wave_read</span></code> object, while a <em>mode</em> of
<code class="docutils literal notranslate"><span class="pre">'wb'</span></code> returns a <code class="xref py py-class docutils literal notranslate"><span class="pre">Wave_write</span></code> object. If <em>mode</em> is omitted and a
file-like object is passed as <em>file</em>, <code class="docutils literal notranslate"><span class="pre">file.mode</span></code> is used as the default
value for <em>mode</em>.</p>
<p>If you pass in a file-like object, the wave object will not close it when its
<code class="xref py py-meth docutils literal notranslate"><span class="pre">close()</span></code> method is called; it is the callers responsibility to close
the file object.</p>
<p>The <a class="reference internal" href="#wave.open" title="wave.open"><code class="xref py py-func docutils literal notranslate"><span class="pre">open()</span></code></a> function may be used in a <a class="reference internal" href="../reference/compound_stmts.html#with"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">with</span></code></a> statement. When
the <code class="xref std std-keyword docutils literal notranslate"><span class="pre">with</span></code> block completes, the <a class="reference internal" href="#wave.Wave_read.close" title="wave.Wave_read.close"><code class="xref py py-meth docutils literal notranslate"><span class="pre">Wave_read.close()</span></code></a> or <a class="reference internal" href="#wave.Wave_write.close" title="wave.Wave_write.close"><code class="xref py py-meth docutils literal notranslate"><span class="pre">Wave_write.close()</span></code></a> method is called.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 3.4: </span>Added support for unseekable files.</p>
</div>
</dd></dl>
<dl class="function">
<dt id="wave.openfp">
<code class="descclassname">wave.</code><code class="descname">openfp</code><span class="sig-paren">(</span><em>file</em>, <em>mode</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.openfp" title="Permalink to this definition"></a></dt>
<dd><p>A synonym for <a class="reference internal" href="#wave.open" title="wave.open"><code class="xref py py-func docutils literal notranslate"><span class="pre">open()</span></code></a>, maintained for backwards compatibility.</p>
<div class="deprecated">
<p><span class="versionmodified">Deprecated since version 3.7, will be removed in version 3.9.</span></p>
</div>
</dd></dl>
<dl class="exception">
<dt id="wave.Error">
<em class="property">exception </em><code class="descclassname">wave.</code><code class="descname">Error</code><a class="headerlink" href="#wave.Error" title="Permalink to this definition"></a></dt>
<dd><p>An error raised when something is impossible because it violates the WAV
specification or hits an implementation deficiency.</p>
</dd></dl>
<div class="section" id="wave-read-objects">
<span id="id1"></span><h2>Wave_read Objects<a class="headerlink" href="#wave-read-objects" title="Permalink to this headline"></a></h2>
<p>Wave_read objects, as returned by <a class="reference internal" href="#wave.open" title="wave.open"><code class="xref py py-func docutils literal notranslate"><span class="pre">open()</span></code></a>, have the following methods:</p>
<dl class="method">
<dt id="wave.Wave_read.close">
<code class="descclassname">Wave_read.</code><code class="descname">close</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.close" title="Permalink to this definition"></a></dt>
<dd><p>Close the stream if it was opened by <a class="reference internal" href="#module-wave" title="wave: Provide an interface to the WAV sound format."><code class="xref py py-mod docutils literal notranslate"><span class="pre">wave</span></code></a>, and make the instance
unusable. This is called automatically on object collection.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getnchannels">
<code class="descclassname">Wave_read.</code><code class="descname">getnchannels</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getnchannels" title="Permalink to this definition"></a></dt>
<dd><p>Returns number of audio channels (<code class="docutils literal notranslate"><span class="pre">1</span></code> for mono, <code class="docutils literal notranslate"><span class="pre">2</span></code> for stereo).</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getsampwidth">
<code class="descclassname">Wave_read.</code><code class="descname">getsampwidth</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getsampwidth" title="Permalink to this definition"></a></dt>
<dd><p>Returns sample width in bytes.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getframerate">
<code class="descclassname">Wave_read.</code><code class="descname">getframerate</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getframerate" title="Permalink to this definition"></a></dt>
<dd><p>Returns sampling frequency.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getnframes">
<code class="descclassname">Wave_read.</code><code class="descname">getnframes</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getnframes" title="Permalink to this definition"></a></dt>
<dd><p>Returns number of audio frames.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getcomptype">
<code class="descclassname">Wave_read.</code><code class="descname">getcomptype</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getcomptype" title="Permalink to this definition"></a></dt>
<dd><p>Returns compression type (<code class="docutils literal notranslate"><span class="pre">'NONE'</span></code> is the only supported type).</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getcompname">
<code class="descclassname">Wave_read.</code><code class="descname">getcompname</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getcompname" title="Permalink to this definition"></a></dt>
<dd><p>Human-readable version of <a class="reference internal" href="#wave.Wave_read.getcomptype" title="wave.Wave_read.getcomptype"><code class="xref py py-meth docutils literal notranslate"><span class="pre">getcomptype()</span></code></a>. Usually <code class="docutils literal notranslate"><span class="pre">'not</span> <span class="pre">compressed'</span></code>
parallels <code class="docutils literal notranslate"><span class="pre">'NONE'</span></code>.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getparams">
<code class="descclassname">Wave_read.</code><code class="descname">getparams</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getparams" title="Permalink to this definition"></a></dt>
<dd><p>Returns a <a class="reference internal" href="collections.html#collections.namedtuple" title="collections.namedtuple"><code class="xref py py-func docutils literal notranslate"><span class="pre">namedtuple()</span></code></a> <code class="docutils literal notranslate"><span class="pre">(nchannels,</span> <span class="pre">sampwidth,</span>
<span class="pre">framerate,</span> <span class="pre">nframes,</span> <span class="pre">comptype,</span> <span class="pre">compname)</span></code>, equivalent to output of the
<code class="xref py py-meth docutils literal notranslate"><span class="pre">get*()</span></code> methods.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.readframes">
<code class="descclassname">Wave_read.</code><code class="descname">readframes</code><span class="sig-paren">(</span><em>n</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.readframes" title="Permalink to this definition"></a></dt>
<dd><p>Reads and returns at most <em>n</em> frames of audio, as a <a class="reference internal" href="stdtypes.html#bytes" title="bytes"><code class="xref py py-class docutils literal notranslate"><span class="pre">bytes</span></code></a> object.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.rewind">
<code class="descclassname">Wave_read.</code><code class="descname">rewind</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.rewind" title="Permalink to this definition"></a></dt>
<dd><p>Rewind the file pointer to the beginning of the audio stream.</p>
</dd></dl>
<p>The following two methods are defined for compatibility with the <a class="reference internal" href="aifc.html#module-aifc" title="aifc: Read and write audio files in AIFF or AIFC format."><code class="xref py py-mod docutils literal notranslate"><span class="pre">aifc</span></code></a>
module, and dont do anything interesting.</p>
<dl class="method">
<dt id="wave.Wave_read.getmarkers">
<code class="descclassname">Wave_read.</code><code class="descname">getmarkers</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getmarkers" title="Permalink to this definition"></a></dt>
<dd><p>Returns <code class="docutils literal notranslate"><span class="pre">None</span></code>.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.getmark">
<code class="descclassname">Wave_read.</code><code class="descname">getmark</code><span class="sig-paren">(</span><em>id</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.getmark" title="Permalink to this definition"></a></dt>
<dd><p>Raise an error.</p>
</dd></dl>
<p>The following two methods define a term “position” which is compatible between
them, and is otherwise implementation dependent.</p>
<dl class="method">
<dt id="wave.Wave_read.setpos">
<code class="descclassname">Wave_read.</code><code class="descname">setpos</code><span class="sig-paren">(</span><em>pos</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.setpos" title="Permalink to this definition"></a></dt>
<dd><p>Set the file pointer to the specified position.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_read.tell">
<code class="descclassname">Wave_read.</code><code class="descname">tell</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_read.tell" title="Permalink to this definition"></a></dt>
<dd><p>Return current file pointer position.</p>
</dd></dl>
</div>
<div class="section" id="wave-write-objects">
<span id="id2"></span><h2>Wave_write Objects<a class="headerlink" href="#wave-write-objects" title="Permalink to this headline"></a></h2>
<p>For seekable output streams, the <code class="docutils literal notranslate"><span class="pre">wave</span></code> header will automatically be updated
to reflect the number of frames actually written. For unseekable streams, the
<em>nframes</em> value must be accurate when the first frame data is written. An
accurate <em>nframes</em> value can be achieved either by calling
<a class="reference internal" href="#wave.Wave_write.setnframes" title="wave.Wave_write.setnframes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">setnframes()</span></code></a> or <a class="reference internal" href="#wave.Wave_write.setparams" title="wave.Wave_write.setparams"><code class="xref py py-meth docutils literal notranslate"><span class="pre">setparams()</span></code></a> with the number
of frames that will be written before <a class="reference internal" href="#wave.Wave_write.close" title="wave.Wave_write.close"><code class="xref py py-meth docutils literal notranslate"><span class="pre">close()</span></code></a> is called and
then using <a class="reference internal" href="#wave.Wave_write.writeframesraw" title="wave.Wave_write.writeframesraw"><code class="xref py py-meth docutils literal notranslate"><span class="pre">writeframesraw()</span></code></a> to write the frame data, or by
calling <a class="reference internal" href="#wave.Wave_write.writeframes" title="wave.Wave_write.writeframes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">writeframes()</span></code></a> with all of the frame data to be
written. In the latter case <a class="reference internal" href="#wave.Wave_write.writeframes" title="wave.Wave_write.writeframes"><code class="xref py py-meth docutils literal notranslate"><span class="pre">writeframes()</span></code></a> will calculate
the number of frames in the data and set <em>nframes</em> accordingly before writing
the frame data.</p>
<p>Wave_write objects, as returned by <a class="reference internal" href="#wave.open" title="wave.open"><code class="xref py py-func docutils literal notranslate"><span class="pre">open()</span></code></a>, have the following methods:</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 3.4: </span>Added support for unseekable files.</p>
</div>
<dl class="method">
<dt id="wave.Wave_write.close">
<code class="descclassname">Wave_write.</code><code class="descname">close</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.close" title="Permalink to this definition"></a></dt>
<dd><p>Make sure <em>nframes</em> is correct, and close the file if it was opened by
<a class="reference internal" href="#module-wave" title="wave: Provide an interface to the WAV sound format."><code class="xref py py-mod docutils literal notranslate"><span class="pre">wave</span></code></a>. This method is called upon object collection. It will raise
an exception if the output stream is not seekable and <em>nframes</em> does not
match the number of frames actually written.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.setnchannels">
<code class="descclassname">Wave_write.</code><code class="descname">setnchannels</code><span class="sig-paren">(</span><em>n</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.setnchannels" title="Permalink to this definition"></a></dt>
<dd><p>Set the number of channels.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.setsampwidth">
<code class="descclassname">Wave_write.</code><code class="descname">setsampwidth</code><span class="sig-paren">(</span><em>n</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.setsampwidth" title="Permalink to this definition"></a></dt>
<dd><p>Set the sample width to <em>n</em> bytes.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.setframerate">
<code class="descclassname">Wave_write.</code><code class="descname">setframerate</code><span class="sig-paren">(</span><em>n</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.setframerate" title="Permalink to this definition"></a></dt>
<dd><p>Set the frame rate to <em>n</em>.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 3.2: </span>A non-integral input to this method is rounded to the nearest
integer.</p>
</div>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.setnframes">
<code class="descclassname">Wave_write.</code><code class="descname">setnframes</code><span class="sig-paren">(</span><em>n</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.setnframes" title="Permalink to this definition"></a></dt>
<dd><p>Set the number of frames to <em>n</em>. This will be changed later if the number
of frames actually written is different (this update attempt will
raise an error if the output stream is not seekable).</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.setcomptype">
<code class="descclassname">Wave_write.</code><code class="descname">setcomptype</code><span class="sig-paren">(</span><em>type</em>, <em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.setcomptype" title="Permalink to this definition"></a></dt>
<dd><p>Set the compression type and description. At the moment, only compression type
<code class="docutils literal notranslate"><span class="pre">NONE</span></code> is supported, meaning no compression.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.setparams">
<code class="descclassname">Wave_write.</code><code class="descname">setparams</code><span class="sig-paren">(</span><em>tuple</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.setparams" title="Permalink to this definition"></a></dt>
<dd><p>The <em>tuple</em> should be <code class="docutils literal notranslate"><span class="pre">(nchannels,</span> <span class="pre">sampwidth,</span> <span class="pre">framerate,</span> <span class="pre">nframes,</span> <span class="pre">comptype,</span>
<span class="pre">compname)</span></code>, with values valid for the <code class="xref py py-meth docutils literal notranslate"><span class="pre">set*()</span></code> methods. Sets all
parameters.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.tell">
<code class="descclassname">Wave_write.</code><code class="descname">tell</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.tell" title="Permalink to this definition"></a></dt>
<dd><p>Return current position in the file, with the same disclaimer for the
<a class="reference internal" href="#wave.Wave_read.tell" title="wave.Wave_read.tell"><code class="xref py py-meth docutils literal notranslate"><span class="pre">Wave_read.tell()</span></code></a> and <a class="reference internal" href="#wave.Wave_read.setpos" title="wave.Wave_read.setpos"><code class="xref py py-meth docutils literal notranslate"><span class="pre">Wave_read.setpos()</span></code></a> methods.</p>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.writeframesraw">
<code class="descclassname">Wave_write.</code><code class="descname">writeframesraw</code><span class="sig-paren">(</span><em>data</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.writeframesraw" title="Permalink to this definition"></a></dt>
<dd><p>Write audio frames, without correcting <em>nframes</em>.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 3.4: </span>Any <a class="reference internal" href="../glossary.html#term-bytes-like-object"><span class="xref std std-term">bytes-like object</span></a> is now accepted.</p>
</div>
</dd></dl>
<dl class="method">
<dt id="wave.Wave_write.writeframes">
<code class="descclassname">Wave_write.</code><code class="descname">writeframes</code><span class="sig-paren">(</span><em>data</em><span class="sig-paren">)</span><a class="headerlink" href="#wave.Wave_write.writeframes" title="Permalink to this definition"></a></dt>
<dd><p>Write audio frames and make sure <em>nframes</em> is correct. It will raise an
error if the output stream is not seekable and the total number of frames
that have been written after <em>data</em> has been written does not match the
previously set value for <em>nframes</em>.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 3.4: </span>Any <a class="reference internal" href="../glossary.html#term-bytes-like-object"><span class="xref std std-term">bytes-like object</span></a> is now accepted.</p>
</div>
</dd></dl>
<p>Note that it is invalid to set any parameters after calling <code class="xref py py-meth docutils literal notranslate"><span class="pre">writeframes()</span></code>
or <code class="xref py py-meth docutils literal notranslate"><span class="pre">writeframesraw()</span></code>, and any attempt to do so will raise
<a class="reference internal" href="#wave.Error" title="wave.Error"><code class="xref py py-exc docutils literal notranslate"><span class="pre">wave.Error</span></code></a>.</p>
</div>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h3><a href="../contents.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">wave</span></code> — Read and write WAV files</a><ul>
<li><a class="reference internal" href="#wave-read-objects">Wave_read Objects</a></li>
<li><a class="reference internal" href="#wave-write-objects">Wave_write Objects</a></li>
</ul>
</li>
</ul>
<h4>Previous topic</h4>
<p class="topless"><a href="sunau.html"
title="previous chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">sunau</span></code> — Read and write Sun AU files</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="chunk.html"
title="next chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">chunk</span></code> — Read IFF chunked data</a></p>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="../bugs.html">Report a Bug</a></li>
<li>
<a href="https://github.com/python/cpython/blob/3.7/Doc/library/wave.rst"
rel="nofollow">Show Source
</a>
</li>
</ul>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="chunk.html" title="chunk — Read IFF chunked data"
>next</a> |</li>
<li class="right" >
<a href="sunau.html" title="sunau — Read and write Sun AU files"
>previous</a> |</li>
<li><img src="../_static/py.png" alt=""
style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> &#187;</li>
<li>
<span class="language_switcher_placeholder">en</span>
<span class="version_switcher_placeholder">3.7.4</span>
<a href="../index.html">Documentation </a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="mm.html" >Multimedia Services</a> &#187;</li>
<li class="right">
<div class="inline-search" style="display: none" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="Quick search" type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('.inline-search').show(0);</script>
|
</li>
</ul>
</div>
<div class="footer">
&copy; <a href="../copyright.html">Copyright</a> 2001-2019, Python Software Foundation.
<br />
The Python Software Foundation is a non-profit corporation.
<a href="https://www.python.org/psf/donations/">Please donate.</a>
<br />
Last updated on Jul 13, 2019.
<a href="../bugs.html">Found a bug</a>?
<br />
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 2.0.1.
</div>
</body>
</html>