MCPcopy Create free account
hub / github.com/RT-Thread/env-windows / _write_header

Method _write_header

tools/python-3.11.9-amd64/Lib/wave.py:590–609  ·  view source on GitHub ↗
(self, initlength)

Source from the content-addressed store, hash-verified

588 self._write_header(datasize)
589
590 def _write_header(self, initlength):
591 assert not self._headerwritten
592 self._file.write(b'RIFF')
593 if not self._nframes:
594 self._nframes = initlength // (self._nchannels * self._sampwidth)
595 self._datalength = self._nframes * self._nchannels * self._sampwidth
596 try:
597 self._form_length_pos = self._file.tell()
598 except (AttributeError, OSError):
599 self._form_length_pos = None
600 self._file.write(struct.pack('<L4s4sLHHLLHH4s',
601 36 + self._datalength, b'WAVE', b'fmt ', 16,
602 WAVE_FORMAT_PCM, self._nchannels, self._framerate,
603 self._nchannels * self._framerate * self._sampwidth,
604 self._nchannels * self._sampwidth,
605 self._sampwidth * 8, b'data'))
606 if self._form_length_pos is not None:
607 self._data_length_pos = self._file.tell()
608 self._file.write(struct.pack('<L', self._datalength))
609 self._headerwritten = True
610
611 def _patchheader(self):
612 assert self._headerwritten

Callers 1

Calls 3

writeMethod · 0.45
tellMethod · 0.45
packMethod · 0.45

Tested by

no test coverage detected